DyPRAG:即插即用動態將上下文轉化為參數知識,有效緩解RAG幻覺 原創
來自fans投稿,提出動態參數化RAG,即插即用無縫和RAG結合,減少RAG幻覺的發生,來看看具體思路。
檢索增強生成(RAG)通過從外部源檢索相關文檔并將其合并到上下文中來增強大語言模型(LLMs)。雖然它通過提供事實文本提高了可靠性,但隨著上下文長度的增長,顯著增加了推理成本,并引入了具有挑戰性的RAG幻覺問題,這主要是由于LLM中缺乏相應的參數知識造成的。
參數化RAG (PRAG)通過離線訓練將文檔嵌入大模型參數有效地降低推理成本。然而其高昂的訓練和存儲成本以及有限的泛化能力,極大地限制了其實際應用。
我們提出動態參數化RAG,在推理時將文檔知識動態轉化為模型參數知識,能有效補充相應知識。并且能即插即用無縫和RAG結合,提升模型知識內化水平同時減少RAG幻覺的發生。
論文:Better wit than wealth: Dynamic Parametric Retrieval Augmented Generation for Test-time Knowledge Enhancement
鏈接:https://arxiv.org/pdf/2503.23895
項目:https://github.com/Trae1ounG/DyPRAG
方法
檢索增強生成(RAG)
參數化RAG(PRAG)
然而,PRAG的訓練成本較高,且難以適應新文檔。因此,我們提出動態參數化RAG(DyPRAG),實現更高效的參數注入。
動態參數化RAG(DyPRAG)
DyPRAG的核心思路在于訓練一個輕量的參數轉換器來建模從文檔->參數的潛在映射,僅需要少量的訓練數據就能有效學習到泛化性極強的轉換器,在推理時幾乎不會引入額外的計算開銷且能提升模型性能,最少只需要2MB存儲開銷。
DyPRAG對比RAG和PRAG
1. 文檔-參數對收集(離線)
2. 訓練動態參數翻譯器(離線)
MLP超網絡工作流程
3. 高效推理(在線)
DyPRAG整體框架圖
實驗
分布內QA實驗
在多個問答數據集上訓練參數轉換器并進行實驗,DyPRAG表現出極優的性能:
- DyPRAG能有效注入參數知識:對比RAG,在沒有提供任何文檔拼接到上下文的情況下,DyPRAG表現出明顯優于RAG的性能同時減少了推理開銷。
- 上下文知識+動態生成參數知識有效促進知識融合:DyPRAG-Combine將文檔加入上下文結合動態生成參數知識,在所有情況下取得最好效果,有效促進了模型知識和上下文知識的融合。
分布內主實驗
分布外QA實驗
DyPRAG能有效轉換分布外的文檔到參數知識,在補充參數知識后始終可以作為相比RAG更強更魯棒的基線。
分布外數據集實現
為什么DyPRAG能減少RAG幻覺?
- RAG幻覺(或叫知識沖突)經常由于模型內部知識和外部提供上下文知識發生沖突導致發生。可能模型包含正確的參數知識但結合上下文知識報錯,也可能上下文知識正確但模型包含錯誤參數知識導致模型回答錯誤。
- DyPRAG首先動態將檢索文檔轉換為模型參數知識,提前讓模型“做足了功課”,在遇到相對應的上下文內容時就能極大程度避免知識沖突發生,這也是DyPRAG-Combine性能提升的直接來源,極低的開銷使得DyPRAG有希望成為RAG幻覺的有效解決方式。
RAG幻覺示例分析
知識內化實驗
基于RAGTruth幻覺數據集衡量DyPRAG-Combine對知識的內化程度(使用GPT-4o打分)。
RAGTruth中的文檔來源和訓練時完全不同并且大模型訓練時完全沒有見過——DyPRAG能有效將沒有見過知識進行內化,內化程度顯著優于RAG方法。
RAGTruth數據集驗證
計算/存儲開銷
通過詳細的時間復雜度計算和實際運行時間對比,我們提出的DyPRAG能有效提升模型性能,同時減少RAG帶來的高推理開銷以及PRAG帶來的極高訓練和存儲開銷(僅1%),更證明方法即插即用提升性能的高可用性!
實際存儲和訓練開銷
理論分析推理、存儲、訓練開銷
結論
- 我們提出動態參數化RAG (Dynamic Parametric RAG),一個輕量級框架可以以即插即用的方式以最小的成本有效地將文檔轉換為參數。
- 我們提出了一個強大而實用的RAG范式:有效地將上下文知識與測試時動態生成的參數知識結合起來,實現更強大的知識融合。
- 實驗結果表明,DyPRAG具有極優的泛化能力,能夠有效地注入參數并無縫地融合上下文知識,在減少RAG幻覺的同時提高了模型性能。
公眾號大模型自然語言處理 作者:余俊暉
