文章目录
- 调研:如何实现智能分析助手(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:索引构建