コンテキストウィンドウと最大出力トークン:GPT-6、Claude、DeepSeek、Kimi の上限
コンテキストウィンドウと最大出力トークンの意味、GPT-6・Claude・DeepSeek V4.1 Flash・Kimi K3 の上限、回答が途中で止まるときの対処法を解説します。
Markdown で読むコンテキストウィンドウとは、モデルが 1 回のリクエストで扱えるトークンの総数です。プロンプト、会話履歴、画像、そしてモデルが書く回答がすべて含まれます。最大出力トークンの上限は、その回答でモデルが書ける最大量で、推論モデルでは思考に使ったトークンも含まれます。回答はコンテキストウィンドウに収まる必要があるため、プロンプトが長いほど出力に使える余地は小さくなります。
コンテキストウィンドウと最大出力トークンの違いは?
コンテキストウィンドウは共有スペースです。1 回のリクエストで送る内容とモデルが書く内容は、すべてこの中に収まらなければなりません。
最大出力トークンは、回答だけに適用される別の、より小さな上限です。モデルごとに上限値があり、各 API にはリクエストごとにそれより低い上限を設定するパラメータがあります。
ここから 2 つのことが言えます。
- 入力と出力は同じウィンドウを取り合います。 DeepSeek の API リファレンスははっきりこう書いています。「入力トークンと生成トークンの合計長は、モデルのコンテキスト長によって制限されます。」
- 推論は出力として数えられます。 GPT-6、Claude、DeepSeek V4.1 Flash、Kimi K3 では、モデルが思考に使ったトークンは出力上限に含まれ、出力として課金されます。表示される回答が短くても、回答が途中で止まることがあります。
各モデルの上限は?
| モデル | モデル ID | コンテキストウィンドウ | 最大出力 | 出力パラメータ | 省略時のデフォルト |
|---|---|---|---|---|---|
| GPT-6 Astra、Sol、Luna | gpt-6-astra, gpt-6-sol, gpt-6-luna | 105万トークン(入力 922K) | 128K | max_output_tokens(Responses)、max_completion_tokens(Chat Completions) | モデルの最大値 |
| Claude Opus 5.5、Fable 5.1、Fable 5 | claude-opus-5-5, claude-fable-5-1, claude-fable-5 | 100万トークン | 128K | max_tokens | なし:必須フィールド |
| DeepSeek V4.1 Flash | deepseek-v4.1-flash | 100万トークン | 393,216 | max_tokens | 思考なしで 8K、思考ありで 64K、max の強度で 128K |
| Kimi K3 | kimi-k3 | 1,048,576 トークン | 1,048,576 | max_completion_tokens | 131,072 |
回答が途中で切れる原因の多くは最後の列にあります。DeepSeek V4.1 Flash は 393,216 トークンまで書けますが、max_tokens を設定しないと 8K、思考がオンなら 64K で止まります。Kimi K3 は最大 1,048,576 トークンまで書けますが、デフォルトは 131,072 です。
パラメータの一覧は各モデルの API リファレンスにあります:GPT-6 Astra、Claude Opus 5.5、DeepSeek V4.1 Flash、Kimi K3。
max_tokens、max_completion_tokens、max_output_tokens のどれを使う?
どれも回答の長さを制限します。どれを送るかは API 形式とモデルによって決まります。
| API 形式 | パラメータ | 補足 |
|---|---|---|
OpenAI Responses(/v1/responses) | max_output_tokens | OpenAI:「レスポンスで生成できるトークン数の上限。表示される出力トークンと推論トークンを含みます。」 |
OpenAI Chat Completions(/v1/chat/completions) | max_completion_tokens | OpenAI は max_tokens を「max_completion_tokens を推奨するため非推奨」かつ「o シリーズのモデルとは互換性がない」としています。GPT-6 では max_completion_tokens を使います。 |
Anthropic Messages(/v1/messages) | max_tokens | すべてのリクエストで必須です。 |
| DeepSeek Chat Completions | max_tokens | 1〜393216。 |
| Kimi Chat Completions | max_completion_tokens | max_tokens は同じ上限の非推奨の名前です。 |
API が "max_tokens is not supported with this model" と返したら、この表のパラメータに切り替えてください。
モデルが最後まで書かずに止まるのはなぜ?
出力上限に達したからです。どの API も、これをエラーではなくレスポンスの中で知らせます。
| API | フィールド | 出力上限に達したときの値 |
|---|---|---|
| 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 には 2 つ目の停止理由 model_context_window_exceeded があり、回答がコンテキストウィンドウ全体を埋めた場合に使われます。DeepSeek の length は両方のケースを含みます。回答が max_tokens を超えた場合と、会話がコンテキスト長を超えた場合です。
対処法:
- 出力上限を上げる。 上の表にあるモデルの最大値まで上げられます。
- 推論強度を下げる。 思考が少ないほど回答に回せる予算が増え、費用も下がります。
- やり直さずに続きを書かせる。 途中までの回答を送り返し、続きを書くよう指示します。Anthropic の停止理由ガイドは
max_tokensの場合のこの方法を説明しています。
"context window exceeded" はどういう意味?
リクエストがモデルのウィンドウに収まっていません。どこで失敗するかは API によって異なります。
- Claude。 入力だけでウィンドウを超える場合、API は 400
invalid_request_error("prompt is too long")を返します。入力とmax_tokensの合計だけが超える場合について、Anthropic のドキュメントは、Claude 4.5 以降のモデル(このガイドのモデルを含む)はリクエストを受け付け、余地がなくなるとstop_reason: "model_context_window_exceeded"で停止するとしています。 - DeepSeek。 会話がコンテキスト長を超えると、回答は
finish_reason: "length"で終わります。
対処法は 3 つあり、この順に試します。
- 会話の古いターンを削除するか要約します。入力だけで長すぎる場合は、これが唯一の対処法です。
- 出力上限を下げ、入力と出力の合計が収まるようにします。
- ウィンドウの大きいモデルに切り替えます。上の表の 4 つのモデルファミリーはどれも約 100万トークンを読み込めます。
コーディングエージェントはこれらの上限をどう扱う?
コーディングエージェントは出力上限を自動で設定しますが、そのデフォルトはモデルの許容値より低いことがあります。
Claude Code は CLAUDE_CODE_MAX_OUTPUT_TOKENS を使います。ドキュメントによると、この値は「ゲートウェイ固有の名前など、認識できないモデル ID ではデフォルトで 32000 になり、モデルの上限を超える値は上限まで下げられます」。Claude Code で DeepSeek V4.1 Flash や Kimi K3 を使い、長い回答が必要な場合は、この変数を設定してください。同じドキュメントは、値を大きくすると「自動コンパクションが発動するまでに使える実質的なコンテキストウィンドウが小さくなる」とも注意しています。
Codex は config.toml から model_context_window を読み込みます。これは「アクティブなモデルで使えるコンテキストウィンドウのトークン数」と説明されています。Codex が知らないモデルでは設定が必要で、手順は Kimi K3 のセットアップと DeepSeek V4.1 Flash のセットアップで紹介しています。認識できないモデル名に対して、Codex は次のメッセージも表示します:"Model metadata for <model> not found. Defaulting to fallback metadata; this can degrade performance and cause issues."(モデルのメタデータが見つからないため既定のメタデータを使います。性能が落ちたり問題が起きたりする可能性があります。)セッション自体はそのまま動作します。
よくある質問
コンテキストウィンドウには出力トークンも含まれる?
はい。入力、履歴、画像、回答はすべて 1 つのコンテキストウィンドウを共有します。最大出力の上限は、そのウィンドウの中で回答だけにかかる別の上限です。
推論トークンは最大出力トークンに含まれる?
はい。ここで扱う 4 つのモデルファミリーすべてで、思考トークンは出力上限に含まれ、出力トークンとして課金されます。
いちばん長い回答を書けるモデルは?
Kimi K3 は max_completion_tokens を 1,048,576 まで、DeepSeek V4.1 Flash は max_tokens を 393,216 まで受け付けます。GPT-6 と Claude はリクエストあたり 128K までです。
最大出力の上限を大きくすると費用は増える?
いいえ。支払うのはモデルが実際に書いたトークン分で、設定した上限の分ではありません。上限を大きくする意味があるのは、モデルがその余地を必要とするときだけです。
これらのモデルのリアルタイム料金はどこで見られる?
各モデルのページで確認できます:GPT-6 Astra、Claude Opus 5.5、DeepSeek V4.1 Flash、Kimi K3。



