龙虾上下文 16k 解决方案

集中说明 OpenClaw 16k 上下文报错与本地配置修复方式。

龙虾上下文 16k 解决方案

龙虾报错 API rate limit 是本地上下文配置为 16 k,需要自行修改

图片展示的是龙虾报错界面,显示“API rate limit reached. Please try again later.”(API速率限制已达到。请稍后再试。),左侧有黄色感叹号图标。该图片与文档中龙虾上下文16k解决方案的上下文相关,用于直观呈现龙虾报错API rate limit的情况,提示用户在本地上下文配置为16k时,需自行修改相关配置以解决此报错问题。龙虾报错界面,显示“API rate limit reached. Please try again later.”(API速率限制已达到

图片展示了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 取更高值。

web页面配置那搜索 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”,而是他们本地模型配置被手动写小了,或者旧配置残留