php和織夢(mèng)那個(gè)做網(wǎng)站好網(wǎng)絡(luò)推廣營(yíng)銷策劃方案
引言
今天帶來(lái)論文Are Large Language Models All You Need for Task-Oriented Dialogue?的筆記。
主要評(píng)估了LLM在完成多輪對(duì)話任務(wù)以及同外部數(shù)據(jù)庫(kù)進(jìn)行交互的能力。在明確的信念狀態(tài)跟蹤方面,LLMs的表現(xiàn)不及專門的任務(wù)特定模型。然而,如果為它們提供了正確的槽值,它們可以通過生成的回復(fù)引導(dǎo)對(duì)話順利結(jié)束。
1. 總體介紹
本篇工作在任務(wù)導(dǎo)向?qū)υ?Task Oriented Dialouge,TOD)上評(píng)估LLM的性能。為此引入了基于LLM的TOD對(duì)話流水線(圖1)。使用狀態(tài)跟蹤和響應(yīng)生成作為兩個(gè)主要的步驟,隱含了對(duì)話策略的功能。在零樣本設(shè)定下,模型僅接收領(lǐng)域描述,在少樣本設(shè)定下,使用了一些檢索到的示例。在https://github.com/vojtsek/to-llm-bot上發(fā)布了實(shí)驗(yàn)代碼。
2. 相關(guān)工作
介紹了大語(yǔ)言模型和指令微調(diào)。 重點(diǎn)是下面兩個(gè):
基于語(yǔ)言模型的TOD建模 Zhang等人和Peng等人引入了基于預(yù)訓(xùn)練語(yǔ)言模型的任務(wù)導(dǎo)向?qū)υ捊?#xff0c;他們遵循了Lei等人提出的基于文本的狀態(tài)編碼和兩階段生成方法:首先使用語(yǔ)言模型解碼結(jié)構(gòu)化的信念狀態(tài),表示為文本。然后使用信念狀態(tài)檢索數(shù)據(jù)庫(kù)信息,并再次調(diào)用語(yǔ)言模型生成響應(yīng),該響應(yīng)以信念狀態(tài)和檢索到的信息為條件。其他人則提出了生成模型與檢索式方法的結(jié)合。這些方法都在領(lǐng)域內(nèi)的數(shù)據(jù)上進(jìn)行了微調(diào),和作者采用的純上下文學(xué)習(xí)方法形成了對(duì)比。
少樣本對(duì)話建模 是一種專注于從少量領(lǐng)域內(nèi)樣例中學(xué)習(xí)對(duì)話的神經(jīng)模型的方法之一,最早的這種方法是基于循環(huán)神經(jīng)網(wǎng)絡(luò)的可訓(xùn)練混合代碼網(wǎng)絡(luò),其中部分組件采用手工制作。較新的方法利用了預(yù)訓(xùn)練Transformer語(yǔ)言模型的能力。Hu等人使用了LLMs和上下文學(xué)習(xí)來(lái)進(jìn)行信念狀態(tài)跟蹤,將任務(wù)制定為SQL查詢生成。
3. 方法
圖2顯示了所提出的流程的總體描述。系統(tǒng)由預(yù)訓(xùn)練的LLM和(可選的)上下文存儲(chǔ)在向量數(shù)據(jù)庫(kù)中組成。在每個(gè)對(duì)話輪次中執(zhí)行三次LLM調(diào)用,使用特定的提示。首先,LLM執(zhí)行領(lǐng)域檢測(cè)和狀態(tài)跟蹤。更新后的信念狀態(tài)用于數(shù)據(jù)庫(kù)查詢,并將查詢結(jié)果用于后續(xù)基于LLM的響應(yīng)生成步驟。在少樣本設(shè)置中,上下文存儲(chǔ)用于存儲(chǔ)訓(xùn)練集中的有限數(shù)量的示例,這些示例根據(jù)與對(duì)話上下文的相似性進(jìn)行檢索,并包含在LLM提示中。
3.1 提示詞構(gòu)建
目標(biāo)是比較所選LLMs的原始能力,因此作者不關(guān)注提示工程技術(shù),并選擇在本工作中所有LLMs都使用的通用提示。為所有示例定義一個(gè)單一領(lǐng)域檢測(cè)提示,以及給定數(shù)據(jù)集中每個(gè)領(lǐng)域的一對(duì)提示:狀態(tài)跟蹤提示(見表1)和響應(yīng)提示。
Definition: 從關(guān)于酒店的對(duì)話中提取實(shí)體與值。
以冒號(hào)分隔的"實(shí)體:值"形式呈現(xiàn)。
不要在冒號(hào)之間加入空格。
使用連字符分隔不同的"實(shí)體:數(shù)值"對(duì)。
需要提取的數(shù)值有:
- "pricerange":酒店的價(jià)格[對(duì)話歷史]
顧客:"我想找一個(gè)便宜的住所。"
領(lǐng)域檢測(cè)提示包括任務(wù)描述和兩個(gè)靜態(tài)領(lǐng)域檢測(cè)示例。除了一般指令外,每個(gè)狀態(tài)跟蹤提示包含領(lǐng)域描述、相關(guān)槽位列表、對(duì)話歷史記錄和當(dāng)前用戶話語(yǔ)。響應(yīng)提示不包含每個(gè)領(lǐng)域的槽位列表,但是代替的它們包含當(dāng)前的信念狀態(tài)和數(shù)據(jù)庫(kù)結(jié)果。在少樣本設(shè)置中,每個(gè)跟蹤和響應(yīng)提示還包含從上下文存儲(chǔ)中檢索的正例和負(fù)例示例。提示示例詳見附錄的表5和表6。
3.2 領(lǐng)域檢測(cè)和狀態(tài)追蹤
在狀態(tài)跟蹤過程中,每輪對(duì)LM進(jìn)行兩次提示:首先,檢測(cè)當(dāng)前活動(dòng)(active,激活)的領(lǐng)域,然后輸出在當(dāng)前輪次中發(fā)生變化或出現(xiàn)的槽值。然后,使用這些輸出來(lái)更新累積的全局信念狀態(tài)。
使用兩個(gè)提示步驟是因?yàn)樾枰P驮诙鄠€(gè)領(lǐng)域的情況下進(jìn)行操作,即處理跨多個(gè)領(lǐng)域的對(duì)話。因此,需要能夠檢測(cè)當(dāng)前活動(dòng)的領(lǐng)域。通過首先使用一個(gè)領(lǐng)域檢測(cè)的提示來(lái)實(shí)現(xiàn)這一點(diǎn)。
一旦獲得了活動(dòng)領(lǐng)域的預(yù)測(cè),可以在處理信念狀態(tài)預(yù)測(cè)的第二個(gè)提示中包含手動(dòng)設(shè)計(jì)的領(lǐng)域描述。表1提供了一個(gè)用于狀態(tài)跟蹤的提示示例。對(duì)于少樣本變體,從上下文存儲(chǔ)中檢索與活動(dòng)領(lǐng)域相關(guān)的少樣本示例。
初步實(shí)驗(yàn)表明,LLMs很難在每個(gè)輪次中始終輸出所有活動(dòng)的槽值。因此,只建模狀態(tài)更新,采用MinTL方法。在這種方法中,模型只生成在當(dāng)前輪次中發(fā)生變化的槽-值對(duì)。然后,使用這些輪次級(jí)別的更新來(lái)累積全局信念狀態(tài)。為了獲得機(jī)器可讀的輸出,以便用于數(shù)據(jù)庫(kù)查詢或API調(diào)用,在提示中指定模型應(yīng)該提供JSON格式的輸出,并且提供的少樣本示例也相應(yīng)進(jìn)行了格式化處理。
3.3 響應(yīng)生成
當(dāng)前的信念狀態(tài)用于查詢數(shù)據(jù)庫(kù),以找到與活動(dòng)領(lǐng)域中所有用戶指定的槽位匹配的條目。根據(jù)信念狀態(tài)和數(shù)據(jù)庫(kù)結(jié)果,可以直接生成響應(yīng)。給定的LLM提示包括對(duì)話歷史、用戶話語(yǔ)、信念狀態(tài)和數(shù)據(jù)庫(kù)結(jié)果(以及在少樣本設(shè)置中檢索到的示例),并要求模型提供一個(gè)合適的系統(tǒng)響應(yīng)。
生成去標(biāo)記化的響應(yīng),即用占位符替換槽位值。除了簡(jiǎn)化模型的任務(wù)外,去標(biāo)記化的輸出還使我們能夠評(píng)估成功率。提示指定模型應(yīng)將實(shí)體值作為去標(biāo)記化的占位符提供,并相應(yīng)構(gòu)建任何少樣本示例。
3.4 上下文存儲(chǔ)
引入了一個(gè)包含編碼對(duì)話上下文的存儲(chǔ)。這個(gè)上下文存儲(chǔ)是可選的,只在少樣本提示變體中需要。使用來(lái)自固定長(zhǎng)度歷史窗口的對(duì)話上下文作為要編碼到向量數(shù)據(jù)庫(kù)中的鍵。一旦檢索到相關(guān)示例,將它們包含在提示中以更好地指導(dǎo)模型。一些LLM還依賴于負(fù)面(對(duì)立地)示例。因此,采用了Peng等的一致性分類任務(wù)方法來(lái)生成負(fù)面示例:采用一些檢索到的信念狀態(tài)示例,通過將一些正確的槽值替換為隨機(jī)值來(lái)破壞它們,并將它們作為負(fù)面示例呈現(xiàn)在提示中。
4. 實(shí)驗(yàn)設(shè)定
5. 實(shí)驗(yàn)結(jié)果
5.1 領(lǐng)域檢測(cè)
各種模型的領(lǐng)域檢測(cè)準(zhǔn)確率差異很大,這很可能會(huì)影響檢索到的少樣本示例的質(zhì)量和后續(xù)提示的適當(dāng)性。然而,領(lǐng)域檢測(cè)是基于輪次的,有一些情況(例如提供地址、道別等)總是以相同的方式處理,即使它們?cè)谛问缴蠈儆诓煌念I(lǐng)域。因此,并非所有來(lái)自被錯(cuò)誤分類的領(lǐng)域的檢索示例一定包含無(wú)關(guān)的上下文。
使用理論上正確的領(lǐng)域并沒有提高性能,甚至在某些情況下性能變差。這表明模型預(yù)測(cè)的領(lǐng)域通常已經(jīng)足夠好,并且額外提供領(lǐng)域信息并不會(huì)對(duì)最終的系統(tǒng)性能產(chǎn)生貢獻(xiàn)。
5.2 信念狀態(tài)跟蹤
在比較各個(gè)模型的結(jié)果時(shí),ChatGPT明顯優(yōu)于其他模型。少樣本與零樣本設(shè)置似乎并不對(duì)結(jié)果產(chǎn)生很大影響,除了GPT-NeoXT模型。
5.3 響應(yīng)生成
總體而言,BLEU分?jǐn)?shù)較低,遠(yuǎn)低于監(jiān)督式最先進(jìn)模型。Tk-Instruct和ChatGPT在這方面是最強(qiáng)的,并且表現(xiàn)大致相當(dāng)。
5.4 對(duì)話級(jí)表現(xiàn)
對(duì)話成功的結(jié)果在表2中提供,LLMs和監(jiān)督式自定義模型的性能之間存在較大差距。ChatGPT似乎優(yōu)于其他模型,與狀態(tài)跟蹤類似。然而,在零樣本設(shè)置中,差異并不那么明顯。在大多數(shù)情況下,添加檢索到的少樣本示例是有幫助的。當(dāng)提供理論上正確的信念狀態(tài)時(shí),檢索示例的貢獻(xiàn)更為明顯,這種情況下對(duì)于所有模型都有幫助。圖5探討了上下文存儲(chǔ)大小對(duì)對(duì)話成功率的影響。似乎通過僅提供少量示例而不是零樣本提示可以實(shí)現(xiàn)最大的改進(jìn),但增加用于檢索的示例池的大小并不會(huì)帶來(lái)進(jìn)一步的性能提升。
6 模型分析
介紹了人工評(píng)估和錯(cuò)誤分析。
錯(cuò)誤行為可以分為可恢復(fù)的提示錯(cuò)誤和固有錯(cuò)誤,前者可以通過提示工程修復(fù),后者屬于不容易通過提示工程修復(fù)的錯(cuò)誤,比如幻覺和不相關(guān)的內(nèi)容。
7 結(jié)論
即使在提供上下文中的少樣本示例的情況下,LLM在信念狀態(tài)跟蹤方面表現(xiàn)不佳。如果提供正確的信念狀態(tài),模型可以成功地與用戶進(jìn)行交互,提供有用的信息并滿足用戶的需求。因此,精心選擇代表性示例并將LLM與領(lǐng)域內(nèi)的信念跟蹤器結(jié)合起來(lái),可以成為任務(wù)導(dǎo)向型對(duì)話流程中可行的選擇。
8. 限制
模型對(duì)特定提示的選擇很敏感。具體而言,信念狀態(tài)的期望格式在模型之間有所變化,并且存在一些模型特定的指令。
A 提示詞構(gòu)建
總結(jié)
? 作者測(cè)試了基于LLM做領(lǐng)域識(shí)別、狀態(tài)追蹤和響應(yīng)生成。但是狀態(tài)追蹤的效果不好,如果想用LLM做TOD需要額外加入狀態(tài)追蹤邏輯。