AI中转站实测:你花的Opus钱,拿到的可能是Sonnet

11 阅读6分钟

AI中转站实测:你花的Opus钱,拿到的可能是Sonnet

起因

最近用某中转站跑 Claude Code,体感时好时坏——有时候推理很深,有时候又特别鲁莽,犯一些不该犯的低级错误。

一开始以为是自己 prompt 写得不好,后来越想越不对:同样的任务,之前用另一个站就没这问题。

于是决定动手查一下,到底给我的是不是真 Opus。

结果查出来的东西,比我预想的多得多。


一、最硬的证据:裸请求泄漏"Kiro"身份

我用 curl 直接调中转站的 API,不带任何 system prompt,只发了一个 "hi"

curl -s https://[中转站地址]/v1/messages \
  -H "Content-Type: application/json" \
  -H "x-api-key: sk-xxx" \
  -H "anthropic-version: 2023-06-01" \
  -d '{"model":"claude-opus-4-6","max_tokens":10,"messages":[{"role":"user","content":"hi"}]}'

返回:

{
  "content": [{"text": "Hey! How's it going? I'm Kiro, here to help with your dev work."}],
  "model": "claude-opus-4-6",
  "usage": {"input_tokens": 4, "cache_read_input_tokens": 0}
}

"Kiro"是什么? 它是 Claude Code 内置的身份标识,只有在 Claude Code 的 system prompt 里才会出现。我的请求里根本没有这个设定。

这说明:

  • 中转站用的是 Claude Code 订阅账号(不是 API key)来转发请求
  • Anthropic 那边自动给这个账号附加了 Claude Code 的系统提示词
  • 你以为你在调"纯净API",实际上请求经过了一层 Claude Code 会话

另外还有一个细节:多次测试中,cache_read_input_tokens 偶尔会蹦出 29 个 token。我没发 system prompt,这 29 个 token 哪来的?只有一种解释——其他用户的会话缓存渗透过来了。拼车嘛,大家共用一个上游账号,缓存自然是共享的。


二、同一道题,两个站的差距

我用同一道积分题分别测了两个中转站(都请求的 claude-opus-4-6):

题目:∫ x³eˣ dx,要求逐步推导。

站 A(体感"蠢"的那个)

  • 只做了 1 轮分部积分,直接跳到答案
  • 没有展开中间过程
  • 输出 79 个 token
  • 像是在背公式,不像在推理

站 B(体感正常的那个)

  • 完整做了 3 轮分部积分,每轮都写清楚 u/dv/du/v
  • 最后还点出了"系数恰好是 3! = 6"这个规律
  • 输出 450 个 token
  • 有洞察力,这才像 Opus

同一个模型名,同一道题,推理深度差了一个量级。你说是不是同一个模型?


三、响应头里的 model 字段,别信

两个站返回的 JSON 里都写着 "model": "claude-opus-4-6"

但这个字段是中转网关自己填的,不是 Anthropic 签名认证的。中转站用的开源软件(比如 Sub2API)源码里就有 model_mapping 功能——你请求 opus,它转发给 sonnet,响应里再把 model 改回 opus。三行代码的事。

还有几个可疑点:

  • service_tier: "standard" — 真正的 Max 订阅用户通常拿到 priority
  • inference_geo: "not_available" — 官方直连会返回推理服务器地理位置,代理把这个藏了

这些都不是铁证,但加在一起就很说明问题了。


四、顺手溯了一下源

既然都查了,干脆把中转站的底子也扒一扒。

站 A(体感差的)

  • 域名是个 .cn 的,用 DNSPod 解析,Cloudflare CDN
  • 网站前端是开源项目 Sub2API(GitHub 2k star),专门做"拼车分发"的
  • 品牌名随便起的,全网搜不到任何推广痕迹,零公开信息
  • 域名名字带"解析"二字,查了一下这类域名的历史——以前是做视频VIP解析的(就是破解优酷爱奇艺会员视频那种)
  • 视频解析不赚钱了,转型 AI 拼车。灰产老哥的标准转型路径

站 B(体感正常的)

  • 通过证书透明度日志(crt.sh)查到了完整的基础设施:
    • 主域名 rjj.cc
    • 日本服务器集群(jp-fox、jp2-fox)
    • 独立状态监控页
    • 关联域名 bookapi.cc(之前做小说/图书API的)
  • 有推荐返佣系统,有博客软文推广,有多个通道(/claude、/aws、/droid)
  • 明显是在正经做生意,规模比站 A 大得多

五、降级到底怎么实现的?

查下来,大概率不是"用 system prompt 告诉模型你要假装变笨"这种骚操作,而是更简单粗暴的方式:

路由替换:网关收到你的请求,把 model: opus 改成 model: sonnet,转发给 Anthropic。响应回来再把 model 字段改回 opus。你在客户端看到的永远是 opus,但跑的是 sonnet。

而且很可能是动态的

  • 额度充裕 / 低峰期 → 给你真 opus
  • 额度紧张 / 高峰期 → 降到 sonnet

这就解释了为什么体感时好时坏——不是你的问题,是后面的模型在变。


六、你自己怎么验?

不用信我,自己跑一遍就知道了。

方法 1:裸请求测身份泄漏

用 curl 直接调你的中转站,不带 system prompt,只发 "hi"。如果回复里出现了 "Kiro"、"Claude Code" 之类你没设定过的身份,说明上游有东西在注入。

方法 2:同题对比推理深度

找一道需要多步推理的数学题(比如多轮分部积分、逻辑推理题),分别用中转站和官方 API 跑。真 Opus 会展开每一步,Sonnet 倾向于跳步给结论。

方法 3:持续监测 token 数

同一道题,不同时段跑,记录 output_tokens。如果同一个问题有时输出 400 token 有时输出 80 token,大概率后面的模型在切换。

方法 4:看 cache 字段

你没发 system prompt,但 cache_creation_input_tokenscache_read_input_tokens 不为零?那就是有东西被偷偷塞进去了。


七、说在最后

但有一条底线:你标什么模型,就该给什么模型。 收了 Opus 的钱给 Sonnet,这不叫降本增效,这叫欺诈。

掘金上有篇文章说得很直白:2026 年 AI 中转行业最恶劣的潜规则就是模型降级——前端标 GPT-5.2,后端偷偷转发到 4o-mini。Claude 这边也一样。

如果你也在用中转站,建议自己跑一遍上面的测试。花五分钟,心里有个数。

如果你在意模型质量的确定性,目前唯一靠谱的方式还是 Anthropic 官方——要么 API,要么 $200/月的 Max 订阅。贵是贵,但至少给你的就是你付钱买的东西。


以上测试均可复现,curl 命令已给出,换成你自己的 key 就能跑。