JOVANA
Explore Library Glossary Getting Started Three Levels Fields How it works Mission
Join the mission
All guides

紅隊測試與對抗式評估

平均情況的分數錯過了最壞情況。紅隊測試問的是:當有人試圖弄壞模型時,它會如何失敗——越獄、提示注入、自動化攻擊搜尋,以及如何誠實地量測安全性。

紅隊測試對 LLM 的意義

基準量測典型行為;紅隊測試(red-teaming)量測對抗者下的最壞情況行為。它借自資安,意指在真實使用者——或攻擊者——找到之前,刻意探測模型以揭露有害、不安全或違反政策的輸出。其心態與第 2 篇相反:你不是在抽樣平均使用者,而是扮演最聰明、最有動機的惡意行為者,而一個可重現的失敗就是一項發現,不是雜訊。這是AI 安全(AI safety)評估的一根支柱。

兩種你不可混淆的威脅模型

越獄(jailbreak)鎖定模型自身的安全訓練:攻擊者是使用者,一個精心設計的提示——角色扮演(「你是 DAN」)、假設性框架、混淆,或一段冗長有說服力的開場白——哄騙模型越過護欄,產出它被訓練要拒絕的內容。提示注入(prompt injection)則不同且更陰險:攻擊者不是使用者,而是把惡意指令植入模型稍後會讀到之內容(網頁、電子郵件、被檢索的文件)的第三方,劫持 LLM 應用去遵循攻擊者而非開發者的命令。

提示注入利用工具型智能体自身的“推理—行动—观察”循环来攻击善意用户:检索到的网页或工具返回中的恶意文本会劫持下一步动作。

一个大语言模型智能体循环:推理、行动、观察;注入的指令在观察阶段进入。

人工紅隊測試

第一道防線是人類的創造力。一支紅隊——領域專家、資安研究者,且至關重要地,具備多元文化與語言背景的人——對照一份書面的危害分類法(如武器、自傷、隱私、詐欺、偏誤)探測模型。良好做法是結構化的:定義威脅模型與政策、記錄每個提示與逐字回應、把每次嘗試標為成功或失敗,並把已確認的攻擊轉成永久的迴歸測試,讓未來的模型無法悄悄地重新打開它們。

人工紅隊測試能找到最深刻、最有創意的失敗,但它慢、貴,且無法涵蓋攻擊的組合空間。它還帶有人力成本——審查者得閱讀令人不安的內容——這本身就是把廣度自動化、把人力保留給深度的一個理由。

自動化紅隊測試

自動化紅隊測試(automated red-teaming)讓演算法生成攻擊,藉此擴展搜尋。三大策略當道。最佳化式方法(如 GCG)把提示當成變數,用梯度找出能最大化有害補全機率的對抗後綴。模型式方法用一個攻擊者 LLM(常以 RL 自我訓練)來對目標發明並精煉越獄。搜尋式方法對已知攻擊做變異與重組,以目標的回應作為適應度訊號。其產出是一個比人類獨力所能撰寫更龐大、更多樣的攻擊集。

\underset{s\in\mathcal{V}^{k}}{\min}\;\; -\log p_{\theta}\!\left(y^{\star}\mid x\oplus s\right)

像 GCG 这样的基于优化的攻击会搜索一个由 k 个词元组成的对抗性后缀 s,使在请求 x 条件下目标肯定性回复 y⋆ 的损失最小化。

誠實地量測安全性

頭條數字是攻擊成功率(attack success rate, ASR):誘出被禁止行為的對抗嘗試比例,理想上由分類器或 LLM 評審評分,並由人類抽查。但單看 ASR 是個陷阱。你必須對照具名的攻擊集報告它(不說明是哪些攻擊,ASR 毫無意義)、留意對「良性但敏感」提示的過度拒答(over-refusal)率(一個對什麼都拒答的模型 ASR 為 0 卻毫無用處),並按危害類別分層。正確的總結是一條前緣,而非一個點:安全對有用之間的取捨,正是 憲法式 AI(Constitutional AI)與拒答訓練試圖向外推、以及越獄穩健性(jailbreak robustness)研究意圖量測的同一個取捨。

\mathrm{ASR}=\frac{1}{N}\sum_{i=1}^{N}\mathbb{1}\!\left[\,J\!\left(x_i,\,M(x_i)\right)=\text{harmful}\,\right]

攻击成功率:在 N 次对抗尝试中,模型回复 M(xᵢ) 被评判器 J 判定为触发了禁止行为的比例。