如何解决小龙虾 OpenClaw, Chat 上下文或 Session 窗口的 token 长度常常超限的问题

前言

如果遇到 Chat窗口写满的情况,首先可以尝试点击 WebUI Chat输入框右下角的 ‘+’ 图标(New sesstion),其次可以尝试下述指令:

  • /new(全部清除当前 Sesstion内容,重载系统提示词)
  • /reset(全部清除当前 Sesstion内容)
  • /compact(清除一小部分旧的,并生成摘要,触发记忆保存及数据库记忆索引更新(关键词BM25搜索索引还是向量语义搜索索引看系统配置))
  • /clear(只清除 Chat窗口的显示)

直接修改配置文件

{
"models": {
"providers": {
"custum-provider": {
"models": [
{
"id": "qwen3.5-plus",
"contextWindow": 32768,
"maxTokens": 4096,
"input": [
"text"
]
}
]
}
}
},
"agents": {
"defaults": {
"compaction": {
"mode": "safeguard",
"reserveTokensFloor": 30000 // 尽可能小于 contextWindow,否则很容易出错
}
}
}
}

指令配置

  • openclaw config set models.providers.custom-provider.models[0].contextWindow 32768 --strict-json
  • openclaw config set models.providers.custom-provider.models[0].maxTokens 4096 --strict-json
  • openclaw config set agents.defaults.compaction.reserveTokensFloor 30000 --strict-json
  • openclaw gatrway restart

备注

  • --strict-json 为约束参数,--json 为约束格式
  • "contextWindow": 32768, // Chat 窗口限定长度,一次会话总长度,向大模型单次最大输入长度 + 预留输出长度,总长度不超过 contextWindow 即可(尽可能小于该模型实际支持的最大输入长度,否则很容易出错,向大模型单次最大输入长度包括系统提示词 + 本地和互联翁搜索结果 + 当前问题)
  • "maxTokens": 4096, // 接大模型单次最大输出长度
  • "reserveTokensFloor": 30000 // 尽可能小于 contextWindow,否则很容易出错
posted @ 2026-04-24 17:58  engineer大叔  阅读(133)  评论(0)    收藏  举报