大型語言模型內部結構
為利用開發深入探索大型語言模型內部機制的技術,涵蓋激活分析、對齊繞過原語與嵌入空間利用。
大多數 AI 紅隊演練都在輸入—輸出層級進行:打造輸入、觀察輸出、反覆迭代。本節則更深入:探討大型語言模型的內部機制——隱藏狀態、注意力模式、安全神經元與嵌入幾何——並展示理解這些內部結構如何使黑箱測試無法達成的攻擊技術成為可能。
在內部結構層級工作需要存取模型權重,使得這些技術僅限於開源權重模型與自架部署。然而,從研究內部結構所得的洞見也能轉移到黑箱測試。在機制層面理解為何某些越獄有效,能協助您設計出對僅 API 模型更有效的攻擊。當您知道安全行為是透過特定的激活模式實作,而非模型語言理解的根本部分時,就能看見對齊的脆弱性,並據此規劃攻擊策略與防禦建議。
為何內部結構對安全重要
語言模型的安全性質並非架構保證——而是編碼於模型權重中的學習行為。安全訓練教導模型將某類請求與拒答行為關聯起來,但這些關聯的實作機制與模型用於所有其他語言任務的機制相同。這意味著安全性可以被選擇性停用、重導或壓制,而不需根本性改變模型的能力。
機制可解釋性研究已辨識出中介安全行為的特定元件。激活空間中的「拒答方向」控制模型是產生拒答或順從回應;安全神經元對有害請求觸發並啟動拒答電路;注意力模式決定模型在安全決策時優先考量提示詞的哪些部分。這些機制每一項都是潛在的操控目標。
對於具備模型存取的攻擊者,理解內部結構能實現數類從黑箱視角不可能的攻擊。激活引導可在不變更輸入提示詞的情況下壓制拒答行為;logit 操控可將符元生成偏向所欲輸出;分詞器分析可揭示能繞過輸入處理的編碼技巧;隱藏狀態萃取可洩漏模型計算出但選擇不納入輸出的資訊。
內部結構工具箱
這個領域的研究仰賴專門工具與技術。TransformerLens 為 GPT 風格模型的每個計算步驟提供以 hook 為基礎的存取。Baukit 以不同 API 提供類似能力。手動探針技術使用在隱藏狀態上訓練的線性分類器以偵測特定特徵。logit lens 技術逐層追蹤模型預測的演變,揭示安全介入在何處發生,以及如何可被繞過。
這些工具將模型從不透明函式轉變為透明系統,每一項計算皆可被檢視、測量、甚至操控。從黑箱轉為白箱測試的過程,正如同透過 UI 測試 web 應用程式、與擁有其原始碼、資料庫與執行時狀態存取的差別。
本節您將學到
- 給利用開發者的大型語言模型內部結構 ——激活分析、隱藏狀態萃取、激活引導、注意力模式分析、logit 操控、分詞器安全、上下文視窗內部結構,以及安全神經元辨識
- 對齊內部結構與繞過原語 ——對齊如何在激活層級實作、從梯度資訊產生對抗性後綴,以及選擇性停用安全行為的技術
- 嵌入空間利用 ——嵌入空間的幾何特性、連續空間中的對抗範例,以及利用共享嵌入表徵的跨模態攻擊
先備知識
本節需要相當多的技術背景:
- 深入理解 transformer 架構,出自 Transformer 架構 ——注意力機制、殘差流、MLP 層
- 線性代數基礎 ——矩陣運算、向量空間、投影與特徵分解
- Python ML 工具 ——PyTorch、HuggingFace Transformers,熟悉張量運算
- 嵌入知識,出自 嵌入向量與向量系統
- 開源權重模型存取 ——多數技術需要完整權重存取(LLaMA、Mistral、Pythia 等)