内容提要
Anthropic发布开源研究原型FlashProve,利用zkSNARK零知识证明为模型推理生成密码学证明:服务商为权重生成承诺,用户可凭证明在笔记本上核验输出是否来自指定模型,无需公开权重。实验显示证明成本约为普通推理的70~95倍。该技术可识别模型掉包,但需可信方发布模型承诺,且无法解释提示词、解码参数等导致的“降智”。
延伸解读
验证模型身份的前提:可信的模型承诺
FlashProve 能证明输出与某个权重承诺对应,但用户必须先知道正品模型的承诺是什么。如果中转站提供的是它自己选择的模型 B 的证明,用户仍无法确认 B 就是购买的模型 A。因此,有效使用需要模型厂商或可信机构发布模型承诺,用户固定检查预期指纹,否则证明只能说明“某次计算发生过”,无法解决身份问题。
证明成本仍高,但已进入可想象阶段
实验显示,生成证明的 GPU 时间约为普通推理的 70~95 倍,单张 H100 吞吐约 110 tokens/秒,每个 1024-token 请求的证明约 19 MB。验证虽不需 GPU,但 24 线程 CPU 约需 17 秒。成本虽高,但相比过去已大幅降低,使这项技术开始具有实际应用想象空间,不过距离消费级普及仍有距离。
权重验证无法解释所有“降智”现象
即使权重身份确认,系统提示词、安全策略、上下文截断、检索内容、量化方式和解码参数等都可能影响体验。Kimi 团队曾发现部分跑分异常源于解码参数误用。因此,绑定权重的证明不能自动回答产品层面的所有问题,用户仍需关注这些因素是否被核验覆盖。
落地依赖生态协作,非单一技术突破
FlashProve 的实际接入需要上游模型厂商或权重运营方建立可信承诺并生成证明,中转平台再传递给用户。同时还需更低的证明成本、更长的上下文支持、覆盖真实推理配置以及可信的承诺发布机制。对厂商、评测机构和监管方也有潜在用途,但整体落地依赖多方协作,不会立刻终结所有质疑。
Q&A
FlashProve 是什么?它主要解决什么问题?
FlashProve 是 Anthropic 发布的开源研究原型,利用 zkSNARK 零知识证明为模型推理生成密码学证明。它主要解决用户无法确认第三方 API 或中转站是否真的使用了承诺模型的问题,让用户无需获取模型权重即可验证输出是否来自指定模型。
FlashProve 的验证流程是怎样的?
服务商首先为模型权重生成一个密码学承诺(类似指纹,不公开权重)。然后针对给定输入和输出生成证明。用户拿到模型承诺、提示词、回答和证明文件后,可在自己的电脑上检查:该权重处理此输入是否确实产生此输出。若模型被替换或输出被修改,证明将无法匹配原承诺。
使用 FlashProve 验证需要什么硬件?成本高吗?
验证不需要 GPU,在 24 线程 CPU 上约需 17 秒,单线程约 21 秒。但生成证明的成本较高:单张 H100 吞吐约 110 tokens/秒,每个 1,024-token 请求的证明约 19 MB,GPU 时间约为普通 vLLM 推理的 70~95 倍。模型权重的初始承诺生成一次约需 39 分钟。
FlashProve 能彻底解决“模型被掉包”的问题吗?
不能完全解决。它有一个关键前提:用户必须提前知道正品模型的承诺是什么。如果中转站提供有效证明但对应的是它自己选择的模型 B,用户仍无法确认模型 B 是否等于购买的模型 A。因此需要由模型厂商或可信机构发布模型承诺,用户固定检查预期指纹,才能真正确认身份。
为什么有了 FlashProve 还是无法解释模型“降智”?
因为模型权重未变不代表服务未变。系统提示词、安全策略、上下文截断、检索内容、量化方式和解码参数等都可能影响最终体验。FlashProve 只绑定权重,不能自动覆盖这些产品层面的因素,所以无法解释由它们导致的“降智”。
FlashProve 目前有哪些潜在应用场景?
潜在应用包括:帮助用户识别中转站是否替换模型;帮助模型厂商发现被入侵的推理服务器,确认权重是否授权;帮助评测机构和监管方确认测试模型与正式服务模型是否一致,或检查是否使用未经批准的模型。但所有这些应用还需要更低的证明成本、更长的上下文支持、覆盖真实推理配置以及可信的模型承诺发布机制。