Anthropicは、FlashProveというオープンソースの研究プロトタイプを公開した。これは証明可能推論に特化したものである。zkSNARK(主張の詳細を明かさずにその真実性を証明できる暗号技術)に基づくこのシステムは、回答が固定されたモデルから生成されたことを、その重みに関する情報を一切開示することなく証明することを可能にする。
この問題は、まず開発者に関わる。現在、ユーザーがモデルに問い合わせても、実際にどのモデルが回答を生成したかを検証することはできない。ルーティングサービスが要求されたモデルをより安価なモデルに置き換えたり、攻撃者がトークン(モデルが処理するテキストの単位)の流れを改ざんしたりする可能性がある。回答の品質を判断するだけでは、このような置き換えを検出するには不十分だと、情報源は述べている。
仕組みと性能
FlashProveは、証明者(モデル提供者)と検証者(ユーザー)という2者の関係を前提とする。システムは2段階で動作する。オフラインでは、提供者がコミットメント(特定の重みの集合に結びついた短い指紋)を公開する。このステップには約39分かかり、約1600万件のクエリをカバーする。オンラインでは、GPUが各クエリに対して、コミットされたモデルが確かにこれらのトークンを生成したことの証明を生成する。
Anthropicは、この仕組みが耐量子計算機暗号の安全性を提供すると主張し、Starknetなどのレイヤー2ネットワークで使用されている有効性証明と同じ系統に属すると説明している。リポジトリのパフォーマンスガイドによれば、Anthropicはこのシステムを、公開されているLlama 4 Maverickの重み(4000億パラメータの混合専門家モデルで、各トークンに対してパラメータの一部のみを活性化するアーキテクチャ)を用いて、4ビット精度、単一のNvidia H100 GPU上で測定した。
24件のクエリのバッチ処理では、公称スループットは秒間111.23トークンである。単一クエリでは秒間17.41トークンに留まる。証明のサイズは18.78MBで、その検証には24スレッドで17秒かかる。vLLM(8台のH100上でFP8精度でMaverickを実行する推論システム)と比較すると、証明の生成にはバッチ処理あたり約72倍のGPU時間がかかり、vLLMでテストされた最大スループットと比較すると約94倍のコストとなる。
セキュリティと制限
暗号コードは脆弱であるため、AnthropicはプロトコルをLean言語で形式化し、その完全性、健全性、ゼロ知識性を証明したと述べている。READMEによれば、不正を行う提供者は、約q/2^124 + 2^-101の確率を除いて検出されるという。FlashProveには2つの検証器が含まれる:日常使用を目的とした高速なC++検証器(ただし形式的保証はない)と、より低速なLean検証器(Anthropicによれば、その受理条件は有効性定理が認めるものに限定される)。
このシステムには制約もある。現時点では、1リクエストあたり1024トークンまで、貪欲デコード、および混合専門家モデルに限定されている。また、Anthropicは自社チームがClaudeを使用してシステムを最適化したと述べている。コードはApache 2.0ライセンスの下、FlashProveのGitHubリポジトリで公開されている。
