龙虾上下文 16k 解决方案
集中说明 OpenClaw 16k 上下文报错与本地配置修复方式。
龙虾上下文 16k 解决方案
龙虾报错 API rate limit 是本地上下文配置为 16 k,需要自行修改
龙虾报错界面,显示“API rate limit reached. Please try again later.”(API速率限制已达到
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_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/<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”,而是他们本地模型配置被手动写小了,或者旧配置残留。