大模型實踐分享:Agent融合RAG、大幅降低大模型的幻覺,提供更準確可靠問答體驗

0 評論 252 瀏覽 2 收藏 15 分鐘

TFlow AI通過融合RAG問答系統與Agent框架,提供了一個創新的解決方案,旨在提高B端業務場景下的AI客服和導購應用的響應質量和準確性。本文將深入探討這一組合的優勢及其在實際應用中的表現,為讀者揭示如何利用先進技術優化客戶服務體驗。

實踐產品介紹,TFlow Ai是面向B端業務場景Agent平臺,能按流程處理任務(SOP),圍繞目標來進行離散推理。能快速搭建Ai客服、AI導購等應用。產品允許LLM與環境進行交互,根據環境數據的反饋不斷的調整行動計劃/策略。且整個sop的過程是由文本來控制。

基礎信息如下:

  • 使用 文心一言 3.5的模型,未微調
  • 做了邏輯處理的Agent框架
  • 單條回復的消耗不到2K token。

一、為什么需要RAG+Agent的組合

當前Rag問答通常會存在較大的幻覺,模型容易基于自身知識進行胡編亂造。通常企業期望只基于知識庫內容進行解答,不亂發散。而我們發現Agent有很好的觀察、思考的機制。能有效的控制模型的發散問題

所以我們團隊將兩者進行融合來進行知識庫的問答,發現能很好的控制模型發散和幻覺,只用知識庫檢索的片段來回答。

RAG+Agent的優勢:

  • 借助Agent觀察與思考,來理解檢索到的知識片段。
  • 讓Agent(Re-Act)的要解決的問題、目標,進行針對性選擇和解答。

符合客戶訴求:對于to B的客服場景問答而言,提供準確可靠的信息是非常重要的。而Agent+Rag的組合能夠很好的讓模型,圍繞知識庫中與用戶提問相關的片段來回答。解決掉模型幻覺嚴重,過于發散,回答牛頭不對馬嘴的問題。

二、先來分別看下Rag和Agent的基本處理邏輯

Rag流程

常見rag問答

流程:

  1. 問題向量化,檢索相似片段
  2. 將“提示詞+用戶提問+check片段 ”打包發給大模型
  3. 模型進行解答

問題:當check是用于補充模型的知識,當片段與問題不相關或不足以解釋問題時。模型容易基于自己的理解進行解答,從而胡編亂造。

Agent(Re-act)流程:

re-act agent處理邏輯

流程:

  • 用戶:輸入問題
  • 觀察:用戶輸入,工具數據的返回
  • 思考:內容與問題、目標、流程的相關性
  • 行動:回答用戶問題 / 調用工具補充信息

優勢:在Re-act模式下。Agent在解答問題時,會觀察用戶的提問、工具的返回,思考與用戶提問的相關性,通過提示詞約束后,可以始終圍繞著目標、要求來展開。

那當用戶提問時,借助Agent調用知識庫獲取片段問題的片段,再讓Agent來回答用戶的問題

三、融合Agent和Rag融合的方案&流程

OK,現在我們將兩個流程融合在一起。

  • 讓Agent來處理用戶的提問,調用rag的能力,獲取chack片段進行觀察思考。
  • 同時圍繞用戶的提問來進行解答
  • 效果:從而規避掉check中不相關的問題和有干擾的內容,防止模型強行對check內容與用戶提問進行關聯

融合后的流程下:

Agent+Rag

處理流程示例:

用戶提問

1)Agent:第一輪處理理解用戶提問

  1. Agent觀察:用戶提問
  2. Agent思考:理解問題與提示詞(目標、任務流程等)關系
  3. Agent行動:反寫用戶提問。調用知識庫工具

2)Rag:處理(處理部分)

  1. 問題的向量化
  2. 向量數據庫的檢索;
  3. 返回檢索check

3)Agent:第二輪處理,處理知識庫片段內容

  1. Agent觀察:知識庫返回的知識片段
  2. Agent思考:理解知識庫片段與用戶問題、提示詞(目標、任務流程等)的關聯性與問題
  3. Agent行動:回復

四、看下實際處理的結果

進行兩個提問:以某充電樁基于產品手冊用戶問答為例如

  • 問題1:“如何充電”,知識庫有對應的答案片段 + 干擾片段
  • 問題2:“充電政策是什么”,知識庫中沒有對應的答案片段,會返回不相關內容

問題處理的回復效果如下:

五、處理流程分析

1. 分析用戶提問:如何充電。知識庫返回對應的答案片段 + 干擾片段

第一輪agent處理過程:

1)觀察:如何充電

2)思考:用戶想要了解如何充電,這是一個關于產品使用的基本問題。

3)行動:

  • 動作:調用知識庫
  • 擴寫問題、補充關鍵信息:”充電樁如何充電”

知識庫處理

1)問題向量化:充電樁如何充電

2)檢索:檢索產品手冊向量庫

3)獲取片段:

  • 片段1:# 分布式2路充電樁說明書。重要:充電樁安裝位置需要符合消防要求;設備需要定期巡檢。充電樁需同步安裝漏電保護裝置(建議20A);電動車充電樁使用指南1XXXXXX;
  • 片段2:# 免費充電時長設置 適應場景:所有場所,按鍵直充場景, 1.進入方法:通過菜單鍵設置進入,具體設置方法見電子版說明書–>按鍵部分;
  • 片段3:# 充到飽套餐使用 注:部分設備有此功能 使用方法: 用微信或支付寶掃一掃設備二維碼,選擇【端口】–>【充滿自?!?#8211;>【開啟充電】使用規則: 此功能先扣費,充電結束后自動退回多余金額.

第二輪Agent思考處理:

1)觀察

2)用戶問題:充電樁如何充電

3)參考片段:

  • 片段1:# 分布式2路充電樁說明書。重要:充電樁安裝位置需要符合消防要求;設備需要定期巡檢。充電樁需同步安裝漏電保護裝置(建議20A);電動車充電樁使用指南XXXXXX;
  • 片段2:# 免費充電時長設置 適應場景:所有場所,按鍵直充場景, 1.進入方法:通過菜單鍵設置進入,具體設置方法見電子版說明書–>按鍵部分;
  • 片段3:# 充到飽套餐使用 注:部分設備有此功能 使用方法: 用微信或支付寶掃一掃設備二維碼,選擇【端口】–>【充滿自?!?#8211;>【開啟充電】使用規則: 此功能先扣費,充電結束后自動退回多余金額.

4)思考:根據知識庫的內容,以及用戶問題,充電的步驟是需要將充電插頭接入空閑插座,連接好插座后,選擇以下兩種方式之一啟動充電。掃碼充電:XXXXXX

5)行動:最終回復:根據您的提問,以下是關于如何充電的詳細步驟:

  1. 將充電插頭接入空閑插座,連接好插座后,選擇以下兩種方式之一啟動充電。
  2. 掃碼充電:連接好充電器后,用手機微信或支付寶掃一掃設備二維碼。第一步選擇剛才的插座端口,第二步選擇相應的金額,第三步點擊“開始充電”啟動充電。
  3. 刷卡充電:連接好充電器后,用已授權且有余額的電卡,緊貼設備相應端口的刷卡區(距離小于5cm),聽到“刷卡成功”時,插座端口自動啟動充電。
  4. 結束充電時,設備會通過微信或支付寶推送給付款人,并提示具體的充電結束扣費金額,充電時間,停止原因等信息。

2. 用戶提問:充電政策,知識庫沒有對應的答案

檢索出來的知識片段如下:

  • 片段1:「1.5.高級設置1)通過設備詳情頁,可以進入高級設置,進行充電樁的一些參數設置高配版智能10路充電樁說明書重要:安裝位置需要符合消防要求,嚴禁安裝在公共門廳、疏散走道、樓梯間、安全出口,煙霧不得阻擋逃生通道。充電樁需同步安裝漏電保護裝置(建議20A);露天安裝時插座和機箱需要防雨、防水; 設備需要定期巡檢?!?/li>
  • 片段2:最后一個“1500”是終止充電功率,當充電功率大于此值時,設備會因為負載過大而停止充電。 示例電量計費設置: 設置1度電的計費基準,最小0.1元,最大9.99元。
  • 片段3:6、免費充電設置按設置鍵切換到對應的功能,此時語音播報“免費充電設置”,顯示界面顯示“-P6-”。 按數字鍵0或者1(0:正常模式;1:免費充電模式),再按確鍵。 執行成功顯示“SUCC”,執行失敗顯示“FAIL”。 比如輸入:1+確認鍵,則打開免費充電功能。0+確認鍵,則關閉免費充電功能,切換到正常充電模式。

而Agent第二輪的思考過程

1)觀察

2)用戶問題:充電樁的充電政策

3)參考片段:

  • 片段1:「1.5.高級設置1)通過設備詳情頁,可以進入高級設置,進行充電樁的一些參數設置高配版智能10路充電樁說明書重要:安裝位置需要符合消防要求,嚴禁安裝在公共門廳、疏散走道、樓梯間、安全出口,煙霧不得阻擋逃生通道。充電樁需同步安裝漏電保護裝置(建議20A);露天安裝時插座和機箱需要防雨、防水; 設備需要定期巡檢?!?/li>
  • 片段2:最后一個“1500”是終止充電功率,當充電功率大于此值時,設備會因為負載過大而停止充電。 示例電量計費設置: 設置1度電的計費基準,最小0.1元,最大9.99元。
  • 片段3:6、免費充電設置 按設置鍵切換到對應的功能,此時語音播報“免費充電設置”,顯示界面顯示“-P6-”。 按數字鍵0或者1(0:正常模式;1:免費充電模式),再按確鍵。 執行成功顯示“SUCC”,執行失敗顯示“FAIL”。 比如輸入:1+確認鍵,則打開免費充電功能。0+確認鍵,則關閉免費充電功能,切換到正常充電模式。

4)思考:根據知識庫的返回,并沒有直接回答用戶關于“充電政策”的具體內容。

5)行動:最終回復:非常抱歉,關于充電政策的具體內容,我們的知識庫中并沒有直接的信息。但我可以告訴您,我們的充電樁安裝位置需要符合消防要求,嚴禁安裝在公共門廳、疏散走道、樓梯間、安全出口,并且需要同步安裝漏電保護裝置。如果您需要更詳細的信息,建議您查閱我們的產品手冊或聯系我們的客服部門

五、結論

綜上所述,我們可以看到,在Agent與rag結合后,借助Agent能給rag帶來好處

1)用戶問題的擴寫,補充用戶問題中缺失的部分;

  • 例1:用戶詢問如何充電時,Agent會補充用戶提問中缺失的部分,讓問題更完整;

2)通過Agent觀察、思考機制,識別檢索結果中與問題相關的部分,進行針對性選擇內容來進行解答。不相關的內容不會強行關聯。核心關注與問題的相關性。

3)模型本身的知識,可以根據選擇來使用。示例中,提示詞要求模型只能基于知識庫回復進行解答。限制了模型本身自己的知識的發揮。

對于to B的客服場景問答而言,提供準確可靠的信息是非常重要的。

  • Agent+Rag的組合能夠很好的讓模型,圍繞知識庫中與用戶提問相關的片段來回答。
  • 從而解決掉模型幻覺嚴重,過于發散,回答牛頭不對馬嘴的問題。

本文由 @易俊源 原創發布于人人都是產品經理。未經許可,禁止轉載

題圖來自 Unsplash,基于 CC0 協議

該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!