大模型上层Agent系统思考
近期使用阿里云-百炼
、百度智能云-AppBuilder
平台以及工作任务后有感而发,思考LLM落地到实际业务中该如何设计应用层功能点,如何抽离出通用逻辑,所以书写此篇文章,构建LLM上层零代码(智能体应用)/低代码(工作流应用)行业应用功能架构:
整体架构:
-
最下层:底座行业大模型
-
中间层:行业应用构建所需属性
- Prompt工程:根据不同Agent的能力职责不同,可以指定其:行业角色限定、工作职责边界、输出内容要求等。
- 工具能力:不同Agent所调用的工具能力不同:行业数据挖掘类小模型、行业视觉类小模型、业务逻辑算法等。
- 知识库能力:有的应用需要知识库,有的不需要,且不同Agent所需要灌入的知识库范围不同,这块设计到行业内知识库构建流程:数据收录、不同格式文档支持、切片方式、embedding模型、检索召回方式等。
- 应用评测:不同的应用配置会产生不同的效果,所以需要针对具体应用输入一轮问答对,评价其应用效果如何,这块可调用大模型进行评价。
- 数据调优:当希望有些字眼需要上层应用按照规定的标准答案回答,或者通过某种规则使其按照标准答案回答可以使用。
-
最上层:创建应用的不同实现方式
- 智能体应用:依靠大模型的
自主决策能力
,根据用户问题自主选择使用工具、知识库等能力。举例:行业知识RAG问答。
- 智能体应用:依靠大模型的
- 工作流应用:按照
人工编排方式
进行对话,串行执行业务场景的能力,链路中可增加大模型、知识库、API接口、意图识别、文本处理、条件判断、工具、代码编写、信息收集(咨询用户补充信息)、全局跳转(用户回复超出流程范围)、消息输出(避免工作流执行时间过长而无结果输出)。举例:业务模块数据分析。
- 多智能体协作应用:
融合智能体应用和工作流应用
,使得应用能力综合。举例:工业设备运维的业务场景。
实际落地实践过程中当然会更复杂,模块化设计、错误处理、安全考虑等等。