文章目錄
- 調研:如何實現智能分析助手(Agent)(AutoCoder、FastGPT、AutoGen、DataCopilot)
- 一、交互流程
- 二、數據流程
- 三、架構分類
- 四、開源產品
- 4.1 AutoCoder(知識庫變體)
- 4.2 FastGPT(知識庫實現)
- 4.3 AutoGen(多 Agent 交互)
- 4.4 Data Copilot(任務規劃)
- 5 參考鏈接
調研:如何實現智能分析助手(Agent)(AutoCoder、FastGPT、AutoGen、DataCopilot)
一、交互流程
二、數據流程
企業聊天應用的后端通常遵循以下類似的流程[1]:
1.用戶在自定義聊天用戶界面(UI)中輸入一個提示
2.該提示通過界面代碼發送到后端
3.后端從提示中提取用戶意圖(問題或指令)
4.后端確定需要訪問的數據存儲(與用戶提示相關)(可選)
5.后端查詢相關的數據存儲
6.后端將意圖、相關基礎數據和提示中提供的任何歷史記錄發送給大型語言模型(LLM)
7.后端將結果返回,以便可以在用戶界面上顯示
三、架構分類
上圖的架構分類參考[2,3]:
四、開源產品
4.1 AutoCoder(知識庫變體)
-
利用LLM對元數據進行提取[13],后續將提取出的元數據作為業務知識拼接到prompts中使用
-
適用場景:知識比較少的場景
4.2 FastGPT(知識庫實現)
- 上圖是源碼[14] insertData2DataSet方法的時序圖
4.3 AutoGen(多 Agent 交互)
上圖來源于[9],場景描述如下:
-
多Agent交互:有兩個Agent,其中User Proxy Agent代表人與Assistant Agent交互
-
代碼自動生成:生成在沙箱環境,代碼互相隔離
4.4 Data Copilot(任務規劃)
上圖來源于[10],關注概念:
- self-request:prompt_intent_detection[11]、prompt_task[12]
5 參考鏈接
[1] baseline-openai-e2e-chat
[2] chatbot-architecture
[3] how-do-chatbots-work
[4] AI+BI:結合大語言模型實現對話式的智能報表系統
[5] 從長期記憶的角度談Agent
[6] Prompt調試及知識庫使用調研
[7] NoCoding-BatchDataQualityConfig
[8] 十分鐘用LangChain做一個源代碼閱讀助手
[9] Step By Step AutoGen by Microsoft
[10] Data-Copilot: 大語言模型做你最貼心省事的數據助手
[11] Data-Copilot: prompt_intent_detection
[12] Data-Copilot: prompt_task
[13] AutoCoder: 索引構建
[14] FastGPT:索引構建