近期阅读了Anthropic发布的最新文章《Building effective Agents》, 文章分享了他们对于如何高效构建Agents的相关思考, 看完后获得了一些收获, 与你分享。
01 Anthropic 对 Agent 的定义
Agent是一个架构或者是系统
它即被定义为一个能够较长时间自主独立运行,通过调用各种工具来完成复杂任务的自主系统,也被定义为通过遵循预定义工作流的预设系统。
所以Anthropic对Agent系统进行了两类划分:
1. Agents: 根据任务复杂程度,由LLM动态决定处理流程来自动完成任务,适用于“开放性与创造性场景”,如智能客服助理:能够根据客户提出的多样化问题,动态选择合适的知识库和工具,提供个性化的解决方案。
2. Workflow: 基于预设的编排路径,在每个节点中准确地调用LLM节点和相关工具节点,从而完成复杂任务,适用于“标准化与流程化场景”,如客户评论批量处理:通过预设的工作流程收集客户评论,判断评论的情绪,再自动生成评论的回复文案。
02 Workflow的构建方法
1. Prompt chainning (提示链编排)
定义:提示链的方法是将任务分解为多个子任务,每一个节点输入的信息都是前一个节点的输出内容。
典型场景:复杂文本生成,首先生成主题的大纲内容,然后检查大纲是否符合标准,接着根据大纲内容逐段撰写,每一段都基于前面的内容,以确保主题连贯的一致性。
2. Routing (路由编排)
定义:路由的编排方式,类似于Coze的意图识别节点,能够将输入的信息进行分类,并将其定向专到特定的处理路径节点。
典型场景:智能客服系统,当用户提出问题时,系统先判断问题的意图,再将其分流至响应的回复模块,比如: 订单查询,技术支持,功能说明,投诉建议等处理路径。
3. Parallelization (并行编排)
定义:并行编排的方式是将LLM同时处理同一项任务,并在聚合器中整合输出结果,从而提高任务处理的准确性和全面性。
如图所示,开始节点为用户输入的信息,将用户输入的信息同时输入至三个大语言模型节点进行并行处理,并将每个节点的输出结果进行聚合汇总,最终进行整体输出。
典型场景:内容合规审查,多个大语言模型分别检测内容中是否存在违规,敏感或不良信息,再由聚合器进行综合判断,以提高审核的可靠性。
并行编排的优势:
- 将复杂任务拆分为子任务后,不仅提高输出质量,同时通过并行处理的方式,能够提升输出的响应速度
- 支持同一个任务多次获得不同的输出结果,在聚合器中选择重复输出最高的结果为最终输出的内容,能够有效提升输出信息的可信度
4. Orchestrator-workers (协调器编排)
定义:协调器编排的方式是由前置的大语言进行动态的任务分解,并将分解后的子任务派给其他的大语言模型进行处理,最终通过整合子任务输出结果的方式,进行最终答案的输出。
这个编排结构是不是很像路由编排与并行编排的结合体,他们之间还是有很多本质差异的,比如和路由编排的差异在于:
Routing(路由编排)主要是一种分类机制,对输入的任务请求进行分类,然后再将其导向专门的任务处理流程,核心是做子流程的分离,使不同类型的任务能够被高效地分配到最适合处理的路径上,提高系统的整体效率 (适用于明确不同任务类型的场景)。
Orchestrator-workers(协调器编排)核心是由模型对复杂任务进行动态拆解与分配,适用于任务复杂,且任务的执行顺序不可预测的使用场景。
典型场景:合同审查,前置的大语言模型将合同审查任务拆解为: 条款识别,风险评估,合规性审查,修改建议等多个子任务,并将这些子任务分配给擅长处理响应任务的垂直模型,最后再通过大语言模型将输出内容进行整合,生成全面的审查报告
03 Agent设计原则
最后和大家分享一下Anthropic总结的Agent编排原则,我认为有价值的原则有两点/
原则一,优先用最简单的方式搭建,减少Agent架构的复杂性
这一点与做产品类似,先基于需求做最简单的MVP,不需要一上来就构建非常复杂的工作流,系统越复杂,不仅输出的时长更久,而且成本也更高,所以优先用简单的方式来搭建,去解决核心需求/
原则二,将Agent规划执行的步骤展示给用户,从而增加系统的可理解性和可信度
比如协调器的编排方式,可以让用户直观地查看自动分解的任务结果和任务推理过程,从而增强输出内容的可信度。
参考资料
Building effective Agents,from: Anthropic
Url:https://www.anthropic.com/research/building-effective-agents
作者:在野在也,公众号:在野在也
本文由 @在野在也 原创发布于人人都是产品经理。未经作者许可,禁止转载。
题图来自Unsplash,基于CC0协议
该文观点仅代表作者本人,人人都是产品经理平台仅提供信息存储空间服务。