最新文獻(xiàn)綜述:LLM可控文本生成
經(jīng)過一年多的發(fā)展大模型已融入了我們的日常工作中,但是大模型經(jīng)常會(huì)輸出一些不符合約束的結(jié)果,本文將給出一份詳盡的指南,介紹如何管理和指導(dǎo)大型語言模型(LLM)進(jìn)行文本生成的各類技術(shù)和方法,著重于理論支撐與實(shí)踐操作。
大模型可控文本生成(CTG)綜述
圖片
圖片
可控文本生成的概述
可控文本生成(CTG)需實(shí)現(xiàn)兩大核心目標(biāo):
- 遵循既定的控制準(zhǔn)則:保證產(chǎn)出的文本滿足特定的要求,諸如主題連貫性、內(nèi)容安全性與風(fēng)格統(tǒng)一性。
- 維持文本的高品質(zhì):確保生成的內(nèi)容不僅流暢、有益,還具有多樣性,同時(shí)在控制與整體品質(zhì)之間取得平衡。
與大語言模型中的可控生成相關(guān)的Web of Science上的出版趨勢(shì)。
圖片
大型語言模型(LLMs)的可控性維度和能力維度。
圖片
可控文本生成的形式化定義
可控文本生成(CTG)的定義概述如下:
- 與LLM的關(guān)系:CTG構(gòu)成了與LLM的客觀知識(shí)處理能力相獨(dú)立的一個(gè)能力維度,它專注于信息的呈現(xiàn)方式,旨在滿足特定的需求,如風(fēng)格匹配或情感表達(dá)。
- 控制條件的融入:通過文本資料、圖表或數(shù)據(jù)庫等資源,可以在文本生成流程的不同階段嵌入控制條件。
- CTG的品質(zhì):優(yōu)質(zhì)的CTG在遵循控制條件的同時(shí),還需確保生成文本的自然流暢、邏輯連貫和內(nèi)容有用,實(shí)現(xiàn)控制與文本品質(zhì)的均衡。
可控文本生成任務(wù)
對(duì)可控文本生成(CTG)的任務(wù)進(jìn)行了分類,主要分為以下兩個(gè)大類:
- 內(nèi)容控制(Content Control):也稱為語言學(xué)控制或硬控制,專注于生成文本的具體元素,如文本的結(jié)構(gòu)和詞匯。這種類型的控制要求模型根據(jù)預(yù)定義的規(guī)則精確生成文本內(nèi)容。內(nèi)容控制包括:
結(jié)構(gòu)控制:包括特定格式(如詩歌、食譜等)、組織結(jié)構(gòu)(如段落劃分、標(biāo)題使用、列表排列)和長度控制。
詞匯控制:確保文本包含預(yù)定義的關(guān)鍵詞集,以及避免使用可能有害或不適當(dāng)?shù)男g(shù)語。
- 屬性控制(Attribute Control):也稱為語義控制或軟控制,關(guān)注文本的抽象語言屬性,如情感、風(fēng)格和主題。這種類型的控制旨在確保生成的文本在更高層次上反映特定的語義特征。屬性控制包括:
安全性控制:包括去除有害內(nèi)容和遵守法律法規(guī)。
情感控制:確保文本表現(xiàn)出明確的情感傾向,如積極、消極或中性。
風(fēng)格控制:包括通用風(fēng)格(適應(yīng)特定場(chǎng)合和行業(yè)的專業(yè)溝通風(fēng)格)和個(gè)人風(fēng)格(模仿特定寫作風(fēng)格或根據(jù)個(gè)人喜好生成個(gè)性化文本)。
主題控制:確保文本嚴(yán)格遵守指定的主題。
4.可控文本生成方法分類
干預(yù)階段、控制方法、特定方法和示例方法的分類
圖片
可控文本生成(CTG)方法分類:
- 模型驅(qū)動(dòng)方法:使用分類器、條件語言模型或直接從LLMs本身注入知識(shí)。
- 數(shù)據(jù)驅(qū)動(dòng)方法:利用豐富的數(shù)據(jù)資源,如文本語料庫、詞典、圖和數(shù)據(jù)庫來注入知識(shí)。
CTG中條件的注入
圖片
可控文本生成(CTG)的方法主要分為兩個(gè)階段:訓(xùn)練階段和推理階段
可控文本生成方法的分類
圖片
訓(xùn)練階段方法
- 重訓(xùn)練(Retraining):從頭開始訓(xùn)練新模型或?qū)ΜF(xiàn)有模型架構(gòu)進(jìn)行根本性修改,以更好地適應(yīng)特定的控制條件。這通常在現(xiàn)有預(yù)訓(xùn)練模型無法滿足新要求時(shí)采用。
- 微調(diào)(Fine-Tuning):通過使用專門設(shè)計(jì)的小型數(shù)據(jù)集來調(diào)整預(yù)訓(xùn)練模型,使其更好地符合特定的控制屬性,而無需從頭開始訓(xùn)練模型。
- 強(qiáng)化學(xué)習(xí)(Reinforcement Learning):使用獎(jiǎng)勵(lì)信號(hào)來引導(dǎo)模型輸出朝向特定的控制目標(biāo)。通過迭代優(yōu)化,模型學(xué)習(xí)使其輸出與這些目標(biāo)對(duì)齊。
推理階段方法
- 提示工程(Prompt Engineering):在推理階段,通過設(shè)計(jì)特定的輸入提示來直接影響文本生成,而無需對(duì)模型參數(shù)進(jìn)行廣泛調(diào)整。
- 潛在空間操作(Latent Space Manipulation):通過調(diào)整模型隱藏層中的激活狀態(tài)來控制生成的文本,允許在不改變模型權(quán)重的情況下精確控制文本生成過程。
- 解碼時(shí)干預(yù)(Decoding-time Intervention):在解碼過程中修改生成輸出的概率分布或應(yīng)用特定規(guī)則,以影響單詞選擇,確保輸出與特定控制條件對(duì)齊。
具體方法示例
- 重訓(xùn)練:例如CTRL模型,通過在訓(xùn)練文本前添加控制代碼來區(qū)分不同的控制條件。
- 微調(diào):例如Adapter-Based Fine-Tuning和Data-Driven Fine-Tuning,使用輔助模型或特定數(shù)據(jù)集來調(diào)整模型輸出。
- 強(qiáng)化學(xué)習(xí):例如Automated Feedback和Human Feedback方法,使用自動(dòng)評(píng)估指標(biāo)或人類反饋來優(yōu)化模型。
Controllable Text Generation for Large Language Models: A Survey
https://arxiv.org/pdf/2408.12599
https://github.com/IAAR-Shanghai/CTGSurvey