Le nombre maximum de tokens à générer dans la complétion. Le nombre de tokens de votre prompt plus max_tokens ne peut pas dépasser la longueur de contexte du modèle.













Endpoints Fim
API de complétion fill-in-the-middle.












Exemples
Exemples réels de code
Complétion Fim
POST /v1/fim/completions
Complétion FIM.
max_tokens
metadata
min_tokens
Le nombre minimum de tokens à générer dans la complétion.
model
Valeur par défaut : "codestral-2404"
ID du modèle avec FIM à utiliser.
prompt
Le texte ou le code à compléter.
prompt_cache_key
Une clé de cache pour activer la mise en cache des prompts. Lorsqu'elle est fournie, l'API tente de réutiliser les tokens précédemment calculés pour les requêtes partageant le même préfixe (par exemple, conversations multi-tours ou requêtes avec un prompt système similaire). Les tokens mis en cache sont facturés à 10 % du prix standard des tokens d'entrée.
random_seed
La graine à utiliser pour l'échantillonnage aléatoire. Si définie, différents appels génèreront des résultats déterministes.
stop
Arrête la génération si ce jeton est détecté. Ou si l'un de ces jetons est détecté lorsqu'un tableau est fourni
stream
Valeur par défaut : false
Indique si la progression partielle doit être diffusée en continu. Si activé, les jetons seront envoyés sous forme d'événements serveur (server-sent events) contenant uniquement des données au fur et à mesure de leur disponibilité, le flux se terminant par un message data: [DONE]. Sinon, le serveur maintiendra la requête ouverte jusqu'au timeout ou jusqu'à la complétion, la réponse contenant le résultat complet au format JSON.
suffix
Texte ou code optionnel qui ajoute davantage de contexte pour le modèle. Lorsqu'un prompt et un suffix sont fournis, le modèle complète ce qui se trouve entre les deux. Lorsque suffix n'est pas fourni, le modèle exécute simplement la complétion en partant du prompt.
temperature
Température d'échantillonnage à utiliser, nous recommandons une valeur entre 0,0 et 0,7. Des valeurs plus élevées comme 0,7 rendront la sortie plus aléatoire, tandis que des valeurs plus faibles comme 0,2 la rendront plus ciblée et déterministe. Nous recommandons généralement de modifier ce paramètre ou top_p, mais pas les deux. La valeur par défaut varie selon le modèle ciblé. Appelez le endpoint /models pour récupérer la valeur appropriée.
top_p
Valeur par défaut : 1
Échantillonnage par noyau (nucleus sampling), où le modèle considère les résultats des jetons ayant une masse de probabilité top_p. Ainsi, 0,1 signifie que seuls les jetons constituant les 10 % supérieurs de la masse de probabilité sont pris en compte. Nous recommandons généralement de modifier ce paramètre ou temperature, mais pas les deux.
200 (application/json)
200 (text/event-stream)
Réponse réussie
Playground
Testez les endpoints en direct
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.fim.complete({
model: "codestral-2405",
prompt: "def",
suffix: "return a+b",
});
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.fim.complete({
model: "codestral-2405",
prompt: "def",
suffix: "return a+b",
});
console.log(result);
}
run();
from mistralai.client import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.fim.complete(model="codestral-latest", prompt="def", top_p=1, stream=False, suffix="return a+b")
# Handle response
print(res)
from mistralai.client import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.fim.complete(model="codestral-latest", prompt="def", top_p=1, stream=False, suffix="return a+b")
# Handle response
print(res)
curl https://api.mistral.ai/v1/fim/completions \
-X POST \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"prompt": "def"
}'curl https://api.mistral.ai/v1/fim/completions \
-X POST \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"prompt": "def"
}'200 (application/json)
200 (text/event-stream)
{
"id": "447e3e0d457e42e98248b5d2ef52a2a3",
"object": "chat.completion",
"model": "codestral-2508",
"usage": {
"prompt_tokens": 8,
"completion_tokens": 91,
"total_tokens": 99
},
"created": 1759496862,
"choices": [
{
"index": 0,
"message": {
"content": "add_numbers(a: int, b: int) -> int:\n \"\"\"\n You are given two integers `a` and `b`. Your task is to write a function that\n returns the sum of these two integers. The function should be implemented in a\n way that it can handle very large integers (up to 10^18). As a reminder, your\n code has to be in python\n \"\"\"\n",
"tool_calls": null,
"prefix": false,
"role": "assistant"
},
"finish_reason": "stop"
}
]
}{
"id": "447e3e0d457e42e98248b5d2ef52a2a3",
"object": "chat.completion",
"model": "codestral-2508",
"usage": {
"prompt_tokens": 8,
"completion_tokens": 91,
"total_tokens": 99
},
"created": 1759496862,
"choices": [
{
"index": 0,
"message": {
"content": "add_numbers(a: int, b: int) -> int:\n \"\"\"\n You are given two integers `a` and `b`. Your task is to write a function that\n returns the sum of these two integers. The function should be implemented in a\n way that it can handle very large integers (up to 10^18). As a reminder, your\n code has to be in python\n \"\"\"\n",
"tool_calls": null,
"prefix": false,
"role": "assistant"
},
"finish_reason": "stop"
}
]
}nullnull