成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

傳統RAG的局限被打破!三個輕量級智能體分工協作,如何讓問答系統更精準? 原創

發布于 2025-2-24 09:51
瀏覽
0收藏

近期,公司在AI相關項目,尤其是問答系統領域,對回答的準確率和表述質量提出了更高的要求。用戶提出的問題不僅限于基礎性問題,還可能涉及多樣化、復雜化的場景。也就在上周五快下班的時候,項目經理向我反饋,之前的項目團隊支持的某客戶在使用問答系統時,除了查詢私有知識庫中的信息外,還會提出以下幾類問題:

  1. 可直接由大語言模型(LLM)回答的問題:例如通用知識或常識性問題。
  2. 非知識庫相關的口頭表達:如“謝謝”、“再見”等社交性語句。
  3. 需要多步推理的復雜問題:例如涉及邏輯推理或上下文關聯的問題。

然而,之前項目團隊采用的RAG技術存在一定的局限性:無論用戶提出何種問題,系統均默認從知識庫中檢索答案,再交由LLM生成回答。針對非知識庫問題(如口頭表達),團隊通過在prompt層面設置固定回復的方式進行處理。雖然這種方法能夠部分解決問題,但其設計不夠優雅,且無法有效應對需要多步推理的復雜問題。項目經理希望我能提出一種更優化的解決方案,以應對上述挑戰。為此,我向他提出了一種輕量級的多智能體方案,在不修改檢索器和LLM的前提下,優化整個RAG流程。

架構圖

傳統RAG的局限被打破!三個輕量級智能體分工協作,如何讓問答系統更精準?-AI.x社區

定義三個智能體

我們設計了三個專門的智能體——推理路由器(Reasoning Router)信息過濾器(Information Filter)和****決策制定者(Decision Maker)——以促進檢索器與大型語言模型(LLM)之間的通信,每個輕量級智能體扮演不同的角色,通過有針對性的指令協同管理RAG(Retrieval-Augmented Generation)管道的各個方面。這種統一設計確保了高效的協調,同時保持了邊緣部署的簡潔性。三個智能體分別負責評估是否需要檢索、生成有效的查詢以及選擇適合 LLMs 的信息。

推理路由器(Reasoning Router)

從高層次視角確定給定問題的最佳推理策略。根據當前狀態(即問題),它通過最多兩步操作選擇行動:

  1. 決定檢索必要性:如果輸出[No Retrieval],則問題直接由LLM處理,利用其內部知識生成答案。
  2. 確定問題復雜性:如果輸出[Retrieval],還會評估問題是否需要復雜推理。
  • 對于簡單問題,生成一個并與檢索器交互以獲取文檔。檢索到的文檔隨后由信息過濾器處理,提取出適合LLM的相關內容。最后,LLM使用過濾后的文檔生成問題的答案。
  • 對于復雜問題,輸出[Planning],這將觸發需要多個智能體協調的多步推理策略。

具體示例如下

  • 示例1(無需檢索)

    a.輸入問題:q = "What is the capital of France?"

    b.輸出:[No Retrieval]

    c.解釋:該問題屬于常識性問題,可直接由LLM回答,無需檢索。

  • 示例2(簡單問題,需檢索)

    a.輸入問題:q = "What is the population of Paris in 2023?"

    b.輸出:[Retrieval]<population of Paris 2023>

    c.解釋:該問題需要從外部知識庫中檢索最新數據。

  • 示例3(復雜問題,需多步推理)

    a.輸入問題:q = "How does the economic policy of Country A affect its trade relations with Country B?"

    b.輸出:[Planning]

    c.解釋:該問題涉及多步推理,需要分解為多個子目標并逐步解決。

過濾器(Information Filter)

用于處理和過濾檢索到的信息,以識別適合LLM的內容。其狀態空間包括問題、檢索到的文檔以及當前的推理目標(如果在[Planning]模式下運行)。

決策者(Decision Maker)

根據當前狀態在[Planning]策略中確定最佳行動。其狀態空間包括問題、LLM生成的路線圖以及推理歷史中積累的文檔。根據當前狀態,智能地選擇行動以評估進展并決定下一步操作。

智能體如何協作?

直接回答策略(Direct Answering Strategy)單次檢索策略(Single-pass Strategy)已在推理路由器(Reasoning Router)的定義中介紹,分別對應于輸出[No Retrieval]和[Retrieval]。

多步推理策略(Multi-Step Reasoning Strategy)對應于推理路由器輸出的[Planning]。該策略旨在解決需要LLM生成高層次路線圖以及多次檢索-過濾循環的復雜問題,通過以下三個階段實現迭代式信息收集和推理:

  1. 生成路線圖(Generate Roadmap):LLM將復雜問題分解為一系列結構化的子目標,為智能體提供高層次的指導。這些子目標定義了解決問題的步驟和所需的信息類型。
  2. 迭代檢索與過濾(Iterative Retrieval and Filtering):根據生成的路線圖,智能體通過多次檢索-過濾循環逐步收集相關信息。每次循環中,推理路由器確定當前子目標是否需要檢索,信息過濾器提取相關文檔,決策制定者評估進展并決定下一步操作。
  3. 綜合與生成答案(Synthesis and Answer Generation):在完成所有子目標后,LLM綜合收集到的信息,生成最終答案。這一過程確保了復雜問題能夠得到全面且準確的回答。

通過這三種策略,我們的多智能體系統能夠自適應地處理不同復雜度的問題:

  • 直接回答策略(Direct Answering Strategy):適用于通用知識問題,提供即時響應。
  • 單次檢索策略(Single-pass Strategy):高效處理基于事實的問題,通過一次檢索-過濾循環獲取答案。
  • 多步推理策略(Multi-Step Strategy):通過引導式迭代推理解決復雜問題。

prompt如何設計

Reasoning Router

推理路由器將按照以下步驟進行評估并輸出相應的動作:

  1. 評估問題

    a.分析問題的特異性、復雜性清晰度,判斷是否需要檢索或規劃。

    b.確定問題是否屬于LLM的現有知識范圍,或者是否需要外部信息支持。

  1. 決策類別

    a.如果問題復雜且需要規劃,輸出:[Planning]。

    b.如果問題需要特定信息(如最新事件或LLM知識范圍外的細分領域),輸出:[Retrieval] ‘YOUR QUERY HERE‘。

    c.如果問題可以直接由LLM回答,輸出:[No Retrieval]。

  1. 輸出格式

    a.無需檢索:[No Retrieval]

    b.需要檢索:[Retrieval](適用于簡單問題)

    c.需要規劃:[Planning](適用于復雜問題)

其對應的prompt可以如下設計:

你是一個智能助手,負責評估給定的問題是否需要通過檢索獲取更多信息,或者需要規劃才能得出準確答案。你可以訪問一個大型語言模型(LLM)來進行規劃或回答問題,并且有一個檢索系統來提供與查詢相關的信息。
指令:
1. **評估問題**:評估基于LLM的現有知識是否可以提供精確的答案??紤]問題的具體性、復雜性和清晰度。
2. **決策類別**:
- 如果問題是復雜的,并且在檢索之前需要一個規劃階段,你的回應應該是:
[Planning]
- 如果問題請求特定信息,你認為LLM不具備這些信息,或者涉及最近的事件或超出LLM知識范圍的小眾話題,請按照以下格式進行回應:
[Retrieval] ‘YOUR QUERY HERE‘
- 如果你認為LLM可以在沒有額外信息的情況下回答問題,請回復:
[No Retrieval]
3. **專注于評估**:避免直接回答問題。只專注于確定是否需要檢索或規劃。
推理路由器狀態
現在,請處理以下問題:
問題:{question}
推理路由器的所有可能操作輸出
% 對于不需要檢索的情況
[No Retrieval]
% 對于需要檢索的情況
[Retrieval]<查詢內容> (對于簡單問題)
[Planning] (對于復雜問題)

Information Filter

信息過濾器的狀態空間根據系統當前采用的策略不同而有所區別:

  1. 單次檢索策略(Single-pass Strategy)

    q:輸入問題。

    retrieved documents:從檢索系統中獲取的相關文檔。

    狀態空間:S2 = {q, retrieved documents}

  1. 多步推理策略(Multi-step Reasoning Strategy)

    q:輸入問題。

    retrieved documents:從檢索系統中獲取的相關文檔。

    current objective:當前推理目標(在多步推理模式下)。

狀態空間:S2 = {q, retrieved documents, current objective}

它會進行文檔分析并按照下面的格式進行輸出:

Thought: <對每篇文檔的分析>
Action: [<選定的文檔ID>]

示例

  1. 單次檢索策略

    問題:What is the population of Paris in 2023?

    檢索到的文檔:包含巴黎人口統計數據的多篇文檔。

    信息過濾器輸出

Thought: Document 1 contains the most recent population data for Paris (2023).  
Action: [Document 1]

2. 多步推理策略

    問題:How does the economic policy of Country A affect its trade relations with Country B?

    當前目標:分析Country A的經濟政策。

    檢索到的文檔:多篇關于Country A經濟政策的文檔。

對應的prompt如下設計:

你是一個智能助手,負責根據給定的問題和當前步驟的目標分析檢索到的文檔。你的角色是確定每個文檔與問題和指定目標的相關性。


指令:


分析相關性:評估每個文檔是否符合當前檢索步驟的目標,并且包含對問題的直接回答。
思考過程:為每個文檔提供簡要分析,同時考慮答案內容和檢索目標。
篩選文檔:在你的思考過程之后,生成一個文檔索引列表,指示保留哪些文檔。
信息過濾狀態
現在,請處理以下問題:
當前步驟的目標:{objective}(僅適用于[Planning]模式)
問題:{question}
文檔:{documents}
信息過濾輸出
思考:<對每個文檔的分析>
行動:[<選定的文檔ID>]

Decision Maker

決策者的狀態空間為:S3 = {q, Accumulated Documents, Roadmap}

  • q:輸入問題。
  • Accumulated Documents:當前累積的文檔(來自之前的檢索-過濾循環)。
  • Roadmap:由LLM生成的推理路線圖(在多步推理策略中)。

主要職責是根據當前狀態評估推理進展,并決定是否需要進一步檢索或直接生成最終答案。其動作空間包括以下兩種可能的操作:

  1. [Retrieval]

    請求額外的檢索-過濾循環,生成子查詢以獲取更多相關信息。

    適用場景:當前累積的文檔不足以解決所有子目標。

  1. [LLM]

    將當前累積的所有文檔傳遞給LLM,生成最終答案。

    適用場景:當前累積的文檔已足夠解決所有子目標。

它的輸出格式如下:

Thought: <對當前進展和目標的分析>
Action: {[Retrieval]<subquery content>, 或 [LLM]}

示例

  1. 需要進一步檢索

    問題:How does the economic policy of Country A affect its trade relations with Country B?

    當前狀態

        Roadmap:下一步需要分析Country B的貿易政策。

        Accumulated Documents:包含Country A經濟政策的文檔。

    決策者輸出

Thought: Additional information on Country B's trade policy is required to complete the analysis.  
Action: [Retrieval]<trade policy of Country B>
  1. 生成最終答案

    問題:How does the economic policy of Country A affect its trade relations with Country B?

    當前狀態

        Accumulated Documents:包含Country A經濟政策和Country B貿易政策的文檔。

        Roadmap:所有子目標已完成。

    決策者輸出

Thought: Sufficient information has been accumulated to generate the final answer.  
Action: [LLM]

通過決策制定器的動態評估和決策,系統能夠在多步推理策略中靈活調整檢索和生成過程,確保復雜問題得到全面且準確的回答。

對應的prompt如下:

你是一個智能助手,負責根據提供的現有文檔、計劃和問題確定下一步的適當行動。你可以訪問一個大型語言模型(LLM)來回答問題,并且有一個檢索系統用于收集額外的文檔。你的目標是決定是否編寫查詢以檢索相關文檔,或者基于現有文檔和計劃使用LLM生成全面的答案。
指令:
1. **評估現有文檔**:評估現有文檔是否足以回答問題。
2. **遵循計劃**:了解計劃中概述的下一步驟。
3. **決策類別**:
- 如果現有文檔不足以需要額外檢索,請回復:
[Retrieval] ‘YOUR QUERY HERE‘
- 如果現有文檔足以回答問題,請回復:
[LLM]
4. **專注于行動**:不要直接回答問題;集中精力根據現有文檔、計劃和問題識別下一步的適當行動。
決策者狀態
現在,請處理以下問題:現有文檔:{accumulated documents}
路線圖:{roadmap}
問題:{question}
決策者的輸出
思考:[你對當前情況的分析(需要檢索額外信息或使用LLM回答)]
行動:[基于分析的決定([Retrieval]<子查詢內容> 或 [LLM])]

總結

通過引入多智能體協作的RAG優化方案,成功解決了傳統RAG技術在處理多樣化問題時的局限性。然而,這種設計較為依賴模型的能力,尤其是Reasoning Router的準確性。一旦Reasoning Router判斷錯誤,最終結果可能不如預期。因此在資源允許的情況下,可以考慮使用一個7B小模型進行fine-tuning以提升Reasoning Router的表現。


本文轉載自公眾號AI 博物院 作者:longyunfeigu

原文鏈接:??https://mp.weixin.qq.com/s/GizZiM1JeF2Mc2Ui8coCGg??


?著作權歸作者所有,如需轉載,請注明出處,否則將追究法律責任
已于2025-2-24 10:15:34修改
收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 91精品国产欧美一区二区成人 | 国产在线精品一区二区 | 久久天天躁狠狠躁夜夜躁2014 | 韩日在线观看视频 | 特级做a爰片毛片免费看108 | 免费在线一区二区三区 | 国产福利在线视频 | 日本一区二区视频 | caoporn视频| 日韩在线播放一区 | 欧美日韩国产一区二区三区不卡 | 久久久久久电影 | 久久久久久久一区 | 激情自拍偷拍 | 国产999精品久久久久久 | 日韩福利在线观看 | 韩国av一区二区 | 羞羞色视频 | 国产黄色小视频 | 亚洲精品视频一区 | 一区二区三区欧美 | 欧美a级成人淫片免费看 | 不卡一区| 成人黄在线观看 | 日本成人在线免费视频 | 黄色一级毛片 | 麻豆久久久9性大片 | www.日本在线观看 | 久久久精品网站 | 久久躁日日躁aaaaxxxx | 成人不卡一区二区 | aaaaa毛片 | 一级看片免费视频 | 91精品国产92 | 日本精品视频在线观看 | 欧美一区二区三区四区在线 | 亚洲视频一区在线观看 | 亚洲欧美国产毛片在线 | 欧美日韩国产高清 | 日本成年免费网站 | 精品视频在线免费观看 |