大型語言模型(LLM)在現實世界中的應用因ChatGPT的發佈而加速。OpenAI等團隊通過RLHF等對齊過程為模型內置了安全行為,但對抗性攻擊或越獄提示仍可能觸發不良輸出。本文是Lilian Weng於2023年10月發表的綜述,系統探討了LLM的對抗性攻擊。
對抗性攻擊的研究早期集中於圖像領域,但文本的離散性使得攻擊更具挑戰性。攻擊分為黑盒(僅能訪問API)和白盒(完全訪問模型參數)。攻擊目標包括分類任務(使模型誤分類)和生成任務(輸不安全內容)。綜述假設攻擊僅發生在推理時,模型權重固定。
攻擊類型包括標記操作、梯度基攻擊、越獄提示、人類紅隊和模型紅隊。標記操作例如TextFooler和BERT-Attack,通過識別重要單詞並替換為同義詞或語義相似詞來欺騙模型,屬於黑盒攻擊。EDA則進行同義詞替換、隨機插入等數據增強。SEARs基於手工規則進行最小化標記修改。
梯度基攻擊依賴白盒設置中的梯度信號。GBDA使用Gumbel-Softmax近似使對抗損失可微,並加入流暢性和相似性約束。HotFlip通過一階泰勒展開選擇最優字符翻轉。Universal Adversarial Triggers (UAT) 尋找輸入無關的短觸發序列,可跨模型遷移。ARCA則通過隨機座標上升優化輸入輸出對以滿足特定行為模式。
越獄提示通過競爭目標(如讓模型始終遵循指令與安全目標衝突)和泛化不匹配(如使用Base64編碼或特殊字符)來繞過安全限制。Wei等人提出了多種組合策略,如前綴注入、拒絕抑制、風格注入等。
人類紅隊通過工具輔助提高攻擊效率。Wallace等人設計了對抗寫作界面,顯示單詞重要性。Ziegler等人開發了工具顯示顯著性分數並提供標記替換建議。BAD數據集和Anthropic的紅隊數據集收集了大量人機對話。
模型紅隊使用強化學習訓練專用的紅隊模型。Perez等人採用零樣本、小樣本、監督學習和RL方法生成攻擊。Casper等人提出探索-建立-利用流程,結合人類標籤訓練分類器,再用RL生成多樣化攻擊。FLIRT利用上下文學習循環生成攻擊。
緩解策略包括鞍點問題和魯棒性研究。總體而言,LLM的安全性面臨持續挑戰,需要不斷改進防禦機制。