API Error: 400 The content[].thinking in the thinking mode must be passed back to the API
·
claude code + ccSwitch调用deepseek-v4 发生错误API Error: 400 The content[].thinking in the thinking mode must be passed back to the API
解决步骤
点击编辑供应商,修改json文件为
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "你自己的api-key",
"ANTHROPIC_BASE_URL": "https://api.deepseek.com/anthropic",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "deepseek-v4-flash",
"ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME": "deepseek-v4-flash",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "deepseek-v4-pro[1M]",
"ANTHROPIC_DEFAULT_OPUS_MODEL_NAME": "deepseek-v4-pro",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "deepseek-v4-flash",
"ANTHROPIC_DEFAULT_SONNET_MODEL_NAME": "deepseek-v4-flash",
"ANTHROPIC_MODEL": "deepseek-v4-flash",
"CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "true"
},
"includeCoAuthoredBy": false,
"modelParams": {
"stream": true,
"thinking": false //关键在这
}
}
原因分析
在 ccSwitch更新到版本v3.15.0后,调用api方式变了
claude code以为你在用真正的 Claude Opus,所以它发送了 thinking/effort 参数,并在多轮对话中尝试 round-trip thinking blocks。但实际后端是 DeepSeek-V4-flash,它的 Anthropic 兼容层对 thinking signatures 的处理有问题。
将json文件中加上
“modelParams”: {
“stream”: true,
“thinking”: false
}后将会关闭claude code本身的thinking层
关闭thinking层并不会对claude自家模型以外的模型造成影响
对于DeepSeek 的兼容 API 来说,没有任何影响。
thinking 是 Anthropic API 的概念——真正的 Claude 模型会用 thinking 做内部分步推理,提升复杂任务质量。但 DeepSeek-V4不是 Claude,它没有 adaptive thinking 机制。
DeepSeek 的 /anthropic 兼容层只是模拟了 response 格式,把 thinking blocks 包装进去。关掉它:
- DeepSeek-V4-flash 本身的能力 → 完全不变 ✅
- 兼容层不再生成 thinking blocks → 不会再报 400 错误 ✅
对于真实的 Claude Opus 4.7,关 thinking 会有能力下降。但对于走兼容 API 的 DeepSeek-V4-flash,thinking: false 只是让兼容层少包一层东西,模型能力不受任何影响。
更多推荐


所有评论(0)