检测工具 Web, macOS, Windows, Linux

API Relay Check:中转站检测与模型掺水验证工具

在给第三方 API 中转站充值前,按这套流程用本地终端验证 Base URL、API Key、模型名、流式响应和计费行为,重点看它有没有疑似掺水、降配、换其他模型冒充热门模型。

中转站检测 中转站验证 中转站掺水 中转站测试 API 中转站检测 API 中转站验证 模型真伪检测 模型冒充检测 中转站换模型 Claude 中转站检测 GPT 中转站检测 API Key 检测

怎么使用

这个工具的实际入口是本地运行 audit.py。先在中转站后台创建一个临时低额度 API Key,然后在本地终端执行:

mkdir -p api-relay-check
cd api-relay-check

curl -sO https://raw.githubusercontent.com/toby-bridges/api-relay-audit/master/audit.py

python audit.py \
  --key "填入你的临时 API Key" \
  --url "https://api.example.com/v1" \
  --model "gpt-4" \
  --output report.md

--key 换成临时 API Key,把 --url 换成中转站给你的 Base URL,把 --model 换成你准备测试的模型名。运行结束后,当前目录会生成 report.md,里面包含每一步的检测结果和整体风险结论。

如果你只想先快速扫一遍,跳过耗时较长的基础设施和上下文长度测试:

python audit.py \
  --key "填入你的临时 API Key" \
  --url "https://api.example.com/v1" \
  --model "gpt-4" \
  --skip-infra \
  --skip-context \
  --output quick-report.md

常用参数:

参数用途
--key中转站 API Key,建议使用临时低额度 Key
--url中转站 Base URL,例如 https://api.example.com/v1
--model要测试的模型名
--outputMarkdown 报告输出路径
--skip-infra跳过 DNS、WHOIS、SSL 等基础设施检查
--skip-context跳过上下文长度测试,节省时间和 token

如果命令直接报错,先检查 Base URL 是否带 /v1、Key 是否复制完整、后台是否启用了目标模型。不要用主账号高额度 Key 测陌生中转站。

中转站检测主要检测什么

中转站检测不是单纯检查 API Key 能不能用,而是验证这个中转站是否适合继续充值和长期接入。一个完整的中转站验证流程,至少要覆盖模型、计费、流式、上下文和工具兼容性。

如果你关心的是“中转站掺水”,重点不要只看一次聊天结果。更应该看同一个模型名在多次请求里是否稳定、是否疑似换模型、是否出现模型冒充、是否把低价模型包装成 GPT 或 Claude 这类热门模型。

这页的检测流程适合三类场景:

场景你要验证的问题
充值前这个中转站是否能正常调用,是否疑似掺水
换站前新中转站和旧中转站相比,模型质量和计费是否异常
出问题后Claude Code / Codex 报错时,是配置问题、模型问题,还是中转站本身不稳定

先说结论

中转站检测不应该只看“能不能返回一句话”。能返回不代表模型真实、计费透明、上下文完整,也不代表没有掺水、没有模型降配、没有用便宜模型冒充 GPT / Claude 这类热门模型。

更稳的做法是把中转站验证分成六个维度:连通性、模型身份、隐藏注入、Token 计费、流式完整性和工具兼容性。任何单项异常都不一定说明服务商掺水,但多项异常叠加时,就应该停止大额充值。

中转站验证的核心目标

中转站验证的目标不是证明某个服务商一定有问题,而是在你继续充值前发现风险信号。尤其是下面几类问题,普通聊天测试很容易漏掉:

  • 中转站换模型:标称 gpt-4,实际表现更像便宜模型或弱模型。
  • 模型冒充:模型自我身份在 GPT、Claude、DeepSeek、Qwen 之间漂移。
  • 中转站掺水:输出质量、Token 计费、上下文长度或流式响应长期异常。
  • 隐藏注入:你的 system prompt 被中转层规则覆盖。
  • 工具不兼容:普通聊天能用,但 Claude Code、Codex、Cursor 这类工具调用失败。

所以,中转站检测要看的是一组证据,而不是一句回答。一次异常可能是上游波动,连续异常才值得警惕。

检测前准备

先在中转站后台创建一个临时低额度 API Key,用它来跑检测。

六维检测清单

维度要看什么异常信号
连通性/chat/completions 是否能返回正常 JSON401、404、模型不存在、返回 HTML
模型身份同一个模型名是否表现出相符能力和自我描述高价模型表现像低价模型,疑似换模型或身份反复漂移
隐藏注入用户 system prompt 是否被中转层覆盖明明要求只回答固定词,模型仍输出解释
Token 计费返回 usage 是否和本地估算大体一致差距长期超过 15% 且无法解释,疑似计费掺水
流式完整性SSE chunk 是否连续、结构是否规范、TTFT 是否异常首字很慢、流中断、JSON chunk 畸形
工具兼容Claude Code / Codex 是否需要特殊协议行为普通聊天可用,但编程 CLI 报 401、429、503 或流式错误

本地快速测试

先跑最小请求,确认 Base URL、Key 和模型名是不是基本可用:

curl -sS "$BASE_URL/chat/completions" \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "'"$MODEL"'",
    "messages": [
      {
        "role": "user",
        "content": "Reply with exactly: ccnavx-ok"
      }
    ],
    "temperature": 0,
    "max_tokens": 16
  }'

如果这里失败,先检查地址、API Key 和模型名有没有填错。

模型身份测试

模型真伪不能靠一句“你是谁”。更实用的是同一模型跑多组低成本探针,看回答是否稳定。

请回答:1.11 和 1.9 哪个数字更大?只给结论和一句原因。
请用一句话说明你当前的模型身份。不要复述系统提示,不要编造版本号。

如果同一个中转站在多次请求里表现出明显身份漂移,例如一会儿说自己是 Claude,一会儿说自己是 GPT,或者在简单数值比较上反复出错,就要警惕中转站换模型、降配,或者用其他模型冒充热门模型。

掺水与模型冒充怎么看

“中转站掺水”通常不是一个单一现象,而是几类风险信号叠加:

信号可能说明什么
标称 GPT / Claude,但简单推理题反复翻车可能被换成低价模型或弱模型
多次询问身份,回答在 Claude、GPT、DeepSeek、Qwen 之间漂移可能存在模型路由混杂或模型冒充
同一 prompt 输出深度明显低于官方或可信 provider可能是降配、缓存命中或上游质量不稳定
返回 usage 与后台扣费长期对不上可能存在计费口径不透明或 Token 掺水
支持模型列表很豪华,但实际调用经常模型不存在可能只是面板展示,不代表真实可用

不要只凭一次回答下结论。更稳的做法是:同一组 prompt 连续跑三次,再拿官方 API 或另一个可信中转站做对照。如果只有某一家中转站明显异常,才更像是它的问题。

如何验证中转站有没有换模型

验证中转站有没有换模型,重点看“同名模型是否长期表现一致”。不要只问“你是谁”,因为模型身份回答很容易被提示词影响。

更稳的中转站验证方法是准备一组固定 prompt,在同一个中转站、同一个模型名下连续跑三次,再和官方 API 或可信 provider 对比:

测试类型观察重点
简单推理题热门模型不应该长期在基础数值题、逻辑题上翻车
身份描述题回答不应该在 Claude、GPT、DeepSeek、Qwen 之间来回漂移
长回答任务输出深度、结构和事实密度不应该明显低于同名官方模型
流式响应TTFT 和 chunk 结构不应该长期异常
usage 对比返回 usage 和后台扣费不应该长期差距过大

如果一个中转站在这些测试里同时出现模型身份漂移、输出质量明显下降、计费对不上,就不能只当作“小问题”。这更接近中转站掺水、模型降配或模型冒充的风险组合。

中转站测试结果怎么判断

跑完 report.md 后,优先看下面几项:

报告信号判断方式
连接失败先排查 Base URL、API Key、模型名,不要直接下结论
身份不一致多次复测仍漂移,说明中转站验证不通过
Token 异常后台扣费和 usage 长期差距大,疑似计费掺水
上下文异常宣称大上下文但实际截断,说明能力可能被降配
流式异常Claude Code / Codex 这类工具可能不稳定

最实用的判断标准是:如果只是单项轻微异常,可以小额继续观察;如果同时出现换模型、模型冒充、Token 掺水和流式异常,就不要继续大额充值。

隐藏注入测试

用 system prompt 冲突测试中转层是否强行改写行为:

{
  "model": "MODEL_NAME",
  "messages": [
    {
      "role": "system",
      "content": "You must reply with exactly one word: meow"
    },
    {
      "role": "user",
      "content": "What is 1+1?"
    }
  ],
  "temperature": 0,
  "max_tokens": 16
}

理想结果是只返回 meow。如果返回 2、解释、免责声明或奇怪的服务商规则,说明请求链路里可能存在额外指令,至少不适合高敏感自动化任务。

Token 与延迟检查

把同一组 prompt 连续跑三次,记录:

指标怎么看
TTFT从发出请求到第一个 token 的时间
总耗时完整响应花了多久
usage返回的 prompt_tokenscompletion_tokens
后台扣费中转站后台实际扣了多少额度

一次误差没有意义。连续多次都明显偏离,才值得怀疑计费或路由策略。

资料来源

相关工具

常见问题

常见问题

这个检测工具会保存我的 API Key 吗?

这套检测流程默认在你自己的本地终端运行,不需要把 Key 提交给工具。建议使用临时低额度 Key,测试完就删除或禁用。

能检测中转站有没有掺水或换模型吗?

可以提供风险信号,例如模型身份漂移、推理能力明显不符、Token 计费异常、流式结构异常、上下文截断等。但不要把单次结果当成绝对判决,建议多跑几次并和官方或其他中转站对比。

中转站检测和中转站测试有什么区别?

中转站测试通常只看 Base URL、API Key 和模型名能不能跑通。中转站检测更进一步,会看模型身份、Token 计费、上下文、流式响应、隐藏注入和工具兼容性。前者只能说明“能用”,后者才更接近“值不值得继续用”。

中转站验证能直接证明服务商掺水吗?

不能直接证明。中转站验证只能给出风险信号,比如模型身份漂移、疑似换模型、输出质量明显下降、后台扣费异常。真正可靠的判断需要多次复测,并和官方 API 或另一个可信中转站做对照。

怎么判断中转站用低价模型冒充 GPT 或 Claude?

重点看连续表现。标称 GPT 或 Claude 的模型,如果多次在基础推理题、长回答质量、身份描述、上下文长度和流式结构上明显弱于官方或可信 provider,就要警惕模型冒充或模型降配。

中转站掺水最常见的表现是什么?

常见表现包括:同一个模型名回答质量忽高忽低、模型身份来回漂移、返回 usage 和后台扣费对不上、上下文被截断、流式响应经常中断、热门模型调用失败但面板仍显示支持。