建構大型語言模型應用與前沿
正式環境的防護欄(guardrails in production)
只要推一把得當,LLM 就會生出離題、不安全或格式壞掉的東西。防護欄(guardrails)就是包在每次模型呼叫外圍的執行期查核,趕在這些情況到達使用者之前攔下它們——像山路邊的護欄。它們分布在輸入端,也就是我們讓什麼到得了模型,以及輸出端,也就是我們讓什麼離得開模型,把一個「大致守規矩」的模型,變成一個「安全地守規矩」的功能。
輸入防護欄會篩查提示注入、離題或不被允許的請求,以及不該送出的個資。輸出防護欄則驗證結構——JSON 能解析、符合綱要嗎?——檢查有毒、偏離品牌或違反政策的內容、拿檢索來源核對主張,並能擋下或重新生成一個未通過的回應。這些查核由便宜的分類器、規則與正規表示式、綱要驗證器,有時還有一個充當批評者的第二個模型組成。當某項查核失敗,系統會重試、退回一個安全的罐頭答案,或升級交給真人。
防護欄之所以不可或缺,正因為核心模型是機率性的、也可能被操弄;但它是一層防禦,而非保證——分類器會漏看,巧妙的攻擊也會溜過去。它們同時帶來延遲與成本,所以團隊會在「查多少」和「某個功能承擔多少風險」之間權衡。目標是縱深防禦:假設模型有時會出格,並把周邊系統設計成能把它框住。
又称
另见