淺看引入智能信息助理提升大模型處理復(fù)雜推理任務(wù)的潛力-AssisTRAG 原創(chuàng)
AssisTRAG通過集成一個智能信息助手來提升LLMs處理復(fù)雜推理任務(wù)的能力。該框架由兩個主要組件構(gòu)成:一個凍結(jié)的主語言模型和一個可訓(xùn)練的助手語言模型。
AssisTRAG與之前的RAG對比
1. 組件
- 主語言模型(Main LLM):負(fù)責(zé)根據(jù)提供的信息生成答案。這個模型是固定的,不進(jìn)行訓(xùn)練。
- 助手語言模型(Assistant LLM):負(fù)責(zé)信息管理,包括記憶管理和知識管理。這個模型是可訓(xùn)練的。
可以看出,相比之前的RAG,該框架主要創(chuàng)新點是引入一個Assistant LLM,下面詳細(xì)看下助手語言模型功能。
2. AssisTRAG
AssisTRAG主要分為兩個類別來處理復(fù)雜任務(wù):記憶管理和知識管理。記憶管理涉及整合和分析來自內(nèi)部內(nèi)存的內(nèi)容,而知識管理則側(cè)重于利用外部知識。這兩個主要功能由AssisTRAG的四個核心能力支持:
- 工具使用(Tool Usage):從內(nèi)部記憶和外部知識庫中檢索相關(guān)信息。
- 動作執(zhí)行(Action Execution):進(jìn)行推理、分析信息需求并提取知識。
- 記憶構(gòu)建(Memory Building):記錄從歷史交互中提取的關(guān)鍵知識和推理模式。
- 計劃指定(Plan Specification):確定在答案生成過程中每個步驟的必要性。
2.1 記憶管理
記憶管理模塊通過存儲和檢索歷史交互來提升主語言模型的性能。有效的記憶管理包括兩個主要過程:捕獲新見解和檢索先前存儲的信息。這兩個過程主要有以下三個能力:
1. Action I: 筆記記錄
筆記記錄功能 負(fù)責(zé)記錄每個歷史交互中的關(guān)鍵信息和推理模式。具體來說,給定主語言模型的歷史交互(包括問題 、參考答案 和生成的答案 ),助手的任務(wù)是將答案背后的關(guān)鍵推理過程記入記憶槽 中:
這樣,所有先前問題的記憶槽累積起來形成助手的記憶 ,用于后續(xù)的記憶檢索。
作用:通過記錄和存儲歷史交互中的關(guān)鍵推理過程,助手能夠在面對類似問題時快速檢索和應(yīng)用這些推理模式,從而提高回答的質(zhì)量和效率。
2. Tool I: 記憶檢索器
記憶檢索器利用助手的記憶 ,根據(jù)當(dāng)前問題 檢索歷史上相關(guān)的記憶。具體來說,記憶檢索器會檢索與當(dāng)前問題相關(guān)的歷史記憶,并將其表示為:
作用:通過從記憶中檢索相關(guān)歷史記憶,助手可以為當(dāng)前問題提供額外的上下文和信息,幫助主語言模型更好地理解和回答問題。
3. Plan I: 評估檢索記憶的有用性
如果問題是全新的,檢索到的記憶可能不僅無助于回答,還可能負(fù)面影響主語言模型的響應(yīng)。因此,助手需要評估檢索到的記憶是否對當(dāng)前問題有幫助。具體來說,助手使用一個提示來評估檢索到的記憶是否有助于回答當(dāng)前問題。只有當(dāng)答案是肯定的時候,檢索到的記憶才會被提供給主語言模型。
實現(xiàn):通過一個提示,助手評估檢索到的記憶是否對當(dāng)前問題有益。如果評估結(jié)果是肯定的,這些記憶槽將被提供給主語言模型。
作用:這一計劃確保了只有相關(guān)的記憶會被提供給主語言模型,避免了無關(guān)或負(fù)面的記憶干擾回答的質(zhì)量。
2.2 知識管理
知識管理涉及以下四個能力:
1. 動作 II:問題分解
- 功能:將當(dāng)前問題分解為多個子查詢,以便從不同方面檢索知識。
- 實現(xiàn):給定一個問題 ,動作 將其分解為一系列子查詢 。例如,問題“音樂家和諷刺作家Allie Goertz寫了一首關(guān)于《辛普森一家》角色Milhouse的歌曲,Matt Groening是根據(jù)誰的名字命名的?”可以被分解為:
- 子查詢1:Allie Goertz寫了一首關(guān)于《辛普森一家》角色Milhouse的歌曲。
- 子查詢2:Matt Groening是根據(jù)誰的名字命名了Milhouse?
2. 工具 II:知識檢索器
- 功能:利用子查詢 從外部知識庫中檢索相關(guān)文檔。
- 實現(xiàn):使用子查詢 ,知識檢索器從外部知識庫 中檢索相關(guān)文檔,表示為 。例如,子查詢1和子查詢2將被用來從維基百科等外部數(shù)據(jù)庫中檢索與Allie Goertz和Milhouse相關(guān)的文檔。
3. 動作 III:知識提取
- 功能:從檢索到的文檔中提取關(guān)鍵知識。
- 實現(xiàn):給定問題 和檢索到的文檔 ,動作 負(fù)責(zé)從中提取相關(guān)知識 。例如,從檢索到的文檔中提取出:
- Allie Goertz 是一位美國音樂家和諷刺作家。
- Milhouse 是《辛普森一家》中的一個虛構(gòu)角色,由Matt Groening創(chuàng)造,并以意大利獨裁者Benito Mussolini命名。
4. 計劃 II:評估提取知識的相關(guān)性
- 功能:確保提供給主語言模型的信息準(zhǔn)確且相關(guān)。
- 實現(xiàn):助手通過提示評估提取的知識是否與當(dāng)前問題相關(guān)。只有當(dāng)提取的知識被認(rèn)為對回答問題有幫助時,才會將其提供給主語言模型。
2.3 AssisTRAG 訓(xùn)練
AssisTRAG 的訓(xùn)練過程分為課程助理學(xué)習(xí)和強(qiáng)化偏好優(yōu)化兩個階段。課程學(xué)習(xí)階段通過逐步增加任務(wù)復(fù)雜性來提升助手在 RAG 過程中的技能。強(qiáng)化偏好優(yōu)化階段則通過根據(jù)主 LLM 的反饋調(diào)整助手的輸出,確保助手提供的幫助更加貼合主 LLM 的需求。
2.4 AssisTRAG 推理
AssisTRAG 通過三個步驟啟動其推理過程:
1. 信息檢索與整合
在這個初始階段,AssisTRAG 首先激活 Action II 來理解主 LLM 的信息需求。然后,它使用 Tool I 和 Tool II 分別從內(nèi)部記憶和外部知識庫中檢索相關(guān)信息。接著,它調(diào)用 Action III 從檢索到的文檔中提取關(guān)鍵知識。
2. 決策
在這一階段,AssisTRAG 決定是否將檢索到的記憶和提取的知識提供給主 LLM。它激活 Plan I 和 Plan II 來評估這些檢索到的記憶和知識對當(dāng)前問題的相關(guān)性和有用性。如果助手認(rèn)為這些信息有幫助,它們將被提供給主 LLM 以輔助回答生成。
3. 回答生成與記憶更新
在最后階段,AssisTRAG 提示主 LLM 根據(jù)問題、其內(nèi)部知識和助手提供的信息生成答案。之后,AssisTRAG 激活 Action I,利用其筆記功能,捕捉交互中的關(guān)鍵推理步驟并將其納入其記憶中。這確保了助手的知識庫保持最新。
實驗效果
參考文獻(xiàn)
Boosting the Potential of Large Language Models with an Intelligent Information Assistant,https://arxiv.org/pdf/2411.06805v1
本文轉(zhuǎn)載自公眾號大模型自然語言處理 作者:余俊暉
