FlashProve 能抓到偷換模型的中轉站嗎?Anthropic 開源零知識證明原型,看完文件後的答案
Anthropic 開源的 FlashProve 能用零知識證明驗證回答是否出自特定模型。看完它的文件後,整理它能做到什麼、目前的限制,以及為什麼它還抓不到偷換 Claude、GPT 的中轉站。
這兩天有一則貼文在中文開發者圈流傳:「Anthropic 開始對注水中轉站下手了,他們開源了零知識證明原型 FlashProve,普通 CPU 不到 2 秒就能驗出 AI 廠商有沒有偷換縮水模型。」
FlashProve 確實放在 Anthropic 的 GitHub 組織底下,而且技術上很有意思。但看完它自己的文件後,結論是:它目前抓不到偷換 Claude、GPT 的中轉站。 這篇整理它是什麼、做得到什麼、做不到什麼,以及現在想檢查中轉站可以怎麼做。
本文依據 FlashProve 的 README 與 docs、guide 目錄下的文件整理,我們沒有在自己的 H100 上重跑。數字以專案頁面為準。
它在做什麼:讓模型的回答附上「防偽證書」
FlashProve 是一個**零知識證明(ZK proof)**的研究原型,流程分三步:
- Commit(承諾):服務商先公開一個綁定特定模型權重的承諾 ID,等於登記「我用的就是這個模型」。
- Prove(證明):服務商用 GPU,為每個回答產生一份證明。
- Verify(驗證):任何人都能用一般 CPU 驗證這份證明,過程中看不到模型權重。
驗證通過,代表這段回答確實是由那個被承諾的模型算出來的,換掉模型就驗不過。這件事的意義在於:過去很多人認為,替這種規模的大模型推論產生證明太慢、太貴,FlashProve 示範了它做得到,而且安全性的推導用 Lean 4 做了形式化證明。
但它現在有幾個很大的限制
以下都是專案文件自己寫的:
| 項目 | 文件中的內容 |
|---|---|
| 專案狀態 | 研究原型,標示 Not maintained,不接受貢獻 |
| 支援的模型 | 只有 Llama 4 Maverick,上下文最長 1,024 tokens |
| 證明涵蓋的範圍 | 貪婪解碼(每一步取機率最高的 token)。有溫度的隨機取樣、文字與 tokenizer、浮點數版本的模型都不在證明範圍內 |
| 產生證明的速度 | 一張專用 H100,回答部分約每秒 39 個 token;預填(prefill)比一般 vLLM 慢約 70~90 倍 |
| 證明大小 | 每個回答約 18.8 MB |
| 驗證時間 | 完整大小的證明,一般 CPU 單執行緒約 21 秒、約 3.5 GB 記憶體(「2 秒」是很小的測試模型) |
| 部署需求 | 一張 H100 80 GB、約 330 GB 主機記憶體、245 GB 硬碟 |
另外文件特別提醒兩件事:
- 驗證通過,只代表回答出自「被承諾的那個模型」,不代表那就是你以為的模型。 承諾 ID 必須從可信的第三方取得,不能由被檢查的伺服器提供。
- 證明要由服務商自己產生。 願意配合的服務商才會附上證明。
為什麼它抓不到偷換模型的中轉站
把上面的限制放到中轉站的情境裡:
- 中轉站最常賣的是 Claude、GPT 這類閉源模型。 這類模型的權重只有原廠有,只有原廠能產生證明。原廠的 API 目前沒有在回應裡附上這種證明。
- 證明需要服務商主動配合。 真的偷換模型的中轉站,不會主動附上一份會讓自己露餡的證明。
- 目前只支援一個開源模型,速度與成本也還不適合正式服務。
所以比較準確的說法是:這是「模型回答可以附上防偽證明」的技術示範,離真正用來檢查中轉站還有很長一段路。如果有一天原廠在 API 回應中附上證明,中轉站只要原封不動轉給客戶,客戶就能自己驗證。那會是很好的發展,但現在還沒有。
現在想檢查中轉站,可以怎麼做
在服務商願意出示證明之前,檢查只能從外部做:對 API 送出檢測請求,比對回應的特徵,判斷背後的模型和宣稱的是否一致。
這就是 BazaarLink Probe 在做的事。它是免費的中轉站檢測工具,不需要服務商配合,貼上 API 位址和金鑰就能測:
- 預設執行 84 項標準檢測,可再加 2 項延伸檢測。
- 檢查是否偷換或降級模型、灌水 token、注入系統提示詞。
- 顯示模型身分判定與行為警示。
外部檢測和零知識證明是兩種互補的方法:前者現在就能用、不用對方配合;後者需要對方配合,但能給出數學上的保證。FlashProve 的文件也強調了同一個原則:判斷的依據必須來自可信的第三方,不能只信被檢查的那一方自己的說法。
小結
- FlashProve 是值得關注的研究:它證明了大模型推論可以附上零知識證明。
- 但它目前只支援 Llama 4 Maverick、需要服務商配合、速度和成本也還不適合正式服務,抓不到偷換 Claude、GPT 的中轉站。
- 現在要檢查你正在用的中轉站,可以先用 Probe 測一次。
FAQ
FlashProve 是什麼?
放在 Anthropic GitHub 組織下的開源研究原型,用零知識證明讓服務商為模型的每個回答產生證明,任何人都能用一般 CPU 驗證回答是否出自被承諾的模型,而且看不到模型權重。專案標示為不再維護。
FlashProve 能檢查中轉站有沒有偷換 Claude 或 GPT 嗎?
目前不能。它只支援 Llama 4 Maverick,而且證明必須由持有模型權重的服務商產生。Claude、GPT 的權重只有原廠有,原廠的 API 目前也沒有附上這種證明。
現在要怎麼檢查中轉站有沒有偷換模型?
可以從外部檢測,對 API 送出檢測請求並比對回應特徵。BazaarLink Probe 是免費的中轉站檢測工具,不需要服務商配合,預設執行 84 項標準檢測。