大模型實踐分享:Agent融合RAG、大幅降低大模型的幻覺,提供更準確可靠問答體驗
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問答
流程:
- 問題向量化,檢索相似片段
- 將“提示詞+用戶提問+check片段 ”打包發給大模型
- 模型進行解答
問題:當check是用于補充模型的知識,當片段與問題不相關或不足以解釋問題時。模型容易基于自己的理解進行解答,從而胡編亂造。
Agent(Re-act)流程:
re-act agent處理邏輯
流程:
- 用戶:輸入問題
- 觀察:用戶輸入,工具數據的返回
- 思考:內容與問題、目標、流程的相關性
- 行動:回答用戶問題 / 調用工具補充信息
優勢:在Re-act模式下。Agent在解答問題時,會觀察用戶的提問、工具的返回,思考與用戶提問的相關性,通過提示詞約束后,可以始終圍繞著目標、要求來展開。
那當用戶提問時,借助Agent調用知識庫獲取片段問題的片段,再讓Agent來回答用戶的問題
三、融合Agent和Rag融合的方案&流程
OK,現在我們將兩個流程融合在一起。
- 讓Agent來處理用戶的提問,調用rag的能力,獲取chack片段進行觀察思考。
- 同時圍繞用戶的提問來進行解答
- 效果:從而規避掉check中不相關的問題和有干擾的內容,防止模型強行對check內容與用戶提問進行關聯
融合后的流程下:
Agent+Rag
處理流程示例:
用戶提問
1)Agent:第一輪處理理解用戶提問
- Agent觀察:用戶提問
- Agent思考:理解問題與提示詞(目標、任務流程等)關系
- Agent行動:反寫用戶提問。調用知識庫工具
2)Rag:處理(處理部分)
- 問題的向量化
- 向量數據庫的檢索;
- 返回檢索check
3)Agent:第二輪處理,處理知識庫片段內容
- Agent觀察:知識庫返回的知識片段
- Agent思考:理解知識庫片段與用戶問題、提示詞(目標、任務流程等)的關聯性與問題
- Agent行動:回復
四、看下實際處理的結果
進行兩個提問:以某充電樁基于產品手冊用戶問答為例如
- 問題1:“如何充電”,知識庫有對應的答案片段 + 干擾片段
- 問題2:“充電政策是什么”,知識庫中沒有對應的答案片段,會返回不相關內容
問題處理的回復效果如下:
五、處理流程分析
1. 分析用戶提問:如何充電。知識庫返回對應的答案片段 + 干擾片段
第一輪agent處理過程:
1)觀察:如何充電
2)思考:用戶想要了解如何充電,這是一個關于產品使用的基本問題。
3)行動:
- 動作:調用知識庫
- 擴寫問題、補充關鍵信息:”充電樁如何充電”
知識庫處理
1)問題向量化:充電樁如何充電
2)檢索:檢索產品手冊向量庫
3)獲取片段:
- 片段1:# 分布式2路充電樁說明書。重要:充電樁安裝位置需要符合消防要求;設備需要定期巡檢。充電樁需同步安裝漏電保護裝置(建議20A);電動車充電樁使用指南1XXXXXX;
- 片段2:# 免費充電時長設置 適應場景:所有場所,按鍵直充場景, 1.進入方法:通過菜單鍵設置進入,具體設置方法見電子版說明書–>按鍵部分;
- 片段3:# 充到飽套餐使用 注:部分設備有此功能 使用方法: 用微信或支付寶掃一掃設備二維碼,選擇【端口】–>【充滿自停】–>【開啟充電】使用規則: 此功能先扣費,充電結束后自動退回多余金額.
第二輪Agent思考處理:
1)觀察
2)用戶問題:充電樁如何充電
3)參考片段:
- 片段1:# 分布式2路充電樁說明書。重要:充電樁安裝位置需要符合消防要求;設備需要定期巡檢。充電樁需同步安裝漏電保護裝置(建議20A);電動車充電樁使用指南XXXXXX;
- 片段2:# 免費充電時長設置 適應場景:所有場所,按鍵直充場景, 1.進入方法:通過菜單鍵設置進入,具體設置方法見電子版說明書–>按鍵部分;
- 片段3:# 充到飽套餐使用 注:部分設備有此功能 使用方法: 用微信或支付寶掃一掃設備二維碼,選擇【端口】–>【充滿自?!?#8211;>【開啟充電】使用規則: 此功能先扣費,充電結束后自動退回多余金額.
4)思考:根據知識庫的內容,以及用戶問題,充電的步驟是需要將充電插頭接入空閑插座,連接好插座后,選擇以下兩種方式之一啟動充電。掃碼充電:XXXXXX
5)行動:最終回復:根據您的提問,以下是關于如何充電的詳細步驟:
- 將充電插頭接入空閑插座,連接好插座后,選擇以下兩種方式之一啟動充電。
- 掃碼充電:連接好充電器后,用手機微信或支付寶掃一掃設備二維碼。第一步選擇剛才的插座端口,第二步選擇相應的金額,第三步點擊“開始充電”啟動充電。
- 刷卡充電:連接好充電器后,用已授權且有余額的電卡,緊貼設備相應端口的刷卡區(距離小于5cm),聽到“刷卡成功”時,插座端口自動啟動充電。
- 結束充電時,設備會通過微信或支付寶推送給付款人,并提示具體的充電結束扣費金額,充電時間,停止原因等信息。
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);露天安裝時插座和機箱需要防雨、防水; 設備需要定期巡檢。」
- 片段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 協議
該文觀點僅代表作者本人,人人都是產品經理平臺僅提供信息存儲空間服務。
- 目前還沒評論,等你發揮!