DeepSeek前缀缓存命中率骤降 - CC Switch修复
Quick fix
升级至 cc-switch v3.16.3 以修复格式转换导致的缓存命中率计算错误。
Symptom
Section titled “Symptom”缓存命中率在低于 50%在使用 OpenCode Go 等供应商时,CC Switch 的格式转换路径(如 OpenAI→Anthropic)存在一个 Bug,导致缓存 token 被重复计入统计,从而使显示的缓存命中率大幅降低(从正常的 90%+ 跌至 50% 以下)。这是统计层面的误报,而非实际请求失败。
此外,部分用户报告通过 CC Switch 代理路由时,由于 Anthropic System Message Normalization 和 JSON Payload Canonicalization 等请求变换改变了发送给 DeepSeek 的请求前缀,导致 DeepSeek 基于精确前缀匹配的自动缓存失效,实际命中率下降。但针对“命中率显示低于 50%”这一特定严重偏差问题,官方确认为统计 Bug 并在 v3.16.3 中修复。
将 cc-switch 更新至最新版本(至少 v3.16.3),该版本已修复缓存 token 重复计入的问题。
Affected Versions
Section titled “Affected Versions”ToolClaude Code
Version3.16.2
PlatformsmacOSWindows
Source Issues
Section titled “Source Issues”本页汇总自 2 个真实 issue
- 更新到 v3.16.3 后命中率恢复正常了吗?
- 是的,根据 issue #4243 的反馈,更新到 v3.16.3 后,OpenCode Go 的 DeepSeek v4pro 缓存命中率已恢复正常水平。
- 为什么之前命中率会低于 50%?
- 这是因为在格式转换路径上,缓存 token 被重复计入统计,导致命中率数据被腰斩。这并非模型服务本身的问题,而是 cc-switch 内部的统计逻辑错误。
api failed deserialize json body into按错误类型回退 Claude Code、升级 cc-switch、关闭本地代理或停止发送不支持的字段。Request body format invalid 报错 Claude Code升级 cc-switch 并开启 Rectifier 整流器,或添加环境变量 MAX_THINKING_TOKENS=0 以兼容第三方 API 格式。ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY打开 `~/.claude/settings.json`,删除重复的 auth 环境变量,只保留当前供应商需要的 `ANTHROPIC_AUTH_TOKEN` 或 `ANTHROPIC_API_KEY`,保存后重启 Claude Code。
这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。