调用 API 时你选定了模型,但回复是否出自它,无从确认:路由服务可能偷偷换上便宜模型,攻击者可能直接篡改 token 流,光看输出质量判断不出来。Anthropic 刚发布的研究给出密码学解法:开源原型 FlashProve,用零知识证明(zkSNARK)把「这条回复确实出自承诺的那组权重」变成机器可验证的事实(研究原文)。
数字先看:快到什么程度
以下均为 Anthropic 官方口径。测试对象是 Llama 4 Maverick:400B 参数的 MoE 模型,每 token 约激活 17B,4-bit 量化(约 232 GB)。硬件只要单张 H100 加 24 核 CPU:证明速度约 110 token/秒,每个 1024-token 请求的证明文件约 19 MB;验证端不需要 GPU,24 线程 CPU 上 17 秒验完一条。代价是算力:约为 vLLM 直接推理的 70-95 倍。离线承诺一次约 39 分钟,可覆盖约 1600 万次请求。技术报告、协议规范、可执行代码与 Lean 证明以 Apache 2.0 一同发布(GitHub 仓库)。
为什么能做快
三个决策:其一,利用 MoE 结构,证明开销只与实际激活的 expert 成正比,即约 17B 而非 400B;其二,事后批量证明,整段文本生成完一次性并行证明,每批只开一次权重承诺;其三,单卡设计,权重分段流式读入,80GB GPU 加 290GB 主存即可。对照(其综述):zkLLM 在 2024 年证明 13B 模型约 2.5 token/秒;此前唯一证明过同款 Maverick 的 VerInf 约 0.02 token/秒,1000 token 要 14.3 小时,证明文件 93.6 GB。FlashProve 把同一模型做到 110 token/秒、19 MB、秒级验证;商业方案 Attestable 报过 31B 稠密模型 53-77 token/秒,但未开源。
不吹的部分:四条硬边界
一是证明对象是整数量化模型在贪心解码下的输出,浮点实现或采样解码可能偏离;二是只隐藏权重、不隐藏架构,且目前假定模型是 MoE 结构;三是上下文窗口只支持 1024 token,离聊天长上下文还远;四是快速 C++ 验证器没有形式化保证——Lean 证明的是协议层三条性质(完备性、可靠性、零知识),C++ 实现与被证协议的一致性要靠人工审计。另外,这套机制只能证明「硬件确实在跑承诺的那个模型」,不能排除它同时在旁边训练别的模型。
谁真正需要它
监管与审计是第一客户:pacing 类监管要求服务商证明算力真用于推理,监管者收集一段时期内的证明文件即可核验,零知识属性保证不泄露权重。第二是防篡改:推理服务器被攻破,或更强的模型冒充较弱的模型上线服务时,拿不出对应权重的证明就会露馅——Anthropic 的 Frontier Safety Roadmap 曾把 2026 年 9 月 30 日前做出可证推理原型列为公开目标。第三是溯源:第三方评测机构终于有了核对评测前后模型一致性的技术抓手。
这份发布最有意思的不是性能,而是分工:Anthropic 直言系统的优化由 Claude 完成,而 Claude 的优化决策难以评估,所以顶层安全声明全部用 Lean 写成机器可检的形式。AI 写代码、形式化方法当验收员,这个范式可能比 110 token/秒更值得记住。当模型输出可以附带一张「密码学发票」,偷换模型这门灰色生意,还能做多久?