Le paramètre frequency_penalty pénalise la répétition des mots en fonction de leur fréquence dans le texte généré. Une pénalité de fréquence élevée décourage le modèle de répéter des mots qui sont déjà apparus fréquemment dans la sortie, favorisant ainsi la diversité et réduisant les répétitions.













Endpoints Chat
API de chat completion.












Exemples
Exemples réels de code
chat completion
POST /v1/chat/completions
frequency_penalty
Valeur par défaut : 0
guardrails
max_tokens
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.
Le ou les prompts pour lesquels générer des complétions, encodés sous forme de liste de dictionnaires avec rôle et contenu.
metadata
model
Identifiant du modèle à utiliser. Vous pouvez consulter la liste de vos modèles disponibles via l'API Lister les modèles, ou voir notre présentation des modèles pour une description détaillée.
n
Nombre de complétions à renvoyer pour chaque requête, les tokens d'entrée ne sont facturés qu'une seule fois.
parallel_tool_calls
Valeur par défaut : true
Permet d'activer l'appel de fonctions en parallèle lors de l'utilisation d'outils. Lorsque cette option est activée, le modèle peut appeler plusieurs outils simultanément.
prediction
Permet de spécifier une complétion attendue, optimisant ainsi les temps de réponse en exploitant un contenu connu ou prévisible.
presence_penalty
Valeur par défaut : 0
Le presence_penalty définit à quel point le modèle pénalise la répétition de mots ou de phrases. Une valeur plus élevée encourage le modèle à utiliser une plus grande variété de vocabulaire, rendant la sortie plus diversifiée et créative.
prompt_cache_key
Une clé de cache pour activer la mise en cache des prompts. Si elle est fournie, l’API tentera de réutiliser les tokens précédemment calculés pour les requêtes partageant le même préfixe (par exemple, des conversations multi-tours ou des 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.
prompt_mode
Options disponibles pour l'argument prompt_mode sur l'endpoint de chat completion. Les valeurs représentent l'intention de haut niveau. L'assignation aux SP réels est gérée en interne. Le système de prompt peut inclure la date limite de connaissances, les capacités du modèle, le ton à utiliser, les directives de sécurité, etc.
random_seed
La graine à utiliser pour l'échantillonnage aléatoire. Si définie, différents appels génèrent des résultats déterministes.
reasoning_effort
Contrôle le niveau d'effort de raisonnement pour les modèles de raisonnement. "high" active les traces de raisonnement complètes, "none" désactive l'effort de raisonnement.
response_format
Spécifie le format que le modèle doit produire en sortie. Par défaut, il utilise \{ "type": "text" \}. Définir \{ "type": "json_object" \} active le mode JSON, qui garantit que le message généré par le modèle est au format JSON. Lorsque vous utilisez le mode JSON, vous DEVEZ également instruire le modèle de produire du JSON via un message système ou utilisateur. Définir \{ "type": "json_schema" \} active le mode JSON schema, qui garantit que le message généré par le modèle est au format JSON et suit le schéma que vous fournissez.
safe_prompt
Valeur par défaut : false
Détermine si un prompt de sécurité doit être injecté avant toutes les conversations.
stop
Arrête la génération si ce token est détecté. Ou si l'un de ces tokens est détecté lorsqu'un tableau est fourni
stream
Valeur par défaut : false
Détermine si la progression partielle doit être diffusée en continu. Si activé, les tokens seront envoyés sous forme d'événements serveur 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.
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 basses comme 0,2 la rendront plus concentré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.
tool_choice
Contrôle quel outil (le cas échéant) est appelé par le modèle. none signifie que le modèle n'appellera aucun outil et générera un message à la place. auto signifie que le modèle peut choisir entre générer un message ou appeler un ou plusieurs outils. any ou required signifie que le modèle doit appeler un ou plusieurs outils. Spécifier un outil particulier via \{"type": "function", "function": \{"name": "my_function"\}\} force le modèle à appeler cet outil.
top_p
Valeur par défaut : 1
Échantillonnage par noyau, où le modèle considère les résultats des tokens avec une masse de probabilité top_p. Ainsi 0.1 signifie que seuls les tokens représentant 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.chat.complete({
model: "mistral-small-latest",
messages: [
{
content: "Who is the best French painter? Answer in one short sentence.",
role: "user",
},
],
});
console.log(result);
}
run();
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({
apiKey: "MISTRAL_API_KEY",
});
async function run() {
const result = await mistral.chat.complete({
model: "mistral-small-latest",
messages: [
{
content: "Who is the best French painter? Answer in one short sentence.",
role: "user",
},
],
});
console.log(result);
}
run();
from mistralai.client import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.chat.complete(model="mistral-large-latest", messages=[
{
"role": "user",
"content": "Who is the best French painter? Answer in one short sentence.",
},
], stream=False, response_format={
"type": "text",
})
# Handle response
print(res)
from mistralai.client import Mistral
import os
with Mistral(
api_key=os.getenv("MISTRAL_API_KEY", ""),
) as mistral:
res = mistral.chat.complete(model="mistral-large-latest", messages=[
{
"role": "user",
"content": "Who is the best French painter? Answer in one short sentence.",
},
], stream=False, response_format={
"type": "text",
})
# Handle response
print(res)
curl https://api.mistral.ai/v1/chat/completions \
-X POST \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"messages": [
{
"content": "ipsum eiusmod"
}
],
"model": "mistral-large-latest"
}'curl https://api.mistral.ai/v1/chat/completions \
-X POST \
-H 'Authorization: Bearer YOUR_APIKEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"messages": [
{
"content": "ipsum eiusmod"
}
],
"model": "mistral-large-latest"
}'200 (application/json)
200 (text/event-stream)
{
"choices": [
{
"finish_reason": "stop",
"index": "0",
"message": {}
}
],
"created": "1702256327",
"id": "cmpl-e5cc70bb28c444948073e77776eb30ef",
"model": "mistral-small-latest",
"object": "chat.completion",
"usage": {}
}{
"choices": [
{
"finish_reason": "stop",
"index": "0",
"message": {}
}
],
"created": "1702256327",
"id": "cmpl-e5cc70bb28c444948073e77776eb30ef",
"model": "mistral-small-latest",
"object": "chat.completion",
"usage": {}
}nullnull