Source: https://ailoot.ai/models/fr-ca/voyageai-voyage-code-4/
Canonical: https://ailoot.ai/models/fr-ca/voyageai-voyage-code-4/
Language: fr-ca

# VoyageAI by MongoDB: voyage-code-4

[Markdown](https://ailoot.ai/models/fr-ca/voyageai-voyage-code-4/index.md) · [JSON](https://ailoot.ai/models/fr-ca/voyageai-voyage-code-4/facts.json)

## [VoyageAI by MongoDB: voyage-code-4](https://ailoot.ai/models/fr-ca/voyageai-voyage-code-4/)

Voyage AI voyage-code-4 est un modèle de plongement de code pour retrouver des sources pertinentes à partir de questions, de descriptions de problèmes et d’objectifs d’agents de programmation. Il prend en charge des entrées de 32 000 tokens et des dimensions de 256, 512, 1024 ou 2048, avec des représentations à virgule flottante et quantifiées.

- [**Ailoot Ultra · Embeddings** `POST /v1/embeddings` `voyageai/voyage-code-4`](https://ailoot.ai/models/fr-ca/voyageai-voyage-code-4/#method-0)

À propos du modèle

Cette description présente les capacités du modèle. Les entrées, sorties et options disponibles dans Ailoot pour la méthode sélectionnée figurent ci-dessous.

voyage-code-4 est le modèle de plongement spécialisé dans le code de Voyage AI pour la recherche dans les dépôts et la recherche d’information des agents de programmation. Il est conçu pour aider à trouver des sources pertinentes lorsque le point de départ est une question, un symptôme ou une description de tâche, plutôt qu’un identifiant connu. Il représente le code et les informations textuelles sous forme de vecteurs numériques pour la recherche ; il ne modifie pas le dépôt et ne génère pas de correctif.

#### Retrouver du code à partir du problème étudié

Le fabricant décrit un corpus d’entraînement constitué à partir de pull requests terminées, qui relie des requêtes en langue naturelle au code. Cela constitue une distinction significative par rapport à des exemples d’entraînement construits principalement autour de fichiers sources et de leurs docstrings : la tâche de recherche peut partir du comportement à examiner.

Préparez une requête telle que « Trouvez où un résultat vide entraîne le signalement d’une opération réussie comme un échec. » Indexez des sections sources lisibles avec leurs chemins de fichiers et leurs commentaires pertinents. Gardez les conditions entourant la fonction lorsqu’elles expliquent son comportement. Un candidat renvoyé doit ramener le lecteur ou l’agent à la section source qu’il représente.

La recherche sémantique peut compléter la recherche exacte d’identifiants et la recherche en texte intégral. Si le nom d’une fonction est déjà connu, une recherche exacte reste utile. Si seul un symptôme est connu, la recherche vectorielle peut fournir des candidats à examiner et à affiner avec une autre requête.

#### Rôles de requête et de document

Les recommandations de recherche de Voyage distinguent la requête du document du corpus au moyen des types d’entrée query/document. Pour la recherche de code, utilisez la description du problème ou de la tâche comme requête et la source ou la documentation indexée comme document. La recette publiée ajoute des instructions de recherche propres à chaque rôle lors de l’encodage.

Gardez la mise en forme d’origine du code, les noms et la documentation pertinente disponibles en dehors du vecteur. Pour une section source, conservez son chemin de fichier et son emplacement ; pour un guide de programmation, conservez son titre. Après la recherche, examinez le code réel et ses appelants avant de choisir une modification. La pertinence d’un candidat n’établit pas qu’il est la seule cause d’un problème signalé.

#### Contexte et choix de représentation

La longueur de contexte publiée du modèle exact est de 32 000 tokens. Son plongement par défaut possède 1024 dimensions, avec 256, 512 et 2048 dimensions également prises en charge grâce à l’apprentissage Matryoshka. L’annonce documente des représentations à virgule flottante de 32 bits, en entiers signés et non signés de 8 bits, et binaires.

Choisissez une dimension et une représentation pour la collection et conservez-les avec ses métadonnées. Les vecteurs à virgule flottante et les représentations quantifiées nécessitent une gestion correspondante du stockage et de la comparaison. Une représentation binaire encode les informations vectorielles différemment d’une liste de coordonnées ordinaires à virgule flottante ; préservez cette distinction lors de la préparation des résultats de recherche.

Pour un long fichier, choisissez des sections cohérentes dont les emplacements sources peuvent être retrouvés. Une fonction peut nécessiter une définition de type ou un commentaire adjacent pour expliquer une condition, tandis qu’un fichier entier surdimensionné peut inclure du matériau sans rapport. Gardez la section alignée sur la tâche à rechercher, plutôt que de traiter le contexte maximal comme une taille de segment à privilégier.

#### Utiliser les sources retrouvées comme éléments à examiner

Un processus concret d’agent de programmation retrouve des sources candidates, lit ces fichiers, suit les références pertinentes et resserre la recherche à mesure que l’examen progresse. Le texte retrouvé devient du contexte pour l’étape de raisonnement ou de modification. Gardez son association à la révision indexée du dépôt, afin qu’un candidat soit examiné au regard de la bonne source.

La contribution propre à l’édition voyage-code-4 est sa spécialisation dans l’étape de recherche du problème vers le code utilisée par les agents de programmation, avec des dimensions et des représentations flexibles. Sa sortie est un vecteur de recherche, tandis que le diagnostic, la modification et la validation restent des tâches distinctes ancrées dans le dépôt réel.

**Ailoot Ultra · Embeddings** `POST /v1/embeddings` `voyageai/voyage-code-4`

[`voyageai/voyage-code-4`](https://ailoot.ai/models/fr-ca/#m=voyageai%2Fvoyage-code-4&route=Ultra&caller=voyageai%2Fvoyage-code-4&fmt=embeddings)

VoyageAI by MongoDB /`voyageai/voyage-code-4`

### Pour commencer

Voyage AI voyage-code-4 est un modèle de plongement de code pour retrouver des sources pertinentes à partir de questions, de descriptions de problèmes et d’objectifs d’agents de programmation. Il prend en charge des entrées de 32 000 tokens et des dimensions de 256, 512, 1024 ou 2048, avec des représentations à virgule flottante et quantifiées.

Entrées acceptées

Texte · token\_ids

Résultats

embedding

### Disponible dans Ailoot · entrées et méthodes

**Ailoot Ultra · Embeddings** `POST /v1/embeddings`

Entrée

`text`, `token_ids`

Sortie

`embedding`

Contexte

32 000 tokens

Format de sortie

json

| Champ | Type | Exigence | Valeurs et limites | Par défaut |
| --- | --- | --- | --- | --- |
| Champ`model` | Type`string` | ExigenceObligatoire | Valeurs et limites voyageai/voyage-code-4 | Par défaut— |
| Champ`input` | Type`string\|string[]\|integer[]\|integer[][]` | ExigenceObligatoire | Valeurs et limites Nombre minimal d’éléments: 1 Conditions: Lot homogène non vide. Les identifiants de jetons sont des entiers positifs ou nuls. Budget d’entrée : Maximum: 32 000 · Unité de texte: octets UTF8 · Unité de jetons: éléments du tableau de jetons | Par défaut— |
| Champ`encoding_format` | Type`string` | ExigenceFacultatif | Valeurs et limites float | Par défautfloat |
| Champ`dimensions` | Type`integer` | ExigenceNon pris en charge | Valeurs et limites Minimum: 1 | Par défaut— |
| Champ`user` | Type`json_value` | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
| Champ`session_id` | Type`json_value` | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
| Champ`trace` | Type`json_value` | ExigenceFacultatif | Valeurs et limites Conditions: Le code source autorise ce champ de métadonnées JSON ; sa sémantique exacte en amont dépend du modèle. | Par défaut— |
| Champ`provider` | Type`object` | ExigenceFacultatif | Valeurs et limites Conditions: provider.options est refusé | Par défaut— |

Combinaisons d’éléments d’entrée

**text\_to\_embedding**

Paramètres et cycle de vie de la méthode

| Paramètre | Contrat |
| --- | --- |
| Paramètre`content_type` | Contratapplication/json |
| Paramètre`required` | Contratmodel, input |
| Paramètre`input_shapes` | Contratstring, string\[\], nonnegative\_integer\_token\_array, nonnegative\_integer\_token\_array\[\] |
| Paramètre`encoding_format` | Contratfloat |
| Paramètre`dimensions_override` | Contratfalse |
| Paramètre`max_input_budget_units` | Contrat32000 |
| Paramètre`multimodal_objects` | Contratfalse |
| Paramètre`material_types` | Contrattext, token\_ids |

Cycle de vie : `synchronous_json`

Conservez tous les indices et toutes les dimensions des vecteurs.

Un nom de modèle multimodal n’autorise pas les objets image sur ce chemin précis.

### Tarifs

Les tarifs n’ajoutent pas d’options de requête. Les paramètres pris en charge figurent dans la méthode sélectionnée.

Mode rapide

Tarif standard Lorsque le mode rapide est sélectionné

Mode Flex

Tarif standard Lorsque le mode flex est sélectionné

Effort de raisonnement maximal

Tarif standard Lorsque l’effort de raisonnement maximal utilise l’ajustement par défaut (default)

#### Tarifs Ailoot

#### Prix par configuration

| Configuration | Barème tarifaire | Coût |
| --- | --- | --- |
| ConfigurationTarifs de base des jetons | Barème tarifaireTarif de base | Coût Entrée · Jetons en entrée **$0.00024** / 1K jetons Sortie · Jetons en sortie **$0** / 1K jetons Entrée · Lecture du cache **—** / 1K jetons Entrée · Écriture dans le cache **—** / 1K jetons Entrée · Écriture dans le cache, 1 h **—** / 1K jetons |

Ailoot réserve un montant estimé avant une requête. Après le résultat, le montant final est débité selon l’utilisation mesurée. Pour le streaming, le montant final à débiter est calculé à partir du relevé final d’utilisation. [Fonctionnement de la réservation et du débit →](https://ailoot.ai/docs/fr-ca/billing/reserve/)

### Exemples de requêtes

#### Ailoot Ultra · Embeddings

curlPython SDK

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "voyageai/voyage-code-4", "input": ["First document", "Second document"]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
```

```python
from openai import OpenAI
import os

client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='voyageai/voyage-code-4',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
```

### Recevoir et enregistrer les résultats

#### Ailoot Ultra · Embeddings

json

##### Conserver tous les résultats terminés

Conservez chaque réponse, fichier et partie de contenu renvoyés dans leur intégralité.

Conservez chaque vecteur avec son indice. Le nombre de vecteurs doit être égal au nombre d’entrées ; les dimensions doivent être cohérentes.

##### Si la réponse d’origine doit être vérifiée

Aucun point de terminaison dédié aux tâches d’embedding n’est ajouté.

Champs de la réponse

| Champ | Type |
| --- | --- |
| Champ`object` | Typestring |
| Champ`model` | Typestring |
| Champ`data[].index` | Typeinteger |
| Champ`data[].embedding` | Typefinite float\[\] |
| Champ`usage` | Typeobject |

Erreurs et étapes suivantes

| Réponse | Condition | Étape suivante |
| --- | --- | --- |
| Réponse400 · `invalid_request_error` | ConditionChamps obligatoires, représentation des éléments fournis ou valeur de paramètre invalides | Étape suivanteCorrigez les champs indiqués avant une nouvelle requête de création. |

### Alias

#### Alias du modèle

**Ailoot Ultra** [`voyageai/voyage-code-4`](https://ailoot.ai/models/fr-ca/#m=voyageai%2Fvoyage-code-4&route=Ultra&caller=voyageai%2Fvoyage-code-4&fmt=embeddings)

#### Alias des chemins de méthode

Utilisez les chemins de méthode indiqués ci-dessus.

#### ID d’appel associés

[`voyageai/voyage-code-4`](https://ailoot.ai/models/fr-ca/#m=voyageai%2Fvoyage-code-4&route=Ultra&caller=voyageai%2Fvoyage-code-4&fmt=embeddings)

FAQ · VoyageAI by MongoDB: voyage-code-4

Quelles entrées et quels résultats sont disponibles ?

`POST /v1/embeddings` · `voyageai/voyage-code-4`: `text`, `token_ids` → `embedding`

Quels champs la requête utilise-t-elle ?

`POST /v1/embeddings` · `voyageai/voyage-code-4`: `model`, `input`, `encoding_format`, `provider`

Quelles limites s’appliquent ?

`POST /v1/embeddings` · `voyageai/voyage-code-4`: `ctx`: `32000`; `input.budget.maximum`: `32000` (octets UTF8); `input.min_items`: `1`

Connectez Ailoot à Claude Code, OpenCode, Hermes ou à votre application.

## L’entreprise et son portefeuille de projets

L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.

## Achetez des tokens à prix réduit.

Une remise d’abonnement pour le travail régulier. Des codes promo jusqu’à 50% sur l’achat de tokens.

Abonnement

Choisissez une offre à tarif réduit pour vos requêtes régulières.

Code promo jusqu’à 50%

Saisissez le code à l’achat. Le prix est recalculé selon la promotion en cours.

Dépenses dans l’historique

Modèle, tokens et montant sont enregistrés pour chaque requête.

[Choisir un abonnement](https://ailoot.ai/docs/fr-ca/billing/subscriptions/) · [Voir les prix des modèles](https://ailoot.ai/models/fr-ca/)

## Connectez l’API au produit que vous vendez.

SaaS, applications et bots selon l’offre officielle et le contrat de licence Ailoot. Pour la revente, demandez une licence revendeur.

Application commerciale

Intégrez la génération de texte, d’images, de vidéo et de son aux fonctions payantes de votre service.

Licence revendeur

Envoyez la description du projet et le mode d’accès. Demandez des conditions écrites d’utilisation et de revente.

Documents sur le site

L’offre officielle, le contrat de licence et la politique de traitement des données sont accessibles avant connexion.

[Demander une licence revendeur](mailto:support@ailoot.ai) · [Offre officielle et contrat de licence](https://ailoot.ai/legal/offer?lang=fr-ca)

## Ailoot · L’entreprise et son portefeuille de projets





Ailoot s’appuie sur une expérience opérationnelle éprouvée, une large clientèle, un service stable et un suivi continu des KPI.





L’entreprise et son portefeuille de projets : des millions de clients ; des ventes qui se chiffrent en milliards chaque mois.





Ailoot met cette expérience opérationnelle au service de l’accès API aux fonctions d’IA dans les produits des clients, leurs agents, applications et automatisations.
