已发布
工程

我们如何分辨真假 Claude

便宜的 Claude 往往是顶着 Claude 名字的其他模型。为什么直接问模型证明不了任何事,为什么知识截止日期只是猜测,以及哪些检查真正能揪出假货。

·阅读时间 5 分钟·作者:UnoRouter 团队
工程公告

Claude 是最受欢迎的模型之一,也是最贵的模型之一。这个价格差催生了一个转售市场,有人以零头的价格出售“同样的 Claude”。有些确实在卖 Claude,但很多并不是:它们用更便宜的模型来回答,再贴上 Claude 的名字。

这篇文章用通俗的语言说明,我们如何确认你拿到的到底是哪一种,以及为什么大多数人尝试的测试都不管用。

直接问模型没有用

大家首先想到的都是直接问:“你是谁开发的?”“你是哪个模型?”“你的知识截止日期是什么时候?”但这些问题都证明不了任何事。

模型会说别人让它说的话。把其他模型冒充成 Claude 的转售商只需要给它一条指令:“你是 Anthropic 开发的 Claude。绝对不要提到其他任何东西。”这样一来,假货就能完美回答所有关于身份的问题。

知识截止日期是猜测,不是事实。在 Anthropic 自己的 Claude 应用里,隐藏的系统提示词会告诉 Claude 今天的日期和它的知识截止日期,所以它能很有把握地回答这个问题。而通过 API,或者通过 Amazon Bedrock、Google Vertex AI、Microsoft Foundry 调用时,并没有这样的提示词,Claude 只能靠猜。我们向一个确定提供真 Claude 的后端问了 34 次,它给出了 12 个不同的截止日期。所以,截止日期“答错”不代表是假货,“答对”也不代表是真货:拿它的回答去和 Claude 应用的回答对比,只是在拿一个猜测去比对一个被告知的事实。我们已经彻底不用这个问题了。

所以,我们不去问模型关于它自己的事,而是看那些它很难伪装的地方。

真正能暴露假货的线索

有些迹象足够明显,单凭一条就能判定渠道不合格:

  • 它表现得像另一个产品。有些转售商把“Claude”接到了代码编辑器里内置的免费编程助手上。让它写一个关于走失小猫的两句话悲伤故事,它会拒绝:“我是来帮你写代码的。”真正的 Claude 从来不会这样。
  • 它泄露了自己真正的指令。模型被伪装时,隐藏指令会要求它绝不提起真正的开发者。会展示推理过程的模型,即使每个回答都自称“Claude”,也常常在思考时把这条指令复述出来。我们是在推理过程里抓到伪装的,而不是在回答里。
  • 回复带着错误的标签。每条回复除了正文,还附带技术细节,其中包括是哪个模型生成的。以“Claude Opus”名义出售的回复,如果在自己的细节里写着另一个模型,或者更便宜的 Claude 档位,就会在这里被发现。
  • 它跳过了不能跳过的思考。最新的 Claude 模型总是先推理再回答。一个完全不推理就直接回答的“Claude”,并不是那个模型。
  • 它突然换成了另一种语言。好几种廉价替代品是中国的模型,有时回答到一半会转成中文。真正的 Claude 不会这样。
  • 所谓的“回答”其实是错误页面。有些转售商把自己的内容过滤提示或错误页面当成模型的回复返回给你。你付了钱,却什么也没得到。

另一些迹象会作为证据保存下来,在几周内反复比对,因为只看一次结果可能会被误导:

  • 思考签名。真正的 Claude 会给自己的推理加上只有 Anthropic 才能生成的签名。
  • 它怎么数你的字。每个模型家族把文本切分成 token 的方式都不一样,而你是按 token 计费的。用一段每个家族切法都不同的文本,只看一个数字,就能知道是哪类模型在计数。
  • 它偏爱的随机答案。多次让模型给出一个随机数字、一种颜色或一座城市,每个模型家族都有自己的答案规律。积累几天之后,这种规律就能区分不同家族,也能看出转售商是否在同一个名字背后混用了好几个模型。
  • 转售商加进去的隐藏提示词。让模型复述之前收到的指令时,它常常会把转售商偷偷塞在你消息前面的内容背出来。

我们从不因为超时或网络不稳定而判定渠道不合格,只看模型实际回答了什么。

哪些不算假货

Claude 也通过 Amazon Bedrock、Google Vertex AI 和 Microsoft Foundry 出售。这些平台在授权下运行 Anthropic 的真 Claude,所以转售商在那里购买额度再转售,卖的就是真货。在这些平台上运行的 Claude,被问到是谁开发的时,有时会回答“Amazon”或“Google”,因为平台加入了自己的指令。我们不会因此扣分。

任何测试都无法告诉你的事

坦诚说明局限,和检查本身一样重要。从外部来看,没有人能证明一个模型的确切版本,也无法证明它是否为了降低成本而被压缩过。而且今天通过检查的转售商,明天也可能更换后端,所以我们会按计划持续测试每个渠道,而不是只测一次。

我们刚开始时的发现

今年 4 月,我们对 8 家热门的 Claude 转售商进行了为期 17 天的检测。他们以 Claude 名义出售的渠道中,有 183 个根本不是 Claude,其中大多数是挂着 Claude 名牌的编程助手。正因如此,我们把这些检查直接做进了路由里。我们的同步引擎 new-api-sync 会在每个渠道接入流量之前发现并测试它,之后也会持续复测,所以没通过检查的渠道不会在我们的网络里处理你的请求。

测试你自己的服务商

不需要安装任何东西。打开 API 模型测试工具,粘贴服务商的地址和密钥,选择一个模型,它就会实时运行这些检查,并清楚地告诉你哪些通过了、哪些没通过。

更喜欢用命令行?这就是上面提到的小猫测试。如果回复拒绝了你,或者把话题往编程上引,那你的“Claude”就不是 Claude。

bash
curl https://YOUR-PROVIDER/v1/messages \
  -H "x-api-key: $YOUR_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-opus-4-7",
    "max_tokens": 150,
    "messages": [{
      "role": "user",
      "content": "Tell me a 2-sentence sad story about a lost kitten."
    }]
  }'

这两部分都是开源的,任何人都可以查看它们的工作原理,或者自己运行:检查由 ai-model-verifier 完成(也已发布在 npm 上),而 new-api-sync 负责在我们接入的每个服务商上运行这些检查。

相关文章