近日,有开发者发现在使用 Claude Desktop 配合 ccswitch 路由模式时,后台产生了大量异常的 API 调用。日志分析显示,这些请求的显著特征是 `max_tokens` 参数均被设置为 1。在一个典型的会话样本中,此类“探测性”请求占比高达 91.24%,不仅浪费了大量请求配额,还严重拖慢了响应速度。经技术排查,问题的根源在于中间层代理未透传 Claude Desktop 依赖的 `/v1/messages/count_tokens` 接口。当客户端无法通过标准接口获取准确的 Token 计数时,便会触发 fallback 机制,回退到发送极短请求(max_tokens=1)来推断上下文占用。为彻底解决此兼容性问题,社区开发者基于 Rust 编写了补丁并提交给项目方。该补丁新增了专门处理 `count_tokens` 的逻辑,确保此类请求直接透传至上游服务提供商(如 Anthropic 或 Gemini),并绕过常规的格式转换与内容拦截,从而消除了客户端的盲目探测行为,恢复了正常的请求模式。
事件分析
💡 核心观点:API 网关若不全量透传元数据接口,客户端的容错机制将导致无效请求指数级激增,全量兼容是设计关键。
原文链接:Linux.do





