OpenClaw のコンテキスト 16k 問題の解決方法
OpenClaw の 16k コンテキストエラーとローカル設定での修正方法をまとめて解説します。
OpenClaw のコンテキスト 16k 問題の解決方法
OpenClaw で API rate limit エラーが表示されるのは、ローカルのコンテキスト設定が 16 k になっているためです。ご自身で変更する必要があります。
画像は OpenClaw のエラー画面で、「API rate limit reached. Please try again later.」(A…
画像は、OpenClaw の設定ファイルにある MiniMax-M2.5 モデルの情報です
OpenClaw のモデルコンテキストサイズは 16k 固定ではなく、主にローカル設定によって決まります。~/.openclaw/openclaw.json または ~/.openclaw/agents/<agentId>/agent/models.json を確認し、対象モデルの contextWindow と maxTokens をモデルが実際に対応している値へ変更してください。MiniMax-M2.5 の場合は、contextWindow: 196608、maxTokens: 8192 に変更できます。変更後に OpenClaw を再起動すれば反映されます。公式の設定リファレンスと MiniMax のサンプルも、この記述方法に対応しています。
この状況の本質は、カスタム provider / カスタムモデルの contextWindow が 16000(またはそれ以下)に設定されていることです。OpenClaw の実際のコンテキストサイズは設定に大きく左右されます。モデルが実際にはより大きなコンテキストに対応している場合、その値を大きくしなければ、API rate limit reached、コンテキスト不足、長い会話で原因不明の不具合が発生するといった問題が起こりやすくなります。公式の設定リファレンスには、OpenClaw のメイン設定ファイルが ~/.openclaw/openclaw.json であること、agent ディレクトリに models.json を個別に配置できることが明記されています。また、モデル照合時には contextWindow / maxTokens について、明示的な設定と暗黙的な catalog のうち大きい値が採用されます。
web ページの設定で contextWindow を検索し、128000 に変更してください。
画像は、OpenClaw 設定ページの「Settings」タブです
OpenClaw のコンテキスト設定を変更する方法
一、問題の症状
OpenClaw でカスタムモデルやサードパーティーの中継モデルを利用する際、モデル設定のコンテキストウィンドウが次のように小さすぎる場合があります。
"contextWindow": 16000,
"maxTokens": 4096この場合、次の問題が発生する可能性があります。
- 長い会話が失敗しやすくなります
- ツール呼び出し時にエラーが起きやすくなります
- ページに API rate limit reached と表示されます
- モデルがより大きなコンテキストに対応していても、OpenClaw は小さい値で処理します
OpenClaw の公式ドキュメントでは、モデルの contextWindow と maxTokens を設定で明示的に指定できると説明されています。メイン設定ファイルは ~/.openclaw/openclaw.json にあり、agent ディレクトリの models.json で個別に上書きすることもできます。
二、設定ファイルの場所
1)メイン設定ファイルのパス
OpenClaw のデフォルトのメイン設定ファイルは次のとおりです。
~/.openclaw/openclaw.json公式ドキュメントにも明記されています。
2)Agent モデル設定のパス
agent ごとにモデルを設定する場合、通常のパスは次のとおりです。
~/.openclaw/agents/<agentId>/agent/models.json公式ドキュメントでは、カスタム provider を models.providers に追加するか、~/.openclaw/agents/<agentId>/agent/models.json に記述できると説明されています。
3)カスタム Agent のルートディレクトリを変更している場合
次の環境変数を設定している場合:
OPENCLAW_AGENT_DIRagent の設定ディレクトリは、この環境変数で上書きされます。公式ドキュメントにも、OPENCLAW_AGENT_DIR(または PI_CODING_AGENT_DIR)で agent 設定のルートディレクトリを変更できると記載されています。
三、変更方法
方法 A:メイン設定を変更する
openclaw.json
次のファイルを開きます。
~/.openclaw/openclaw.json現在使用しているモデルプロバイダーに対応する設定を探します。例:
{
models: {
mode: "merge",
providers: {
minimax: {
baseUrl: "https://api.minimax.io/anthropic",
api: "anthropic-messages",
apiKey: "你的 API Key",
models: [
{
id: "MiniMax-M2.5",
name: "MiniMax-M2.5",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 196608,
maxTokens: 8192
}
]
}
}
}
}公式の MiniMax サンプルで示されている MiniMax-M2.5 の設定は、contextWindow: 196608、maxTokens: 8192 です。
方法 B:agent 配下のファイルを変更する
models.json
次のファイルを開きます。
~/.openclaw/agents/<agentId>/agent/models.jsonその中にある対象モデルの次の値を変更します。
"contextWindow": 16000,
"maxTokens": 4096たとえば、次のような適切な値へ変更します。
"contextWindow": 196608,
"maxTokens": 8192四、推奨する設定値
値は適当に設定しないでください。「1M のコンテキストが欲しいから 1000000 と書く」という方法では動作しません。
推奨原則
- contextWindow:モデルが実際に対応している値を入力します
- maxTokens:モデルが実際に対応している最大出力値を入力します
- 中継プラットフォームを利用している場合、メーカーの公称値だけでなく、中継側が実際に許可している上限を確認してください
MiniMax-M2.5 の場合
OpenClaw の公式サンプルで推奨されている値は次のとおりです。
"contextWindow": 196608,
"maxTokens": 8192五、変更後に行うこと
設定を保存したら、OpenClaw または該当する gateway プロセスを再起動します。
よく使われるコマンドは次のとおりです。
openclaw models list
openclaw models set minimax/MiniMax-M2.5公式ドキュメントでも、モデルの確認と切り替えにこの両方のコマンドが案内されています。
サービスとして実行している場合は、次のように該当するサービスも再起動する必要があります。
openclaw gateway restartまたは、ご自身の systemd / pm2 / docker コンテナを再起動します。
六、補足説明
OpenClaw の公式設定リファレンスには、次の点も記載されています。
- カスタム provider は models.providers に直接記述できます
- contextWindow / maxTokens は明示的に設定できます
- モデル照合時には、明示的な設定と暗黙的な catalog のうち大きい値が採用されます
- ご自身の設定で models.json を完全に上書きする場合は、models.mode: "replace" を使用できます。
また、現在の公式ドキュメントには、custom providers でこれらのフィールドを省略した場合、デフォルトで contextWindow: 200000、maxTokens: 8192 が設定されると記載されています。そのため、お客様の環境で今も 16k や 4k になっている場合、「OpenClaw の現在のデフォルトが 16k に限られている」のではなく、ローカルのモデル設定で小さな値が手動設定されているか、古い設定が残っている可能性が高いです。