内容提要
Anthropic的Frontier Red Team发布开源系统FlashProve,利用zkSNARKs密码学证明验证AI响应来自特定模型权重而不暴露权重,可帮助开发者核查第三方AI服务是否被偷换模型。测试基于Llama 4 Maverick,单张H100上约每秒处理110个提示词,证明约18.78MB、验证约21秒,但生成证明的GPU开销是常规推理的70至95倍,且仅支持1024 token上下文,尚属研究原型,未接入Claude API。
延伸解读
验证模型来源的密码学方案
FlashProve 利用 zkSNARKs 证明响应来自特定模型权重,而不暴露权重本身。这为开发者提供了一种技术手段,用以核查第三方 AI 服务是否被偷换模型或响应遭篡改。但证明的有效性依赖于权重承诺来自可信源,否则证明意义有限。
性能与开销的权衡
在单张 H100 上,FlashProve 每秒处理约 110 个提示词,每个证明约 18.78MB,验证约需 21 秒。然而生成证明的 GPU 开销是常规推理的 70 至 95 倍,且需在请求完成后批量生成,难以满足即时验证需求。对关注推理成本的开发者而言,日常 API 流量中引入此方案并不现实。
原型阶段的局限
FlashProve 目前仅支持 1024 token 上下文,使用整数推理和贪婪解码,而生产模型通常依赖浮点计算和采样。此外,C++ 验证器和 GPU 证明器未经形式化验证,仅 Lean 版本具备数学保证。该系统尚未接入 Claude API,且 GitHub 发布被描述为不维护、不接受贡献的研究产物。
Q&A
FlashProve 是什么?它主要解决什么问题?
FlashProve 是 Anthropic Frontier Red Team 发布的开源密码学系统,利用 zkSNARKs 证明某个 AI 响应来自特定的模型权重,而不暴露权重本身。它旨在帮助开发者验证第三方 AI 服务是否偷换了模型,或检测推理系统是否被干扰。
FlashProve 的验证性能如何?比如生成证明和验证证明各需要多少资源?
在单张 Nvidia H100 GPU 上,FlashProve 处理提示词的速度约为每秒 110 个 token。每个证明约 18.78 MB,在单 CPU 线程上验证约需 21 秒。但生成证明的 GPU 开销是常规推理(使用 vLLM)的 70 至 95 倍。
FlashProve 目前有哪些局限性?
FlashProve 仍是研究原型,仅支持 1024 token 的上下文,使用整数推理和贪婪解码,而生产模型通常用浮点计算和采样。生成证明的 GPU 开销极高,不适合常规 API 流量。此外,C++ 验证器和 GPU 证明器未经过形式化验证,且未接入 Claude API。
FlashProve 与之前的系统(如 VerInf)相比有什么改进?
FlashProve 大幅提升了效率:此前 VerInf 生成覆盖 1000 token 的证明需要 14.3 小时,证明大小 93.6 GB,验证几乎需要一天;而 FlashProve 将证明大小缩减到约 19 MB,验证时间缩短到几秒,生成速度也显著加快。
FlashProve 使用了哪些技术来保证安全性?
FlashProve 使用 zkSNARKs 来验证响应来自特定权重而不泄露权重。团队还使用 Lean 定理证明器形式化验证了协议的安全属性,包括接受有效证明、以压倒性概率拒绝伪造证明,以及不泄露模型权重。它包含两个验证器:快速的 C++ 实现和经过形式化验证的 Lean 版本。
FlashProve 是否已经集成到 Claude API 中?开发者现在可以使用吗?
FlashProve 尚未集成到 Claude API,也没有迹象表明何时或是否会集成。它已在 GitHub 上开源,但属于研究工件,不维护也不接受贡献,开发者可以下载代码自行测试。