LLM Fingerprint Verifier

LLM API 真伪检测器

您买的 API 真的在跑它声称的模型吗?本工具向端点发送一批"一词回答"探测问题,把答案分布做成行为指纹,再用 Jensen-Shannon 散度与可信参考对比——全程在您的浏览器里完成,API key 不会上传到任何服务器。

方法

每个大模型在「说一个 1 到 100 的随机数」这类问题上都有藏不住的偏好——GPT-4o 痴迷 42 和 37,Claude 偏爱 47,Llama 钟情 53。这些偏好来自训练数据的概率习惯,换名字、改系统提示词、量化压缩都抹不掉。

本工具复刻了 Bruckner《One Token Is Enough》(arXiv:2607.10252) 的验证协议:对端点发出多任务 × 多语言的单 Token 探测,将回答分布与官方参考指纹计算 Jensen-Shannon 散度,距离落在哪一档即是判定结论。

完整电池(16 题)的等错误率约 9.5%,标准档(8 题)约 10.6%。探测问题与日常对话无异,中转站无法识别与针对。

亮点

  • API key 只存在浏览器里,请求由浏览器直连您填写的端点——打开 DevTools 即可验证。
  • 实现已发表论文《One Token Is Enough》(arXiv:2607.10252) 的方法,参考数据来源公开可查。
  • 双模式:既能对照声称模型做真伪审计,也能给任意端点做一份可分享的 AI 随机性体检。

怎么用?

01

填入端点

API 地址、Key,再选它声称的模型。Key 只存在于浏览器内存,请求直达您的端点。

02

掷几百次骰子

标准档 8 题 × 25 次约 200 条请求,几分钟内完成;快速档 60 条一分钟出结果,严格档跑满 16 题把判错率压到约 9.5%。

03

对表判定

距离落在标尺哪一段,一眼可读;附逐单元距离明细与完整分布对比。

LLM API 指纹检测原理详解

什么是大模型行为指纹?

大模型说不出真正的随机数——同一道「说个 1 到 100 的随机数」,每个模型都有藏不住的偏爱值,比例稳定、彼此不同。把几十道这样的「一词回答」探测题的答案分布拼起来,就是一枚行为指纹,换名字、改提示词、量化压缩都抹不掉。

在 temperature 1.0 下,GPT 系痴迷 42 和 37,Claude 偏爱 47,Llama 钟情 53——偏好来自训练数据的概率习惯,对同一模型跨时间稳定、在模型之间差异显著。每条探测都是从语料池随机抽取的普通语义问题(随机数、颜色、字母、多语言提问),不带任何魔法字符串,不诚实的中转站难以靠关键词规则识别与拦截。

验证的代价:三档强度

粘贴地址和 key、选好声称的模型即可开跑;每一档的花费在按钮旁写得明明白白,消耗您自己的额度。

档位单元请求耗时判错率
快速4 × 1564~1 min偏高(粗筛)
标准默认8 × 25204~2 min~10.6%
严格16 × 25404~4 min~9.5%

在「端点真伪审计」下,参考基准默认使用内置指纹库(每条指纹标注采集日期与覆盖单元),也可以在高级选项里换成您信任的自定义端点——通常是官方 API 或 OpenRouter——在同一次运行中现场采集对照分布。运行中每个单元的答案实时流入,随时可取消;报告给出三档判定结论、带论文基线标尺的平均 Jensen-Shannon 散度、逐单元 JSD 与双分布对比,以及 token 用量、延迟、路由稳定性等客观技术细节。

判定基线:距离落在哪一档

两枚指纹逐单元计算 Jensen-Shannon 散度取平均。论文实测:同一模型与自身约 0.140,跨服务商部署约 0.227,不同模型之间约 0.463——三档阈值由此而来,集中存放并注明出处。

0.25一致与声称模型同源
0.250.35可疑建议提高强度复测,或换一个参考再测
> 0.35大概率不同指纹与声称模型的官方参考显著不符

每个探测单元(任务 × 语言)产生一个归一化的一词答案经验分布,两枚指纹逐单元计算 JSD(base 2,取值 0–1),端点距离取有效样本充足单元的平均值;阈值集中存放并注明出处,便于后续实测校准。内置参考指纹全部来自论文官方公开数据集(Zenodo,CC-BY-4.0,覆盖 167 个模型),采集时使用与本工具现场采样完全相同的固定极简 system prompt。

它是证据,不是证明

这是一个有已知错误率的统计方法;量化部署、静默更新、指纹过期都可能让分布合法漂移,思考型模型在无法禁用推理时会被标注为低置信度。

把它当作

复测与换参考的触发器 换渠道之前的统计证据 与其他信号并用的参考

不要当作

对服务商的公开指控 单次运行的定罪证明 替您做决定的判决书

服务商部署量化版本、静默更新模型、参考指纹过期,都可能让分布合法地漂移,所以任何一次判定都不应被单独解读为对服务商的指控。思考型模型的完整策略是:探测默认携带禁用推理的参数,端点不支持时退回 post-reasoning 通道(调大 token 预算)并把整份结果标注为低置信度;拿不准时提高强度复测、换一个参考再测,并结合价格、延迟等其他信号一起做决策。

为什么在浏览器里跑

验证别人是否可信的工具,不该反过来要您交出自己的 key。整条请求路径里没有 Tosea;端点不允许跨域时,工具会生成等价的 curl 命令让您在本地终端继续。

Tosea 服务器 —— 不在请求路径上,永远看不到您的 key、端点与结果; 检测核心已在 GitHub 开源,可逐行审计 →

key 只存页面内存,显式勾选「记住配置」才写 localStorage;探测请求由浏览器直连您填写的端点,Tosea 不架设代理、不采集统计遥测,方法、判定阈值与参考数据来源全部在本页公开,可与开源仓库逐行对照。

参考文献与数据
延伸阅读

常见问题

不会。key 只存在浏览器内存里(勾选"记住"才写入您自己的 localStorage),探测请求由您的浏览器直接发给您填写的端点。打开 DevTools 的 Network 面板即可亲自验证。

大模型回答"说个随机数"这类语义化一词问题时,答案服从稳定且模型各异的概率分布。工具在 temperature 1.0 下重复采样这些分布,再用 Jensen-Shannon 散度对比:同一模型跨渠道约 0.227,不同模型约 0.463(arXiv:2607.10252)。

标准档 8 个 cell × 25 次 ≈ 200 条请求,每条约 90 token——按 gpt-4o-mini 价位约 $0.005。开始前会显示精确预估,确认后才发请求。

不能。判定是统计学观察,不构成对任何服务商的指控。方法存在固有错误率(8 cells 约 10.6% EER),量化部署、模型静默更新、参考指纹过期都可能造成偏移。请把结果当作参考证据之一,重要决策前多次复测。

部分端点不允许浏览器跨域(CORS)直连——这本身不代表端点有问题,只是无法在网页里探测。工具会检测这种情况并生成等价的 curl 命令,您可以在本地终端继续探测。

采样前工具会先探测端点接受哪种 reasoning 禁用参数(OpenRouter 的 reasoning、智谱的 thinking 或 OpenAI 的 reasoning_effort 风格)。全部不支持时退回 post-reasoning 通道(调大 token 预算),并在结果中明确标注置信度降低。

隐私

检测在您的浏览器里完成:API Key 仅存在于浏览器内存,探测请求由浏览器直达您填写的端点,不经过 Tosea 的任何服务器,也不设统计埋点。代码开源可审计。 检测核心已在 GitHub 开源,可逐行审计 →

相关工具