Fenêtre de contexte vs tokens de sortie max : limites de GPT-6, Claude, DeepSeek et Kimi
Ce que signifient fenêtre de contexte et tokens de sortie max, les limites de GPT-6, Claude, DeepSeek V4.1 Flash et Kimi K3, et comment éviter les coupures.
Lire en MarkdownLa fenêtre de contexte est le nombre total de tokens qu'un modèle peut contenir dans une requête : votre prompt, l'historique de la conversation, les images et la réponse qu'il écrit. La limite de tokens de sortie max est le maximum que le modèle peut écrire dans cette réponse, et sur les modèles à raisonnement elle inclut les tokens consacrés à la réflexion. La réponse doit tenir dans la fenêtre de contexte, donc un long prompt laisse moins de place à la sortie.
Quelle est la différence entre fenêtre de contexte et tokens de sortie max ?
La fenêtre de contexte est un espace partagé. Tout ce que vous envoyez et tout ce que le modèle écrit dans une requête doit y tenir.
Les tokens de sortie max sont un plafond distinct, plus petit, qui ne porte que sur la réponse. Chaque modèle a un maximum, et chaque API a un paramètre qui vous permet de fixer une limite plus basse par requête.
Deux conséquences en découlent :
- L'entrée et la sortie se disputent la même fenêtre. La référence de l'API DeepSeek le dit clairement : « La longueur totale des tokens d'entrée et des tokens générés est limitée par la longueur de contexte du modèle. »
- Le raisonnement compte comme sortie. Sur GPT-6, Claude, DeepSeek V4.1 Flash et Kimi K3, les tokens qu'un modèle consacre à la réflexion comptent dans la limite de sortie et sont facturés comme sortie. Une réponse peut s'arrêter tôt même si la partie visible est courte.
Quelles sont les limites de chaque modèle ?
| Modèle | ID du modèle | Fenêtre de contexte | Sortie maximale | Paramètre de sortie | Valeur par défaut si vous l'omettez |
|---|---|---|---|---|---|
| GPT-6 Astra, Sol, Luna | gpt-6-astra, gpt-6-sol, gpt-6-luna | 1,05M tokens (922K en entrée) | 128K | max_output_tokens (Responses), max_completion_tokens (Chat Completions) | Maximum du modèle |
| Claude Opus 5.5, Fable 5.1, Fable 5 | claude-opus-5-5, claude-fable-5-1, claude-fable-5 | 1M tokens | 128K | max_tokens | Aucune : le champ est obligatoire |
| DeepSeek V4.1 Flash | deepseek-v4.1-flash | 1M tokens | 393 216 | max_tokens | 8K sans réflexion, 64K avec réflexion, 128K avec l'effort max |
| Kimi K3 | kimi-k3 | 1 048 576 tokens | 1 048 576 | max_completion_tokens | 131 072 |
C'est la dernière colonne qui explique la plupart des réponses coupées. DeepSeek V4.1 Flash peut écrire 393 216 tokens, mais si vous ne définissez pas max_tokens, il s'arrête à 8K, ou à 64K avec la réflexion activée. Kimi K3 peut écrire jusqu'à 1 048 576 tokens, mais sa valeur par défaut est de 131 072.
La référence API de chaque modèle donne la liste complète des paramètres : GPT-6 Astra, Claude Opus 5.5, DeepSeek V4.1 Flash et Kimi K3.
max_tokens, max_completion_tokens ou max_output_tokens ?
Tous plafonnent la réponse. Celui à envoyer dépend du format d'API et du modèle :
| Format d'API | Paramètre | Remarques |
|---|---|---|
OpenAI Responses (/v1/responses) | max_output_tokens | OpenAI : « Une limite supérieure du nombre de tokens pouvant être générés pour une réponse, y compris les tokens de sortie visibles et les tokens de raisonnement. » |
OpenAI Chat Completions (/v1/chat/completions) | max_completion_tokens | OpenAI indique que max_tokens est « déprécié au profit de max_completion_tokens » et « incompatible avec les modèles de la série o ». Utilisez max_completion_tokens pour GPT-6. |
Anthropic Messages (/v1/messages) | max_tokens | Obligatoire à chaque requête. |
| DeepSeek Chat Completions | max_tokens | De 1 à 393216. |
| Kimi Chat Completions | max_completion_tokens | max_tokens est l'ancien nom, déprécié, de la même limite. |
Si une API répond « max_tokens is not supported with this model », passez au paramètre indiqué dans ce tableau.
Pourquoi mon modèle s'est-il arrêté avant d'avoir fini ?
Il a atteint la limite de sortie. Chaque API le signale dans la réponse, pas sous forme d'erreur :
| API | Champ | Valeur quand la limite de sortie est atteinte |
|---|---|---|
| OpenAI Responses | incomplete_details.reason | "max_output_tokens" |
| OpenAI Chat Completions | choices[].finish_reason | "length" |
| Anthropic Messages | stop_reason | "max_tokens" |
| DeepSeek | choices[].finish_reason | "length" |
Anthropic a une deuxième raison d'arrêt, model_context_window_exceeded, pour une réponse qui a rempli toute la fenêtre de contexte. Le length de DeepSeek couvre les deux cas : la réponse a dépassé max_tokens ou la conversation a dépassé la longueur de contexte.
Pour corriger :
- Augmentez la limite de sortie jusqu'au maximum du modèle indiqué dans le tableau ci-dessus.
- Baissez l'effort de raisonnement. Moins de réflexion laisse une plus grande part du budget à la réponse, et coûte moins cher.
- Poursuivez au lieu de relancer. Renvoyez la réponse partielle et demandez au modèle de continuer. Le guide d'Anthropic sur les raisons d'arrêt décrit cette méthode pour
max_tokens.
Que signifie « context window exceeded » ?
Votre requête ne tient pas dans la fenêtre du modèle. L'endroit exact où elle échoue dépend de l'API :
- Claude. Si l'entrée seule dépasse la fenêtre, l'API renvoie une erreur 400
invalid_request_error(« prompt is too long »). Si seule la somme de l'entrée et demax_tokensla dépasse, la documentation d'Anthropic indique que Claude 4.5 et les modèles plus récents, y compris ceux de ce guide, acceptent la requête et s'arrêtent avecstop_reason: "model_context_window_exceeded"s'ils manquent de place. - DeepSeek. La réponse se termine par
finish_reason: "length"quand la conversation dépasse la longueur de contexte.
Trois solutions, dans cet ordre :
- Supprimez ou résumez les anciens tours de la conversation. C'est la seule solution quand l'entrée seule est trop longue.
- Baissez la limite de sortie pour que l'entrée et la sortie tiennent ensemble.
- Passez à un modèle doté d'une fenêtre plus grande. Les quatre familles du tableau ci-dessus lisent environ 1M tokens.
Comment les agents de code gèrent-ils ces limites ?
Les agents de code fixent la limite de sortie à votre place, et leurs valeurs par défaut peuvent être inférieures à ce que le modèle permet.
Claude Code utilise CLAUDE_CODE_MAX_OUTPUT_TOKENS. Sa documentation indique qu'elle « vaut 32000 par défaut pour les ID de modèle qu'il ne reconnaît pas, comme les noms propres à une passerelle, et ramène au plafond du modèle les valeurs qui le dépassent ». Quand vous utilisez DeepSeek V4.1 Flash ou Kimi K3 dans Claude Code, définissez la variable si vous avez besoin de réponses plus longues. La même documentation prévient qu'une valeur plus élevée « réduit la fenêtre de contexte effective disponible avant le déclenchement de la compaction automatique ».
Codex lit model_context_window dans config.toml, décrit comme les « tokens de fenêtre de contexte disponibles pour le modèle actif ». Définissez-le pour les modèles que Codex ne connaît pas, comme dans notre configuration de Kimi K3 et notre configuration de DeepSeek V4.1 Flash. Pour un nom de modèle qu'il ne reconnaît pas, Codex affiche aussi : « Model metadata for <model> not found. Defaulting to fallback metadata; this can degrade performance and cause issues. » La session fonctionne quand même.
Questions fréquentes
La fenêtre de contexte inclut-elle les tokens de sortie ?
Oui. L'entrée, l'historique, les images et la réponse partagent une seule fenêtre de contexte. La limite de sortie max est un plafond distinct pour la réponse, à l'intérieur de cette fenêtre.
Les tokens de raisonnement comptent-ils dans les tokens de sortie max ?
Oui, pour les quatre familles de modèles présentées ici. Les tokens de réflexion comptent dans la limite de sortie et sont facturés comme tokens de sortie.
Quel modèle écrit les réponses les plus longues ?
Kimi K3 accepte max_completion_tokens jusqu'à 1 048 576, et DeepSeek V4.1 Flash accepte max_tokens jusqu'à 393 216. GPT-6 et Claude s'arrêtent à 128K par requête.
Une limite de sortie max plus élevée coûte-t-elle plus cher ?
Non. Vous payez les tokens que le modèle écrit réellement, pas la limite que vous fixez. Une limite plus élevée ne compte que lorsque le modèle a besoin de place.
Où voir les prix actuels de ces modèles ?
Sur la page de chaque modèle : GPT-6 Astra, Claude Opus 5.5, DeepSeek V4.1 Flash et Kimi K3.



