龍蝦上下文 16k 解決方案

集中說明 OpenClaw 16k 上下文錯誤與本機設定修復方式。

龍蝦上下文 16k 解決方案

OpenClaw 顯示 API rate limit 錯誤時,可能是本機上下文設為 16k,需要自行修改設定。

圖片展示 OpenClaw 的錯誤介面,顯示“API rate limit reached. Please try again later.”(已達 API 速率限制,請稍後再試),左側有黃色驚嘆號圖示。此圖呈現本機上下文設為16k時可能出現的 API rate limit 錯誤,提示使用者修改相關設定。圖片展示 OpenClaw 的錯誤介面,顯示“API rate limit reached. Please try again later.”(…

圖片展示了OpenClaw設定檔中關於MiniMax-M2.5模型的相關資訊。其中,“contextWindow”值為16000,“maxTokens”值為4096,用紅色框突出顯示。這與文件中提到的OpenClaw模型上下文大小不是固定16k,需檢查~/.openclaw/openclaw.json或~/.openclaw/agents/<agentId>/agent/models.json檔案,將對應模型的contextWindow和maxTokens改成模型實際支援值的內容相呼應,直觀呈現了設定檔中對應參數的設定情況。圖片展示了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 中較高的值。

在網頁設定中搜尋 contextWindow,然後改為 128000。

圖片展示了OpenClaw設定頁面的“Settings”設定頁籤。頁面左側有多個頁籤,其中“Settings”被紅色框突出顯示。右側是設定內容區域,包含“Bedrock Model Discovery”“Model Catalog Mode”“Model Providers”等設定項,如“Model Providers”下有“Model Provider Model List”“Model Window”“Max Tokens”等可編輯欄位,其中“Model Window”被紅色箭頭指向。該圖片與文件中關於OpenClaw設定上下文視窗大小的內容相關,直觀呈現了設定頁面中相關設定位置。圖片展示了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/&lt;agentId&gt;/agent/models.json

官方文件寫明:自訂 provider 可以加在 models.providers 中,或者寫在 ~/.openclaw/agents/<agentId>/agent/models.json。

3)如果改過自訂 Agent 根目錄

如果設定過環境變數:

OPENCLAW_AGENT_DIR

那麼 agent 設定目錄會被這個環境變數覆蓋。官方文件也寫了可透過 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/&lt;agentId&gt;/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”,而是本機模型設定曾被手動調低,或仍保留舊設定