usage null - Claude Code Qwen DashScope
Quick fix
升级到 cc-switch v3.16.3+,自动修复 OpenAI 兼容接口流式用量为 null 的问题。
Symptom
Section titled “Symptom”Cannot read properties of null (reading 'output_tokens')当使用 cc-switch 作为本地代理,且上游提供商(如 DashScope/Qwen、OpenRouter 等)采用 OpenAI 兼容协议时,cc-switch 在将 Claude Code 的流式请求转换为 OpenAI 格式时,未注入 `stream_options: { include_usage: true }`。这导致上游服务商不在 SSE chunk 中返回 token 用量数据,最终代理转换出的 Anthropic `message_delta.usage` 字段为 null。Claude Code 客户端尝试读取该 null 值中的 `output_tokens` 属性时抛出错误。
虽然 Issue #3752 也涉及用量问题,但其描述的是“用量查询失效/显示过期”,通常指余额检测功能而非推理过程中的 token 统计,且用户反馈其自行恢复,疑似上游服务波动或 API 变更导致的暂时性故障。而 Issue #1957 描述的 usage null 是代码逻辑缺失,已通过升级版本解决。两者虽都关联“用量”,但成因和解决方案不同。
卸载当前旧版本的 cc-switch
安装 v3.16.3 或更高版本的 cc-switch
重启 Claude Code 或 Codex,验证流式输出末尾是否包含正确的 usage 数据
Affected Versions
Section titled “Affected Versions”ToolClaude Code
Version3.16.1
PlatformsmacOS
Source Issues
Section titled “Source Issues”本页汇总自 2 个真实 issue
- 为什么我的 token 用量全部为零?
- 这是因为上游 OpenAI 兼容接口(如 Qwen/DashScope)默认不在流式响应中返回 usage 数据。升级到 cc-switch v3.16.3+ 后,工具会自动注入必要参数来修复此问题。
- Issue #3752 提到的用量查询失败怎么解决?
- 如果是指 Claude Code 界面显示的‘余额已过期’或‘查询失败’,这通常是上游服务商(如火山方舟、百炼)的临时故障或 API 变更,与 cc-switch 的代码逻辑无关。建议等待服务商恢复或检查你的账户订阅状态。如果是推理过程中报错,请参考本页面关于 usage null 的修复方案。
- Codex 也会遇到这个问题吗?
- 是的。Issue #1957 的修复同时覆盖了 Claude Code 和 Codex Chat 的路径,确保两个方向的行为一致。
该模型始终思考,不支持关闭思考;请使用 low、high 或 max。在 cc-switch 配置中将 glm-5.3 设为强制思考模式,禁用 thinking.type: disabled。Codex 接 Kimi 报 HTTP 400 tool schema 校验失败升级 cc-switch 到 v3.18.0+;若仍报错需等待 MFJS schema 清洗功能上线。Range of input length should be [1, 1048576]升级 CC Switch 至 v3.19.0 以修复图片被当作 base64 文本转发导致的 token 膨胀问题,或避免在代理下使用 view_image。
这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。