本發(fā)明涉及對(duì)話生成領(lǐng)域,具體涉及一種基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話方法、裝置及可讀介質(zhì)。
背景技術(shù):
1、目前,生成式對(duì)話技術(shù)領(lǐng)域的代表性模型為gpt(generative?pre-trainedtransformer)。gpt采用的是一種自回歸模型架構(gòu),其核心基于transformer的decoder模塊。通過(guò)next?token預(yù)測(cè)的方式進(jìn)行訓(xùn)練,gpt可以借助大規(guī)模語(yǔ)料庫(kù),憑借其龐大的參數(shù)量存儲(chǔ)大量專業(yè)領(lǐng)域信息,展現(xiàn)出通用ai智能的強(qiáng)大潛力。gpt的出現(xiàn)對(duì)傳統(tǒng)對(duì)話系統(tǒng)的基本架構(gòu)產(chǎn)生了顛覆性的影響,展現(xiàn)出極高的應(yīng)用價(jià)值和廣泛的前景。
2、目前基于gpt的對(duì)話生成系統(tǒng)存在以下缺點(diǎn):
3、(1)對(duì)話生成的方向控制難:gpt采用next?token形式生成文本,生成結(jié)果高度依賴于其解碼策略。然而,不論是確定性的top-k算法,還是基于采樣的top-p算法,都難以確保對(duì)話內(nèi)容的生成方向完全符合預(yù)期。因此,如何通過(guò)明確的動(dòng)作標(biāo)簽來(lái)引導(dǎo)模型生成目標(biāo)內(nèi)容,對(duì)于提升對(duì)話的相關(guān)性和用戶留聯(lián)率具有關(guān)鍵作用。受限于本身的架構(gòu)設(shè)計(jì)和解碼策略影響,讓同一個(gè)gpt自己的生成動(dòng)作標(biāo)簽顯然不是非常好的策略。
4、(2)模型自生成動(dòng)作標(biāo)簽的局限性:由于gpt模型的架構(gòu)設(shè)計(jì)和解碼策略的限制,僅依賴gpt自身生成動(dòng)作標(biāo)簽顯然不是理想的解決方案。這種方式不僅難以優(yōu)化對(duì)話質(zhì)量,還可能影響生成內(nèi)容的一致性和多樣性。
5、(3)覆蓋范圍有限:在真實(shí)的線上對(duì)話環(huán)境中,用戶的表達(dá)方式、問(wèn)題的復(fù)雜程度和場(chǎng)景的多樣性使得專家指定的動(dòng)作標(biāo)簽策略難以覆蓋所有可能的對(duì)話場(chǎng)景。這意味著,在某些情況下,系統(tǒng)可能無(wú)法應(yīng)對(duì)突發(fā)的或非典型的對(duì)話情境,導(dǎo)致對(duì)話效果的下降。
6、(4)人力成本高,效率低:依賴專家的經(jīng)驗(yàn)來(lái)指定動(dòng)作標(biāo)簽是非常耗時(shí)和費(fèi)力的。每個(gè)領(lǐng)域的專家數(shù)量有限,且需要大量的時(shí)間進(jìn)行設(shè)計(jì)、調(diào)整和優(yōu)化。這不僅降低了效率,還使得模型的擴(kuò)展性和快速迭代變得困難,特別是在面對(duì)新的對(duì)話場(chǎng)景或需求時(shí)。
7、除此之外,不同的客戶跟客服機(jī)器人之間有不同的對(duì)話習(xí)慣,如何通過(guò)原始對(duì)話學(xué)習(xí)動(dòng)作標(biāo)簽分布去模擬人類的對(duì)話習(xí)慣,實(shí)現(xiàn)指令跟隨,也是難點(diǎn)之一。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)的目的在于針對(duì)上述提到的技術(shù)問(wèn)題提出一種基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話方法、裝置及可讀介質(zhì)。
2、第一方面,本發(fā)明提供了一種基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話方法,包括以下步驟:
3、構(gòu)建編碼模型并訓(xùn)練,得到經(jīng)訓(xùn)練的編碼模型,將候選歷史對(duì)話分別輸入到經(jīng)訓(xùn)練的編碼模型,得到候選歷史對(duì)話向量,將候選歷史對(duì)話向量及其對(duì)應(yīng)的回答存儲(chǔ)在向量庫(kù)中,回答包括回復(fù)語(yǔ)句以及回復(fù)語(yǔ)句對(duì)應(yīng)的動(dòng)作標(biāo)簽;
4、獲取訓(xùn)練數(shù)據(jù),訓(xùn)練數(shù)據(jù)中的每個(gè)樣本包括歷史對(duì)話及其對(duì)應(yīng)的回答;構(gòu)建軟標(biāo)簽生成模型和生成式對(duì)話模型,將訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的回答輸入到軟標(biāo)簽生成模型中,通過(guò)提示工程指導(dǎo)軟標(biāo)簽生成模型根據(jù)每個(gè)樣本的回答中的動(dòng)作標(biāo)簽和回復(fù)語(yǔ)句將每個(gè)樣本的回答中的動(dòng)作標(biāo)簽修改成指令語(yǔ)句,并輸出軟標(biāo)簽數(shù)據(jù),軟標(biāo)簽生成模型包括指令語(yǔ)句和回復(fù)語(yǔ)句;
5、采用訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的歷史對(duì)話和軟標(biāo)簽數(shù)據(jù)對(duì)生成式對(duì)話模型進(jìn)行訓(xùn)練,得到經(jīng)訓(xùn)練的生成式對(duì)話模型;
6、獲取待回復(fù)的歷史對(duì)話并輸入到經(jīng)訓(xùn)練的編碼模型,得到待回復(fù)的歷史對(duì)話向量,將待回復(fù)的歷史對(duì)話向量在向量庫(kù)中檢索到前n個(gè)最相似的候選歷史對(duì)話向量,從前n個(gè)最相似的候選歷史對(duì)話向量對(duì)應(yīng)的回答中抽取出動(dòng)作標(biāo)簽,將待回復(fù)的歷史對(duì)話和動(dòng)作標(biāo)簽輸入到經(jīng)訓(xùn)練的生成式對(duì)話模型,生成對(duì)應(yīng)的回復(fù)語(yǔ)句。
7、作為優(yōu)選,編碼模型包括預(yù)訓(xùn)練的bert模塊或預(yù)訓(xùn)練的roberta-wwm-base模型。
8、作為優(yōu)選,編碼模型的訓(xùn)練過(guò)程如下:
9、構(gòu)建歷史對(duì)話及其對(duì)應(yīng)的正樣本和負(fù)樣本;
10、分別將歷史對(duì)話及其對(duì)應(yīng)的正樣本和負(fù)樣本輸入到編碼模型,得到歷史對(duì)話向量、正樣本向量和負(fù)樣本向量;
11、根據(jù)歷史對(duì)話向量、正樣本向量和負(fù)樣本向量構(gòu)建對(duì)比學(xué)習(xí)損失函數(shù),如下式所示:
12、
13、其中,l表示對(duì)比學(xué)習(xí)損失函數(shù),h表示歷史對(duì)話向量,p表示正樣本向量,ni表示第i個(gè)負(fù)樣本向量,i∈{1,2,...,n},n為負(fù)樣本的數(shù)量;sim表示余弦相似度,τ表示溫度系數(shù);
14、基于對(duì)比學(xué)習(xí)損失函數(shù)對(duì)編碼模型進(jìn)行訓(xùn)練,得到經(jīng)訓(xùn)練的編碼模型。
15、作為優(yōu)選,通過(guò)提示工程指導(dǎo)軟標(biāo)簽生成模型根據(jù)每個(gè)樣本的回答中的動(dòng)作標(biāo)簽和回復(fù)語(yǔ)句將每個(gè)樣本的回答中的動(dòng)作標(biāo)簽修改成指令語(yǔ)句,并輸出軟標(biāo)簽數(shù)據(jù),具體包括:
16、構(gòu)建提示詞,提示詞中要求根據(jù)給定的回答,確定回答中動(dòng)作標(biāo)簽和回復(fù)語(yǔ)句的分隔符,修改動(dòng)作標(biāo)簽中的內(nèi)容,使其具有多樣性,同時(shí)能夠貼切描述回復(fù)語(yǔ)句的內(nèi)容;
17、軟標(biāo)簽生成模型根據(jù)提示詞和回答生成軟標(biāo)簽數(shù)據(jù)。
18、作為優(yōu)選,采用訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的歷史對(duì)話和軟標(biāo)簽數(shù)據(jù)對(duì)生成式對(duì)話模型進(jìn)行訓(xùn)練,得到經(jīng)訓(xùn)練的生成式對(duì)話模型,具體包括:
19、將訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的歷史對(duì)話和軟標(biāo)簽數(shù)據(jù)中的指令語(yǔ)句輸入到生成式對(duì)話模型,得到生成的回復(fù)語(yǔ)句,根據(jù)生成的回復(fù)語(yǔ)句與軟標(biāo)簽數(shù)據(jù)中的回復(fù)語(yǔ)句構(gòu)建損失函數(shù),基于損失函數(shù)對(duì)生成式對(duì)話模型進(jìn)行訓(xùn)練,得到經(jīng)訓(xùn)練的生成式對(duì)話模型。
20、作為優(yōu)選,軟標(biāo)簽生成模型包括qwen2-72b模型,生成式對(duì)話模型包括qwen2-7b模型。
21、第二方面,本發(fā)明提供了一種基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話裝置,包括:
22、向量庫(kù)構(gòu)建模塊,被配置為構(gòu)建編碼模型并訓(xùn)練,得到經(jīng)訓(xùn)練的編碼模型,將候選歷史對(duì)話分別輸入到經(jīng)訓(xùn)練的編碼模型,得到候選歷史對(duì)話向量,將候選歷史對(duì)話向量及其對(duì)應(yīng)的回答存儲(chǔ)在向量庫(kù)中,回答包括回復(fù)語(yǔ)句以及回復(fù)語(yǔ)句對(duì)應(yīng)的動(dòng)作標(biāo)簽;
23、數(shù)據(jù)增強(qiáng)模塊,被配置為獲取訓(xùn)練數(shù)據(jù),訓(xùn)練數(shù)據(jù)中的每個(gè)樣本包括歷史對(duì)話及其對(duì)應(yīng)的回答;構(gòu)建軟標(biāo)簽生成模型和生成式對(duì)話模型,將訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的回答輸入到軟標(biāo)簽生成模型中,通過(guò)提示工程指導(dǎo)軟標(biāo)簽生成模型根據(jù)每個(gè)樣本的回答中的動(dòng)作標(biāo)簽和回復(fù)語(yǔ)句將每個(gè)樣本的回答中的動(dòng)作標(biāo)簽修改成指令語(yǔ)句,并輸出軟標(biāo)簽數(shù)據(jù),軟標(biāo)簽生成模型包括指令語(yǔ)句和回復(fù)語(yǔ)句;
24、模型構(gòu)建模塊,被配置為采用訓(xùn)練數(shù)據(jù)中的每個(gè)樣本的歷史對(duì)話和軟標(biāo)簽數(shù)據(jù)對(duì)生成式對(duì)話模型進(jìn)行訓(xùn)練,得到經(jīng)訓(xùn)練的生成式對(duì)話模型;
25、檢索生成模塊,被配置為獲取待回復(fù)的歷史對(duì)話并輸入到經(jīng)訓(xùn)練的編碼模型,得到待回復(fù)的歷史對(duì)話向量,將待回復(fù)的歷史對(duì)話向量在向量庫(kù)中檢索到前n個(gè)最相似的候選歷史對(duì)話向量,從前n個(gè)最相似的候選歷史對(duì)話向量對(duì)應(yīng)的回答中抽取出動(dòng)作標(biāo)簽,將待回復(fù)的歷史對(duì)話和動(dòng)作標(biāo)簽輸入到經(jīng)訓(xùn)練的生成式對(duì)話模型,生成對(duì)應(yīng)的回復(fù)語(yǔ)句。
26、第三方面,本發(fā)明提供了一種電子設(shè)備,包括一個(gè)或多個(gè)處理器;存儲(chǔ)裝置,用于存儲(chǔ)一個(gè)或多個(gè)程序,當(dāng)一個(gè)或多個(gè)程序被一個(gè)或多個(gè)處理器執(zhí)行,使得一個(gè)或多個(gè)處理器實(shí)現(xiàn)如第一方面中任一實(shí)現(xiàn)方式描述的方法。
27、第四方面,本發(fā)明提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面中任一實(shí)現(xiàn)方式描述的方法。
28、第五方面,本發(fā)明提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如第一方面中任一實(shí)現(xiàn)方式描述的方法。
29、相比于現(xiàn)有技術(shù),本發(fā)明具有以下有益效果:
30、(1)本發(fā)明提出的基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話方法通過(guò)軟標(biāo)簽生成模型在動(dòng)作標(biāo)簽和回復(fù)語(yǔ)句的基礎(chǔ)上生成軟標(biāo)簽數(shù)據(jù),實(shí)現(xiàn)數(shù)據(jù)增強(qiáng)的效果,減少人工標(biāo)注大量動(dòng)作標(biāo)簽的成本,顯著提高效率。
31、(2)本發(fā)明提出的基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話方法通過(guò)軟標(biāo)簽生成模型生成軟標(biāo)簽數(shù)據(jù),避免了自生成動(dòng)作標(biāo)簽的局限性,得到更加貼近回復(fù)語(yǔ)句并且保證完整性和多樣性的指令語(yǔ)句,利用歷史對(duì)話和軟標(biāo)簽數(shù)據(jù)指導(dǎo)生成式對(duì)話模型的訓(xùn)練,使生成式對(duì)話模型能夠根據(jù)動(dòng)作標(biāo)簽實(shí)現(xiàn)指令跟隨,生成更加可控的回復(fù)語(yǔ)句。
32、(3)本發(fā)明提出的基于動(dòng)作標(biāo)簽檢索的生成式對(duì)話方法能夠通過(guò)歷史對(duì)話學(xué)習(xí)動(dòng)作標(biāo)簽分布去模擬人類的對(duì)話習(xí)慣,實(shí)現(xiàn)指令跟隨。