检测项目一览 / 模型名回显
模型名回显检测
中转站检测:请求的模型名和接口响应里回显的 model 字段是否一致。Claude、GPT 均适用,附带说明 OpenAI 的 system_fingerprint 字段。
测什么
发一次最小请求,读响应里官方协议自带的 model 字段(Claude 和 OpenAI 都会回显),比对它和你请求的模型名是不是指同一个模型(允许日期快照后缀、-latest 别名等正常变体,不要求逐字节相同)。
为什么能判真假 / 来路
官方接口的响应通常会原样回显你请求的模型名(或它的官方别名展开)。如果你花钱买的是 Opus,响应却回显了别的家族或明显更低档的型号,是掉包最直接的证据之一。
结果怎么读
- 通过:回显的模型名和你请求的一致(含允许的日期快照、-latest 展开等正常变体)。
- 存疑:响应回显了一个和你请求对不上的模型名——比如你请求 Opus,回显却是别的模型。
- 未通过:这个探针不会给出「未通过」:只有通过/存疑/信息不足三档。回显不一致最重只会记「存疑」,但它是本站仅有的两个一票否决信号之一——不过关时,哪怕其它项都很漂亮,总结论最高也只封顶「存疑」。
- 信息不足:响应没有回显 model 字段(部分网关或正规站也不回显该字段,不能据此判负面),或请求失败。
局限:它判不了什么
回显不一致只判「存疑」而不是「未通过」,因为部分正规网关会做模型别名映射,可能是正常代理逻辑而非掉包;压根不回显该字段(信息不足)同样不能作为负面依据。这一项和 thinking 签名一样都不给「未通过」这一档,却都会触发一票否决把总结论封顶「存疑」。回显一致也证明不了「是官转还是订阅逆向」——那要看注入指纹。OpenAI 协议里还有一个附带的 system_fingerprint 探针:官方通常返回 fp_ 开头的字符串标记本次推理用的模型配置快照,字段缺失不算负面,但格式明显不是 fp_ 开头会被判存疑。
自己怎么验
发一次最小请求,直接看响应里的 model 字段是不是你请求的那个。
curl -s https://YOUR_RELAY_BASE_URL/v1/messages \
-H "x-api-key: YOUR_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-opus-5","max_tokens":16,"messages":[{"role":"user","content":"hi"}]}' \
| grep -o '"model":"[^"]*'OpenAI 兼容站把 URL 换成 https://YOUR_RELAY_BASE_URL/v1/chat/completions、头换成 Authorization: Bearer YOUR_KEY、请求体加 max_completion_tokens 即可,grep 的字段名一样是 model。
相关检测项
常见问题
回显不一致就代表被掉包了吗?
代表「存疑」而不是实锤。部分正规中转会做模型别名映射(比如把简写名展开成完整版本号),这也会导致字符串对不上。建议结合签名验真、计费元数据等其它项一起看。
为什么 Gemini 没有模型名回显检测?
本站引擎目前没有对 Gemini 协议实现这一项探针——Gemini 官方接口的响应结构和 Claude/OpenAI 不同,这项检测暂未覆盖,不代表 Gemini 中转站不需要验真,请用其它已覆盖的检测项(如计费元数据、流式结构、错误指纹)。