Réponse courte
max_tokens limite le nombre de tokens que le modèle peut générer dans une réponse. Les API et les modèles utilisent des noms de champs, des paramètres obligatoires et des comportements par défaut différents.
Pour une sortie stable, définissez une limite de sortie explicite pour les réponses longues, la génération de code et les tâches de documentation. Pour les appels d’API Claude / compatibles Anthropic, vous devez généralement envoyer max_tokens explicitement.
Concepts fondamentaux
Si la limite de sortie est trop faible, la réponse peut être tronquée. Si elle est très élevée, le modèle ne générera pas toujours autant de tokens, mais les tâches à longue sortie peuvent coûter davantage.
Différents noms de paramètres
Si vous utilisez Codex CLI ou un autre outil fondé sur la Responses API, utilisez le champ actuellement pris en charge par cet outil ou fournisseur. Ne codez pas en dur le même nom de paramètre pour chaque modèle.
Que se passe-t-il si vous ne le définissez pas ?
Le comportement diffère selon le fournisseur et l’API :
Le même code peut produire des longueurs de sortie différentes après un changement de modèle. Pour limiter les surprises en production, définissez une limite de sortie explicite.
Plages recommandées
Consultez la model plaza et la documentation du modèle en amont pour connaître le maximum réel. Les limites de sortie des modèles peuvent changer selon la version.
Que faire si la sortie est tronquée ?
Si la réponse contientfinish_reason: "length", le modèle a généralement atteint la limite de sortie.
Procédez au dépannage dans cet ordre :
- Augmentez le champ de limite de sortie pris en charge par l’API actuelle.
- Vérifiez que vous utilisez le bon nom de paramètre.
- Rendez la consigne plus ciblée pour réduire la sortie inutile.
- Utilisez un modèle avec une fenêtre de sortie plus grande.
- Divisez la tâche en plusieurs étapes.
Erreurs fréquentes
- Supposer qu’une valeur
max_tokensplus élevée fait toujours écrire davantage le modèle. - Réessayer après une troncature sans vérifier
finish_reason. - Utiliser un ancien nom de champ avec un modèle de raisonnement.
- Ignorer les tokens de raisonnement cachés lors de l’estimation du contexte et du coût.
- Ignorer la limite maximale de sortie du modèle.

