用于復雜RAG任務的先進可控Agent
一種先進的檢索增強型生成(RAG)開源解決方案,旨在解決簡單的基于語義相似性的檢索無法解決的復雜問題。
展示了一個復雜的確定性圖,作為高度可控的自主Agent的“大腦”,能夠回答來自私域數據的復雜問題。
關鍵特性
- 復雜的確定性圖:作為Agent的“大腦”,使復雜推理成為可能。
- 可控自主Agent:能夠回答自定義數據集中的復雜問題。
- 幻覺預防:確保答案僅基于提供的數據,避免AI幻覺。
- 多步驟推理:將復雜查詢分解為可管理的子任務。
- 適應性規劃:基于新信息不斷更新其計劃。
- 性能評估:使用Ragas指標進行全面質量評估。
工作流程
- PDF加載和處理:加載PDF文檔并將其拆分為章節。
- 文本預處理:清洗和預處理文本,以獲得更好的摘要和編碼。
- 摘要:使用大型語言模型為每個章節生成廣泛的摘要。
- 書籍引用數據庫創建:為需要訪問書籍引用的特定問題創建數據庫。
- 向量存儲編碼:將書籍內容和章節摘要編碼為向量存儲,以便高效檢索。
- 問題處理:
通過將命名實體替換為變量來匿名化問題。
為匿名化的問題生成高層次的計劃。
去匿名化計劃并將其分解為可檢索或可回答的任務。
- 任務執行:
- 對于每個任務,根據上下文決定是檢索信息還是回答問題。
- 如果是檢索,從向量存儲中獲取相關信息并提煉它。
- 如果是回答,使用思維鏈推理生成響應。
- 驗證和重新規劃:
- 驗證生成的內容是否基于原始上下文。
- 根據新信息重新規劃剩余步驟。
- 最終答案生成:使用累積的上下文和思維鏈推理生成最終答案。
使用案例:哈利·波特書籍分析
該算法使用第一本哈利·波特書籍進行了測試,允許監控模型對檢索信息與預訓練知識依賴度的對比。這種選擇使我們能夠驗證模型是在使用其預訓練的知識,還是嚴格依賴從向量存儲中檢索到的信息。
示例問題 問:主人公是如何打敗反派的助手的?
為了解決這個問題,需要執行以下步驟:
- 確定情節中的主角。
- 確定反派角色。
- 確定反派的助手。
- 搜索主角與反派之間的對抗或互動。
- 推斷導致主角打敗助手的原因。Agent能夠分解并解決這樣復雜的查詢,展示了其復雜的推理能力。
https://github.com/NirDiamant/Controllable-RAG-Agent
本文轉載自??PaperAgent??
已于2024-8-26 01:15:41修改
贊
收藏
回復
分享
微博
QQ
微信
舉報

回復
相關推薦