簡介
傳統(tǒng)的計算系統(tǒng)是圍繞計算機程序中表達的指令的執(zhí)行來設(shè)計的。相反,語言模型可以遵循用自然語言表達的指令,或者從大量數(shù)據(jù)中的隱含模式中學(xué)習(xí)該做什么。為了在語言模型之上構(gòu)建安全可靠的應(yīng)用程序,重要的是可以使用用戶提供的規(guī)則來控制或約束AI模型行為。
展望未來,與人互動的人工智能助手也需要忠實和完整地遵循指令。為了確保人工智能助手反饋的道德行為,需要能夠可靠地實施法律法規(guī)或義務(wù)生物學(xué)約束等規(guī)則。此外,必須能夠驗證模型行為是否真正基于所提供的規(guī)則,而不是依賴于訓(xùn)練期間識別的虛假文本線索或分布先驗。如果不能依靠人工智能助手來遵循明確的規(guī)則,它們將很難安全地融入人類的社會。
人們可能認(rèn)為強加給人工智能模型行為的許多規(guī)則在概念上非常簡單,并且很容易用自然語言表達。一種方法是簡單地將規(guī)則包含在模型的文本提示中,并依賴于模型現(xiàn)有的指令遵循功能。另一種方法是使用第二個模型來對輸出遵循固定規(guī)則集的情況進行評分,然后對第一個模型進行微調(diào),使其以最大化該評分的方式表現(xiàn)。
在本文中,將專注于前一種方法,并研究LLM如何很好地遵循作為文本提示一部分提供的規(guī)則。為了應(yīng)對可用性和安全性方面的挑戰(zhàn),本文引入了規(guī)則遵循語言評估場景(RULES),如下圖,這是評估LLM助手中規(guī)則遵循行為的基準(zhǔn)。該基準(zhǔn)包含15個來自常見兒童游戲的文本場景以及計算機安全領(lǐng)域的想法。每個場景都用自然語言定義了一組規(guī)則,并定義了一個評估程序來檢查模型輸出是否符合規(guī)則。通過對本文的場景與最先進的模型進行廣泛實驗,確定了多種有效的攻擊策略,以誘導(dǎo)模型打破規(guī)則。
RULES補充了現(xiàn)有的安全性和對抗性穩(wěn)健性評估,這些評估主要側(cè)重于規(guī)避固定的通用規(guī)則。本文的工作重點是用自然語言表達的特定于應(yīng)用程序的規(guī)則,用戶可以隨時更改或更新這些規(guī)則。在與人類和自動化對手互動時,嚴(yán)格遵守本文的場景規(guī)則可能需要不同的方法來提高模型安全性,因為直接“編輯”特定有害行為的能力不足以修復(fù)本文工作中檢查的模型故障類別。
本文的工作團隊發(fā)布了代碼和測試用例,同時還發(fā)布了一個交互式演示,用于探索針對不同模型的場景。希望推動更多的研究來提高LLM的穩(wěn)健規(guī)則遵循能力,并打算將所提的基準(zhǔn)測試作為進一步開發(fā)的有用的開放測試平臺。
方案
RULES包含15個基于文本的場景,每個場景都要求輔助模型遵循一個或多個規(guī)則。這些場景的靈感來自于計算機系統(tǒng)和兒童游戲的理想安全特性。RULES的組成部分包括:
場景:由通用指令和規(guī)則組成的評估環(huán)境,用自然語言表示,以及可以通過編程檢測規(guī)則違規(guī)的相應(yīng)評估程序。指令和規(guī)則可以參考實體參數(shù)(例如密鑰),必須對其進行采樣,以生成用于用戶交互或評估的具體“場景實例”。
規(guī)則:單個指令,每個指令指定模型所需的行為。場景可能包含多個規(guī)則,這些規(guī)則要么是定義模型不能做什么的“負(fù)面”規(guī)則,要么是定義了模型必須做什么的“正面”規(guī)則,如下圖所示。
測試用例:特定場景實例的用戶消息序列。正如評估程序判斷的那樣,如果模型對序列中的每個用戶消息做出反應(yīng)而不違反規(guī)則,則稱該模型具有“傳遞”測試用例。
Correct Behavior
本文將場景可視化為決策樹圖,如上圖所示,其中正確的行為對應(yīng)于從根節(jié)點開始并遵守所有相關(guān)的內(nèi)部規(guī)則節(jié)點。規(guī)則指定的行為都是“無狀態(tài)”的,正確的行為只取決于模型響應(yīng)的最后一條用戶消息。
設(shè)計這些場景是為了讓一個小型計算機程序能夠評估模型的響應(yīng)是否符合規(guī)則。每個程序只有幾行代碼,不需要使用大型模型或人工標(biāo)記進行推理。本文依賴于字符串比較和簡單的正則表達式模式,這會導(dǎo)致對負(fù)面行為的更寬容的評估,對正面行為的更嚴(yán)格的評估。本文提出的的評估程序無法在邊緣情況下準(zhǔn)確再現(xiàn)人類的判斷,但在實踐中觀察到,模型中絕大多數(shù)違反規(guī)則的輸出都是明確的。
User Interface
為了設(shè)計場景和評估代碼,并為測試套件收集測試用例,本文構(gòu)建了幾種不同的用戶界面,用于通過具有各種模型的場景進行玩。這些范圍從用于調(diào)試和播放測試的簡單命令行界面到用于從作者及其同事眾包數(shù)據(jù)收集的 Web 應(yīng)用程序。我們發(fā)現(xiàn)通過這些界面與模型交互有助于了解模型實際響應(yīng)用戶輸入并修改我們的場景以更好地捕獲有趣但具有挑戰(zhàn)性的行為。用戶界面可能成為研究人工智能系統(tǒng)的研究工具包的重要組成部分。
模型評估
根據(jù)人工和機器生成的測試用例測試套件來評估各種專有和開放的LLM。每個測試用例都與特定的場景環(huán)境相關(guān)聯(lián),其中包括場景和隨機采樣的場景參數(shù)。使用以下三條條信息來初始化對話歷史。
指定場景說明的用戶消息,
占位符輔助消息“I understand and will comply with the rules.”,
測試用例的第一條用戶消息。
重復(fù)調(diào)用該模型,并將每個響應(yīng)和后續(xù)用戶消息附加到會話歷史中,直到測試用例中的所有用戶消息都用完為止。第一個占位符響應(yīng)之后的每個輔助響應(yīng)都用與場景相對應(yīng)的評估程序進行評估,如果在任何響應(yīng)之后,程序確定至少有一個規(guī)則被打破,認(rèn)為模型沒有通過測試用例。
模型細(xì)節(jié)
本文評估了各種流行的專有和公共模型,包括OpenAI的GPT-3.5、GPT3.5 Instruction和GPT-4、Anthropic的Claude Instant和Claude、谷歌的PaLM 2 Text Bison以及Vicuna v1.3(7B、13B、33B)、Llama 2 Chat(7B,13B、70B)和Mistral Instruction v0.1(7B)。OpenAI、Anthropic和Google模型可通過各自的API獲得多個版本如下表所示。
GPT-3.5 Instruction和PaLM 2 Text Bison是文本生成模型,而不是聊天模型,因此使用一個簡單的聊天模板來提示這兩個模型進行對話響應(yīng),如下表所示。
手動測試
根據(jù)場景的探索性期間記錄的對話,組裝了一個初始手動測試。過濾重復(fù)的對話并刪除輔助響應(yīng),從而產(chǎn)生870個測試用例。測試案例的數(shù)量從155個認(rèn)證案例到27個保密案例不等,涵蓋了廣泛的策略。大多數(shù)記錄的對話都針對負(fù)面規(guī)則,但沒有跟蹤用戶意圖,也沒有區(qū)分負(fù)面和正面測試案例。下表中顯示了手動測試的結(jié)果。所有模型都失敗了大量的測試用例,盡管GPT-4失敗的測試用例數(shù)量最少,其次是Claude Instant和Claude 2。
系統(tǒng)測試
每個策略的測試用例示例如上表所示。每個測試用例都包含一到三條用戶消息。“Just Ask”策略為每個規(guī)則定義了一個單一的基本測試用例,如果嚴(yán)格遵守,將導(dǎo)致模型違反目標(biāo)規(guī)則,從而測試模型拒絕最直接攻擊嘗試的能力。大多數(shù)積極的規(guī)則都要求模型根據(jù)特定的用戶輸入產(chǎn)生特定的輸出,因此對于這些規(guī)則,“Just Ask”測試用例由兩條用戶消息組成,首先要求模型打破規(guī)則,然后用正確的用戶輸入觸發(fā)破規(guī)行為。
如下圖所示,所有評估的LLM在大量測試用例中都失敗了。系統(tǒng)測試中負(fù)規(guī)則的性能與手動測試的性能密切相關(guān)。模型的夫,負(fù)面測試失敗率通常低于正面測試,除Vicuna 33B外的所有開放模型幾乎所有陽性測試都失敗。結(jié)果表明,引導(dǎo)模型偏離正確的行為比強迫這些模型做出特定的不正確行為要容易得多,尤其是對于開放模型。
在所有評估的模型中,GPT-4在系統(tǒng)測試中失敗的測試用例最少。令人驚訝的是,Claude Instant的表現(xiàn)略好于表面上能力更強的Claude 2。有的LLM不能可靠地遵循規(guī)則;盡管它們可以抵制一些嘗試,但仍有很大的改進空間。
方差與不確定性
本文的結(jié)果中有幾個方差和不確定性的來源。首先,即使temperature設(shè)置為0,OpenAI和Anthropic API的輸出也是不確定的。這導(dǎo)致了測試用例結(jié)果的一些差異,在下表中使用系統(tǒng)測試的子集進行了估計。
連續(xù)10次運行相同的評估,并在每個評估的測試用例子集的39個測試用例中,測量1.1個或更少的失敗測試用例數(shù)量的標(biāo)準(zhǔn)差。PaLM 2 API在輸出或測試用例結(jié)果方面沒有任何變化,在本地評估時也沒有任何公共模型。
錯誤檢測
如果模型無法可靠地遵循規(guī)則,它們可能會至少能夠可靠地檢測到助手響應(yīng)何時違反規(guī)則。為了回答這個問題,從系統(tǒng)測試上評估的模型的輸出以及地面實況傳遞/失敗評估標(biāo)簽中抽取 1098 對用戶消息和助手響應(yīng),以衡量模型檢測規(guī)則違規(guī)的能力作為零樣本二元分類任務(wù)。
如上表所示,大多數(shù)模型都可以比偶然做得更好,但不能可靠地檢測是否遵循了規(guī)則。將正數(shù)定義為助手響應(yīng)違反場景的一個或多個規(guī)則的實例,并測量通常定義的精度/召回率。目前還沒有模型“解決”這個任務(wù),GPT-4 達到了 82.1% 的準(zhǔn)確率和 F 分?jǐn)?shù) 84.0,其他模型下降得很短。需要一個簡潔的“pass”或“fail”答案,它將 Llama 2 等冗長模型置于劣勢,因為這些模型偶爾會用額外的文本預(yù)先查看他們的答案。
對抗性檢測
本文還評估了Greedy Coordinate Gradient (GCG),這是一種最近提出的算法,用于查找導(dǎo)致模型產(chǎn)生特定目標(biāo)字符串的后綴,與本文場景中的開放7B模型(Vicuna v1.3、Llama 2 Chat和Mistral v0.1)進行比較。GCG是一種迭代優(yōu)化算法,它在每個時間步長更新單個token,以最大限度地提高目標(biāo)語言模型下目標(biāo)字符串的可能性。
結(jié)果如上表所示,GCG可以增加所有三個評估模型的失敗測試用例數(shù)量。Mistral特別容易被影響,幾乎所有的正面和負(fù)面測試都失敗了,而Llama 2仍然通過了一些負(fù)面測試。針對Llama 2 7B優(yōu)化的后綴在針對其他模型使用時,不會導(dǎo)致失敗測試用例的數(shù)量顯著增加。
結(jié)論
本文的實驗表明,目前的模型在很大程度上不足以遵循簡單規(guī)則。盡管在指定和控制LLM的行為方面做出了重大努力,但在人類能夠指望模型可靠地抵御各種人類或機器生成的攻擊之前,研究界還有更多的工作要做。
同時,本文的工作團隊樂觀地認(rèn)為,盡管過去十年在圖像分類模型中對難以察覺的擾動的對抗性魯棒性方面的進展慢于預(yù)期,但在這一領(lǐng)域仍有可能取得有意義的進展。打破規(guī)則需要一個模型采取有針對性的生成行動,而打破規(guī)則的目標(biāo)可以在模型的內(nèi)部表示中確定,這反過來又可以產(chǎn)生基于檢測和棄權(quán)的可行防御。
要想使AI虛擬助手在安全地整合到社會中,就需要研究并改進LLMs對于規(guī)則遵循的能力。
審核編輯:劉清
-
計算機
+關(guān)注
關(guān)注
19文章
7421瀏覽量
87718 -
人工智能
+關(guān)注
關(guān)注
1791文章
46859瀏覽量
237577 -
GPT
+關(guān)注
關(guān)注
0文章
351瀏覽量
15315 -
自然語言
+關(guān)注
關(guān)注
1文章
287瀏覽量
13332 -
OpenAI
+關(guān)注
關(guān)注
9文章
1043瀏覽量
6408
原文標(biāo)題:LLMs可以遵循簡單的規(guī)則嗎?
文章出處:【微信號:zenRRan,微信公眾號:深度學(xué)習(xí)自然語言處理】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論