【故障解决分享】openclaw → cpa plus 6.9.5-0-plus → 第三方 gpt-5.4 chat completions tools 相关报错
- 内容介绍
- 文章标签
- 相关推荐
如有理解错误,欢迎指出交流。
环境背景: openclaw 版本:2026.3.3 。cpa plus 版本:6.9.5-0-plus 上游供应商接口:/v1/chat/completions(openai-compatible),gpt5.4
报错: 400 An assistant message with ‘tool_calls’ must be followed by tool messages responding to each ‘tool_call_id’. The following tool_call_ids did not have response messages: call_DohhiOWokIol8IAEGaEIqWNn
大意: assistant 返回了 tool_calls,但后续没有被模型提供方识别到对应的 tool_call_id 返回结果,因此请求被判定为工具调用链不完整。
我这边最终可行的处理方式:
将 CPA Plus 6.9.5-0-plus 更换为主线 CPA 6.9.7 更换后,我这边这个问题消失了
注意:这里我只能确认“对我当前这套环境有效”,还不能完全下结论说“官方已经明确修复了这个具体 bug”。
我的排查结论
在使用龙虾时,遇到上述 400 tools 报错。期间做过这些排查/排除: 从较旧版本 CPA 升级到 CPA Plus 更换供应商 去掉 CPA 层直连测试 调整 CPA 配置 重开会话 排除 heartbeat / fallback / hook 干扰
最终根据本地日志和会话痕迹,我目前的判断是:高度怀疑 CPA/兼容层在 tools 回传时,对 tool_call_id 的包装存在不一致,导致上游模型校验时认为缺少对应的 tool result。
如有理解错误,欢迎指出交流。
环境背景: openclaw 版本:2026.3.3 。cpa plus 版本:6.9.5-0-plus 上游供应商接口:/v1/chat/completions(openai-compatible),gpt5.4
报错: 400 An assistant message with ‘tool_calls’ must be followed by tool messages responding to each ‘tool_call_id’. The following tool_call_ids did not have response messages: call_DohhiOWokIol8IAEGaEIqWNn
大意: assistant 返回了 tool_calls,但后续没有被模型提供方识别到对应的 tool_call_id 返回结果,因此请求被判定为工具调用链不完整。
我这边最终可行的处理方式:
将 CPA Plus 6.9.5-0-plus 更换为主线 CPA 6.9.7 更换后,我这边这个问题消失了
注意:这里我只能确认“对我当前这套环境有效”,还不能完全下结论说“官方已经明确修复了这个具体 bug”。
我的排查结论
在使用龙虾时,遇到上述 400 tools 报错。期间做过这些排查/排除: 从较旧版本 CPA 升级到 CPA Plus 更换供应商 去掉 CPA 层直连测试 调整 CPA 配置 重开会话 排除 heartbeat / fallback / hook 干扰
最终根据本地日志和会话痕迹,我目前的判断是:高度怀疑 CPA/兼容层在 tools 回传时,对 tool_call_id 的包装存在不一致,导致上游模型校验时认为缺少对应的 tool result。

