怎么检测你的 LLM API 是不是真模型?
第三方 LLM API 服务质量参差不齐:有的悄悄把你付费的模型换成便宜货,有的提供量化或截断上下文的阉割版,有的收完预充值一夜消失。本页是一套可复现的检测清单,对任何服务商都适用——也欢迎拿来测 Router One。我们公开每请求的调用明细,就是为了让你测得到。
先认识五类常见问题
对第三方 API 的抱怨,绝大多数能归到这五类。日常闲聊很难暴露它们,生产负载一定会。
模型掉包(挂羊头卖狗肉)
标价是旗舰模型,请求实际被路由到便宜模型。这是最难肉眼发现的一类——小模型回答日常问题也像模像样,差距在复杂推理、长上下文召回和工具调用的准确率上才显形。
静默降智
模型系列没错,但被量化、蒸馏,或上下文窗口被悄悄截断。短提示看不出问题,长文档任务显著变差。
假流式
服务端先生成完整回复,再切块假装流式吐出。首字延迟(TTFT)接近总生成时长,一测便知。
参数不透传
temperature、JSON mode、stop、工具定义在中间层被忽略或剥掉。聊天演示看不出来,结构化输出的生产管线直接崩。
跑路
运营方一夜关站,预充值余额清零。这是商业模式风险而非技术风险——见下方自查表。
弱信号:别只问模型「你是谁」
自报身份是最不可靠的检测。中间层可以注入系统提示让任何模型自称任何身份,而且模型本来就经常报错自己的版本号。以下只能当辅助性弱信号:
- 知识截止日期探测:问接近所称模型训练截止日期附近的事件,与官方模型的表现对照。
- 拒答风格与排版习惯:各模型系列有可辨认的默认语气,但都可以被提示词改写。
- 分词器怪癖:对生僻 Unicode、超长重复串的处理在不同系列间有差异——有提示性,永远不是结论。
强信号:API 行为指纹
负载下的行为比身份难伪造得多。四个测试能抓住绝大多数掉包和降智:
上下文窗口探针(针捞测试)
在接近标称上下文上限的输入开头埋一个标记信息,再让模型复述。静默截断的服务会自信地给出答案但捞不到针——它不报错,而「不报错」正是破绽。
工具调用保真度
发送带多个工具和严格 JSON schema 的请求。掉包或重度量化的模型在参数格式错误率、选错工具的频率上和真模型有肉眼可见的差距。
流式粒度与首字延迟
真流式按 token 级到达、首字很快;缓冲式假流式则是长时间等待后大块到达。多跑几次,把两个指标都记下来。
长指令遵循
写一条含 8-10 个显式约束(格式、禁用词、顺序)的系统提示,旗舰模型和替身模型会迅速拉开差距,且结果可复现。
对照测试:同一提示打两个端点
最有说服力的方法不需要信任任何人:把完全相同的请求分别打到官方 API 和被测服务,对比长上下文召回、工具调用与约束遵循的差异。几美元的额度就够。
PROMPT='<你的长上下文针捞测试>'
# 对照组:官方端点
curl https://api.openai.com/v1/chat/completions \
-H "Authorization: Bearer $OFFICIAL_KEY" \
-d "{\"model\": \"gpt-5.5\", \"messages\": [{\"role\": \"user\", \"content\": \"$PROMPT\"}]}"
# 被测组:待检测服务(OpenAI 兼容)
curl https://api.router.one/v1/chat/completions \
-H "Authorization: Bearer $ROUTER_ONE_KEY" \
-d "{\"model\": \"openai/gpt-5.5\", \"messages\": [{\"role\": \"user\", \"content\": \"$PROMPT\"}]}"
# 对比项:针捞召回、拒答风格、工具调用格式、
# 流式粒度、首字延迟。非技术信号:跑路风险自查表
技术测试抓掉包,这张表抓「下个季度还在不在」。单条不构成证据,凑齐三条以上就是模式。
| 风险信号 | 为什么危险 | 怎么核实 |
|---|---|---|
| 价格远低于任何合理的合法成本,还宣称不限量 | 按量计费的合法供给有硬成本下限。长期远低于下限的定价,通常依赖共享账号池或逆向接口——掉包、封号、关站是它们的标配结局 | 跑一遍上面的行为指纹测试,并想清楚补贴到底从哪来 |
| 只推大额预充值优惠,没有退款政策 | 商业模式靠沉淀资金,甩手走人的成本很低 | 先用最小额度充值试用,先看清出金与退款条款 |
| 没有状态页、没有 SLA、查不到经营主体 | 出了问题没有任何追责渠道 | 查公开状态页、服务条款、退款政策 |
| 没有逐请求的用量明细 | 你无法核对实际计费的是哪个模型 | 要求请求级日志:模型、tokens、费用、延迟、状态 |
| 售后只在群里 | 群聊里的承诺不可审计,群没了承诺也没了 | 看有没有正式文档和可查历史的工单渠道 |
拿这套清单来测 Router One
我们的做法是把可验证性做进产品,而不是请你信任我们。经过 Router One 的每个请求都有逐请求明细——实际服务的模型、tokens、费用、延迟、状态——在控制台日志里可查,上面的对照测试可以和我们向你收费的记录互相核对。你请求哪个模型,服务的就是哪个模型。
- 模型目录与每 token 牌价公开在 /models——没有打包价、没有不透明定价。
- 不留存 prompt 与 completion 正文,只记录计费与路由所需的请求元数据。
- 公开状态页与 SLA,写明 fallback 行为与可用性承诺。
- 几美元余额就够把本页所有测试对 api.router.one 跑一遍。
常见问题
- 我问模型「你是谁」,它说自己是 GPT/Claude,这能信吗?
- 不能。中间层可以注入系统提示让任何模型自称任何身份,而且即使是未经修改的模型也经常报错自己的版本。请用行为指纹——上下文探针、工具调用保真度、流式时序——代替自报身份。
- 为什么有的服务能卖到远低于官方价还「不限量」?
- 按量计费的合法供给存在成本下限。长期远低于下限、还不设用量上限的定价,一般依赖不可持续的来源,比如共享消费级账号池或逆向的私有接口。这类供给的失败方式很有特征:模型掉包、静默降智、突然封禁、卷款关站。
- 检测上下文截断最快的单个测试是什么?
- 针捞测试:在接近标称上下文上限的输入开头埋一个标记信息,然后让模型复述。截断的服务会自信作答但丢失开头内容——它不报错,而这正是截断能藏住的原因。
- Router One 怎么证明自己没掉包、没降智?
- 逐请求明细展示每次调用实际服务的模型、tokens、费用、延迟与状态,可以和你自己的对照测试互相核对;牌价按模型公开,目录公开。我们把审计链路做出来,就是为了不需要你「信」我们。
- 把整套清单跑完要花多少钱?
- 几美元。本页所有测试用最小额度就能完成——最贵的是长上下文探针,多数模型单次也远低于一美元。