跳转到内容

正文内容频繁出现在 thinking(思考)块内,visible text 块几乎为空 - CC Switch

Quick fix

升级 cc-switch 至包含 PR #4210 的版本,将预注入 thinking 占位符改为反应式处理即可解决长上下文会话冻结与正文折叠问题。

报错原文
正文内容频繁出现在 thinking(思考)块内,visible text 块几乎为空。

cc-switch 默认对命中 REASONING_VENDOR_HINTS(含 "deepseek")的 provider 预注入合成型 {"type": "thinking", "thinking": "tool call"} 占位符。该逻辑最初用于兼容 DeepSeek 早期强制回传 thinking 块否则返回 400 的限制。

但在长上下文(如 cache_read 超过 150k tokens)或频繁使用工具调用的场景中,这些无法通过 GUI 开关或整流器拦截的合成占位符会不断累积,破坏 Anthropic 格式的响应结构,导致正文折叠进 thinking 块,最终引发 JSONL 停止写入与客户端 UI 冻结。近期上游已放宽该限制,预注入行为反而成为新的故障源。

  1. 升级 cc-switch 至包含 PR #4210 修复的版本(或最新 main 分支)。新版本已移除无条件预注入逻辑,改为仅在检测到上游明确返回 thinking must be passed back 等旧版 400 错误时才动态注入占位符。

ToolClaude Code / Codex
Versionv3.16.2
PlatformsWindows
如何临时绕过此问题?
可暂时关闭 cc-switch 的路由模式直接连接上游供应商,或等待官方合并 PR #4210 后升级客户端。
为什么以前不会报错现在会?
早期 DeepSeek 兼容层强制要求回传 thinking 块否则返回 400,cc-switch 为此预注入占位符;近期上游放宽了该限制,但预注入逻辑未同步调整,反而在长上下文中引发格式冲突。

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。