Qoder 自定义模型(BYOK)在 agent 工具调用场景下频繁报错:
“自定义模型服务异常,text content is empty”
【环境】Windows + Qoder 最新版,自定义模型:阿里云百炼 kimi/kimi-k3(仅思考模型),
1M 上下文档位。多轮工具调用后必现。
【排查过程】
- 日志:ACPIntegration 报 {“code”:100400,“message”:“text content is empty”},
均发生在工具调用结果返回后、模型生成下一轮响应时 - 直连百炼 API 复现测试:12 次多轮工具调用(含流式+长上下文 8 万字符),
0 次"空 content 且无 tool_calls" - 发现:kimi-k3 在输出 tool_calls 的轮次 content 经常为空(约 25-50%),
这是模型的正常行为(工具调用轮次无需正文) - 结论:网关把"content 为空但有 tool_calls"的响应误判为错误。
百炼官方文档也明确:思考模式工具调用时每轮 assistant 消息需保留
reasoning_content,说明空正文+工具调用是受支持的格式
【建议】BYOK 响应校验应豁免"含 tool_calls 的空 content"轮次,
或对 100400 空响应自动重试一次。