当前位置: 首页 > news >正文

动手学Agent:Agent设计模式——构建有效Agent的7种模型

Agent本身的定义也不是绝对的,从LLM到最高等级的Agent,中间是有大量灰度地带的,在Anthropic看来,Agent可以以多种方式定义,有些人将完全自主系统定义为Agent,而另一些团队则将预定义的工作流程定义为Agent。在Anthropic,所有这些变种都定义为Agent系统(Agentic System)。

Workflow和Agents的区别:

  • Workflow:LLMs和工具通过预定义的代码路径编排的系统,也就是用户输入后,它的执行路径,是能够提前预料的,是有人工构建的,像基于Coze、Dify、n8n等平台搭建的应用,绝大多数属于这一类
  • Agents:LLMs动态指导自己的流程和工具使用,典型的,比如Cursor、Windsur、Claude Code这种编程智能体,你发送指令后,后续它会先向你做一些澄清、帮你开始编写一份技术文档还是调用MCP工具来获取一些API使用说明等,没人能确切地知道其执行路径

为什么上一篇介绍完“正统”的Agent设计模式后,这一篇还要介绍一些Workflow呢?这是因为当前落地的绝大多数Agent仍以Workflow形式为主,它有三大显著的优势:

  • 上手很快,门槛比较低,即使没有学过编程,也能拖拽出一个可以用的应用
  • 不同场景有自己固定的成熟流程,使用Workflow是将这些流程融入AI非常低成本的方式
  • 试错成本低,熟悉基本概念后,对于一个不太复杂的场景,一两天就能用Coze、Dify之类的搭建出看起来像样的应用,而构建高度自主化的Agent,则周期长、成本高

Anthropic在原文的多个地方强调寻找尽可能简单的解决方案,这也确实是一个非常务实的建议,毕竟,在没有清晰实现路径的情况下,小步快跑才是更优选择。

1 何时该使用与不该使用Agents

使用LLMs构建应用程序时,建议尽可能找简单的解决方案,仅在需要时增加复杂性。这意味着可能根本不需要构建Agent。Agent系统通常以高延迟和高成本为代价来获得更好的任务性能。

当需要更高的复杂性时,Workflow为定义明确的任务提供可预测性和一致性,当需要大规模的灵活性和模型驱动的决策时,Agents是更好的选择。但是,对于大多数应用,使用检索和In-Context样例优化单个LLM就足够了。

2 代理系统的常见模式

这部分从基础构建块——增强LLM开始,逐步增加复杂性,从简单组合的工作流到自主代理。

2.1 增强LLM

通过检索、工具、记忆等模块来增强LLM

img
在这里插入图片描述

2.2 链式调用

这种模式由一系列Prompt + LLM串联成链式结构组成,链可以将任务分解为一系列步骤,每个LLM调用都会处理前一个调用的输出,可以对任何中间步骤添加检查(下图中的Gate)

img

适用模式的样例:

  • 生成营销副本,然后将其翻译为不同的语言
  • 编写文档的大纲,检查大纲是否满足特定条件,然后根据大纲编写文档

2.3 路由模式

将输入分类,然后将其定向到后续的任务。

对于有些输入,优化一种类型的输入可能会损害其他输入的性能(跷跷板),这种情况适合使用这种模式。

img

适用这种模式的样例:

  • 将不同类型的客户服务查询(一般问题、退款请求、技术支持)引导到不同的下游流程、提示和工具中
  • 将简单/常见问题路由到较小的模型,将困难/不寻常的问题路由到更强大的模型,以优化成本和速度

2.4 并行化

这种模式适合同时处理多个任务,并以编程方式聚合其输出。

img

当任务可以并行以提高速度时,或者需要多个视角或尝试以更高的置信度结果时,这种方式比较有效。

对于有多个考虑因素的复杂任务,将每个考虑因素都由单独的LLM处理时,通常效果会更好。

适用这种模式的样例:

  • 聚合

    • 实施查询护栏,其中一个模型实例处理用户查询,另一个检查用户输入是否存在不当内容
    • 自动化评估,每个LLM调用评估模型在给定Prompt下性能的区别
  • 投票

    • 使用不同的Prompt检查代码是否存在漏洞
    • 评估给定的内容是否不合适,不同的Prompt评估不同的方面或者要求不同的投票阈值来平衡误报和漏报

2.5 编排器-Worker

在这种模式下,中央LLM会动态分解任务,然后将其委派给worker LLMs,并合并结果。

这种Workflow适合无法预测所需子任务的复杂任务(例如,在编码过程中,需要修改的文件数量和每个文件要修改的内容很可能依赖于任务)。

img

它和并行模式虽然在拓扑结构上类似,但主要的区别是灵活性——子任务不是预定义的,而是编排模块根据特定输入确定的。

适用这种模式的样例:

  • 每次对多个文件进行复杂更改的编码产品
  • 涉及从多个来源收集和分析信息以查找可能的相关信息的搜索任务

2.6 评估-优化模式

在这种工作流中,一个LLM调用负责生成,而另一个LLM调用在循环中提供评估和反馈。

img

当有明确的评估标准,并且迭代优化提供可衡量的价值时,此工作流特别有效,这种模式已经有自主Agent的雏形了,把Evaluator部分加上环境反馈,这基本上就跟上篇文章介绍的ReAct很像了。

适用这种模式有两个判断标准:

  • 反馈可以由人类清晰表述时,LLM的输出根据反馈可以明显得到改善
  • LLM可以提供这样的反馈

这类似人类作家在制作精美的文档时可能经历的迭代协作过程。

适用这种模式的样例:

  • 文学翻译,其中有细微的差别,翻译LLM最初可能无法捕获到,但评估LLM可以提供有用的批评
  • 复杂的搜索任务,需要多轮搜索和分析以收集全面的信息,评估LLM可以决定是否需要进一步搜索

下面是使用Dify搭建的一个反思翻译的流程,也就是吴恩达之前开源的反思翻译项目的Dify实现:

img

下面是实际翻译效果,从翻译结果来看,反思翻译质量明显是高于初始翻译的。

img

2.7 Agents

随着 LLM 在关键能力(理解复杂输入、参与推理和规划、可靠地使用工具以及从错误中恢复)方面的成熟,人工智能正在生产中崭露头角。Agents通过人类用户的命令或与人类用户的互动讨论开始工作。一旦任务明确,Agents就会独立进行规划和操作,并有可能返回人类获取进一步的信息或判断。在执行过程中,Agents从环境中获取每一步的 “基本事实”(如工具调用结果或代码执行情况)以评估其进度至关重要。然后,代理可以在检查点或遇到阻碍时暂停,以获得人工反馈。任务通常会在完成后终止,但通常也会包含停止条件(如迭代的最大次数)以保持控制。

代理可以处理复杂的任务,但它们的实现通常很简单。它们通常只是基于环境反馈循环使用工具的 LLM。因此,清晰周到地设计工具集及其文档至关重要。

img

何时使用Agents:agents通常用于难以或不可能预测所需步骤以及无法固定路径进行硬编码的开放问题。LLM可能会运行多个回合,并且用户需要对其决策有一定程度的信任。Agents的自主性使得它成为可信环境中扩展任务的理想选择。

agents的自主性意味着更高的成本,并且可能会使错误复杂化。建议在沙盒环境中进行广泛测试,并使用适当的防护机制。

适用这种模式的样例:

(例来自Anthropic)

  • 解决SWE-bench任务,该任务涉及根据任务描述对许多文件进行编辑
  • computer use参考实现,其中Claude使用计算机完成任务

img

3 模式的组合

上面这7种模式可以看作是原子模块,可以根据实际情况修改和组合以适应不同场景。

和任何LLM功能一样,成功的关键是衡量在实际场景中的效果,并要切记:只有在能够明显改善结果时才应考虑增加复杂性。

最后

选择AI大模型就是选择未来!最近两年,大家都可以看到AI的发展有多快,我国超10亿参数的大模型,在短短一年之内,已经超过了100个,现在还在不断的发掘中,时代在瞬息万变,我们又为何不给自己多一个选择,多一个出路,多一个可能呢?

与其在传统行业里停滞不前,不如尝试一下新兴行业,而AI大模型恰恰是这两年的大风口,整体AI领域2025年预计缺口1000万人,人才需求急为紧迫!

由于文章篇幅有限,在这里我就不一一向大家展示了,学习AI大模型是一项系统工程,需要时间和持续的努力。但随着技术的发展和在线资源的丰富,零基础的小白也有很好的机会逐步学习和掌握。

【2025最新】AI大模型全套学习籽料(可白嫖):LLM面试题+AI大模型学习路线+大模型PDF书籍+640套AI大模型报告等等,从入门到进阶再到精通,超全面存下吧!

获取方式:有需要的小伙伴,可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】
包括:AI大模型学习路线、LLM面试宝典、0基础教学视频、大模型PDF书籍/笔记、大模型实战案例合集、AI产品经理合集等等

在这里插入图片描述
大模型学习之路,道阻且长,但只要你坚持下去,一定会有收获。本学习路线图为你提供了学习大模型的全面指南,从入门到进阶,涵盖理论到应用。在这里插入图片描述
L1阶段:启航篇|大语言模型的基础认知与核心原理

L2阶段:攻坚篇|高频场景:RAG认知与项目实践

L3阶段:跃迀篇|Agent智能体架构设计

L4阶段:精进篇|模型微调与私有化部署

L5阶段:专题篇|特训集:A2A与MCP综合应用 追踪行业热点(全新升级板块)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
AI大模型全套学习资料【获取方式】

在这里插入图片描述


文章转载自:

http://cxl705jb.wtcyz.cn
http://rwwiwFLd.wtcyz.cn
http://DmOen6il.wtcyz.cn
http://JG2E7WO8.wtcyz.cn
http://meS32byq.wtcyz.cn
http://rwvbbk6g.wtcyz.cn
http://NZYwYOzl.wtcyz.cn
http://0FZGsnu8.wtcyz.cn
http://1naZswEx.wtcyz.cn
http://YxkpTv2Q.wtcyz.cn
http://9smZWfLZ.wtcyz.cn
http://Z8VmAC3x.wtcyz.cn
http://zd9XKiYY.wtcyz.cn
http://xXupegcA.wtcyz.cn
http://QdSoCCHM.wtcyz.cn
http://8IdW9z5u.wtcyz.cn
http://ObzGKMZK.wtcyz.cn
http://ZGN5zonW.wtcyz.cn
http://F2rejP5K.wtcyz.cn
http://7qXfPYlJ.wtcyz.cn
http://kjpXiRQX.wtcyz.cn
http://0QN8j8lm.wtcyz.cn
http://QBk2gaDl.wtcyz.cn
http://Ooz5vhZ5.wtcyz.cn
http://fVLmjQcs.wtcyz.cn
http://z9yQ9uxU.wtcyz.cn
http://DYJA4tx7.wtcyz.cn
http://sg00vNv0.wtcyz.cn
http://NBm5ot6g.wtcyz.cn
http://J7r0Mnt9.wtcyz.cn
http://www.dtcms.com/a/387048.html

相关文章:

  • 苍穹外卖day01
  • 《LINUX系统编程》笔记p14
  • 可直接落地的pytest+request+allure接口自动化框架
  • 【精品资料鉴赏】267页政务大数据资源平台建设方案
  • 面试前端遇到的问题
  • 【深度学习计算机视觉】05:多尺度目标检测——从理论到YOLOv5实践
  • STM32 通过USB的Mass Storage Class读写挂载的SD卡出现卡死问题
  • 【Nginx开荒攻略】Nginx基本服务配置:从启动到运维的完整指南
  • 《漫威争锋》公布开发者愿景视频:介绍1.5版本的内容
  • Isight许可管理与其他软件集成的方法
  • 论文提纲:学术写作的“蓝图”,如何用AI工具沁言学术高效构建?
  • 快速解决云服务器的数据库PhpMyAdmin登录问题
  • 知识更新缺乏责任人会带来哪些风险
  • 容器化部署番外篇之Nexus3搭建私有仓库09
  • 计算机视觉(opencv)实战二十四——扫描答题卡打分
  • 居住证申请:线上照片回执办理!
  • Roo Code 的差异_快速编辑功能
  • 【深度学习】基于深度学习算法的图像版权保护数字水印技术
  • mcp初探
  • 深入C++对象生命周期:从构造到析构的奥秘
  • 视频上传以及在线播放
  • Powershell and Python are very similar
  • 鸿蒙Next离线Web组件实战:轻松实现离线加载与缓存优化
  • deepseek原理
  • 力扣复盘 之“移动零”
  • 任务管理系统常用平台整理:适合多项目团队
  • docker安装华为openGauss数据库
  • AI的设计图,神经网络架构
  • abaqus仿真完后如何把受力曲线显示出来
  • 核心硬件面试题目详解和回答策略之1