夕小瑶科技说 2024年12月22日
Claude 官方发布《Agent 构建指南》,附 PDF 下载
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

Anthropic发布关于Agent的博客文章,强调AI开发应遵循‘Less is More’原则,介绍了Agent的定义、分类、框架及多种工作流模式,阐述了构建有效智能体的开发路线和核心原则。

Agent的定义及发展历程,包括其现代定义的形成和相关概念的提出。

Anthropic将Agent系统分为工作流和智能体两大类,并说明了其特点和适用场景。

介绍了多种Agent框架及工作流模式,如提示链、路由、并行化等。

强调构建有效智能体的由简至繁的开发路线及核心原则,如优先使用增强型LLM。

原创 小鹿 2024-12-22 16:59 四川

简单才是王道,Anthropic 的智能体开发的“反直觉”法则

Anthropic 最新发布了一篇关于 Agent 的博客文章,得出了一个引人深思的结论:

AI 开发的未来,在于“Less is More”。

在公众号后台发送口令“1222”即可获取完整 PDF。

接下来小鹿和大家一起看看智能体开发的“大道至简”之道。

Agent 的定义

提到 Agent,很多人以为它是 LLM 的产物,但其实不是。

Agent 的现代定义,是在 20 世纪 50 年代伴随着 AI 发展逐渐形成的,究其根源,可以追溯到更早的哲学思考和科学探索。

在 1950 年,阿兰·图灵在其论文《计算机器与智能》中提出了“高度智能有机体”的概念,并引入了著名的图灵测试。

1972 年,美国学者 Marvin Minsky 在麻省理工学院建立了人工智能实验室,并正式提出了“代理”(Agent)的概念,认为 AI Agent 应该具备感知世界、进行推理和执行动作的能力。

Anthropic 将 Agent 系统分为两大类:工作流 (Workflows)智能体 (Agents)

关键区别在于 LLM 是否能够动态控制自身流程和工具使用。

框架的迷思:回归 LLM API 本质

在构建 LLM 应用时,应遵循“简单至上”的原则:能简单就简单,只有在必要的时候才增加复杂度。

只有当简单的方案无法满足需求时,才考虑引入更复杂的 Agent 系统。因为 Agent 系统往往以更高的延迟和成本为代价,换取更好的任务性能。

那如果一定要用呢?

但其实,对于大多数应用来说,优化一下单大语言模型的调用,再结合一些检索和上下文的例子,通常就足够了。

就像人类平时解决问题一样,先用最简单的方法试试,不一定非要用复杂的工具。

市面上涌现出各种 Agent 框架,比如:

这些框架确实简化了 LLM 调用、工具定义等基础任务,氮素,同时也引入额外的抽象层,这可能会模糊底层的提示和响应,从而使调试更加困难。

Anthropic 的建议开发者,从直接调用大语言模型的 API 开始:

“许多模式可以用几行代码实现。如果你确实要使用框架,请确保你理解底层的代码。对底层原理的错误假设是客户错误的常见来源”。

大道至简,Less is More

Anthropic 特别强调了 "简单性" 这一核心理念,总结了构建有效智能体的由简至繁的开发路线,

优先使用基础构建块:增强型 LLM(具备检索、工具使用、记忆等能力),其次是工作流模式:提示链(Prompt Chaining)、路由(Routing)、并行化(Parallelization)、编排者-执行者(Orchestrator-workers)、评估者-优化者(Evaluator-optimizer),最后是自主 Agent,能够独立规划和执行复杂任务。

Agent 系统的基础是增强型 LLM,它具备检索、工具和记忆等能力。

从最基础的构建模块增强型 LLM 入手,逐步增加复杂性,从简单的组合式工作流程过渡到自主智能体群。

应用的基石:增强型 LLM

最简单的方法无疑是增强型语言模型。

通过检索、工具和记忆等机制扩展大语言模型的能力,这样大语言模型能够主动运用这些能力——生成自己的搜索查询、选择合适的工具,并决定保留哪些信息。

大语言模型可以增强的两个关键点:

Anthropic 提出目前市面上已经有很多方法可以实现这些增强功能,但是他们最推荐的还是自家的上下文协议(Model Context Protocol,MCP),该协议允许开发者通过简单的客户端实现与不断增长的第三方工具生态系统集成。

小鹿贴心的给大家准备好了 MCP 的介绍:

Model Context Protocol 介绍:
https://www.anthropic.com/news/model-context-protocol

提示链 (Prompt Chaining)

这种方法是将一个任务分解成一系列步骤,其中的每个大语言模型的调用都会处理前一个调用的输出,这样可以在任何中间步骤中添加程序化的检查(见下图中的“门控 Gate”),以确保流程仍在正轨上。

如果任务能够轻松且清晰地分解为一系列固定的子任务,那么这个工作流将非常适用!

它通过将复杂任务分解为更简单的步骤,让每个大语言模型调用更容易处理 ~ 氮素,这确实是在牺牲一些时效性的情况下,换取更高的准确性。

路由 (Routing)

这种方法适用于对输入进行分类,并将其引导至相应的专业化后续任务的场景中。当你要处理的任务很复杂,而且可以分成好几个不同的类别,每个类别最好用不同的方法处理时,就可以用路由工作流。

路由工作流适用的场景:

并行化 (Parallelization)

这种模式是考虑到大语言模型可以同时执行多个任务,并通过程序化方式整合结果。因此,这种并行化工作流就可以用下面两种方式让大语言模型合作:

当子任务可以并行执行以提升速度,或需要从多个角度或多次尝试来提高结果的可靠性时,并行化工作流非常有效。因为,对于涉及多方面考虑的复杂任务,这种模式通常能获得更好的效果!

并行化适用的场景:

协调者-工作者模式

在这种模式下,一个中央大语言模型会动态地分解任务,并将这些子任务分配给不同的工作者模型,最后再整合所有工作者的结果。这个工作流程特别适用于那些无法预先确定子任务的复杂场景(例如,在编程中,需要修改的文件数量以及每个文件的修改内容通常取决于具体的任务)。

虽然在结构上与并行化相似,但关键区别在于其高度的灵活性——子任务预先不设定,由协调器根据具体的输入动态决定的。

协调器-工作者模式有用的场景:

评估器-优化器模式

在这种模式下,一个大语言模型负责调用生成响应,而另一个大语言模型调用则在一个循环中提供评估和反馈。当有明确的评估标准,并且迭代改进能提供可衡量的价值时,这个工作流程会特别有效。

两个适合这种工作流模式的标志:

Anthropic 形容,类似于人类精雕细琢的过程 ~

评估器-优化器有用的示例:

智能体:自主决策的未来

当 LLM 在理解复杂输入、推理规划、可靠使用工具和从错误中恢复等关键能力上成熟时,智能体开始在生产中崭露头角。智能体可以处理开放式问题,无需预先定义步骤,并能根据环境反馈自主决策。

智能体在执行任务的过程中,经常需要从环境中获取实际的执行结果(例如工具调用结果或代码执行的输出),以此来判断下一步行动并检查任务进度。

因此,系统通常设计了在特定节点或遇到困难时暂停的功能,以便引入人工干预或反馈。任务通常在完成后自动结束,但为了防止无限循环或资源耗尽,通常也会设置停止条件,例如限制最大迭代次数。

当面对步骤不固定、执行路径无法预先规划的复杂问题时,智能体群能够发挥其优势。凭借自主行动的能力,智能体群尤其适合在可控的环境中高效处理大规模任务。

由于智能体群通常通过迭代式推理和执行来完成任务,因此用户需要对其决策能力建立信任。特别是在需要根据任务描述对多个文件进行协同编辑的场景中,智能体群就能展现出强大的能力。

AI 开发的未来,在于“Less is More”

Anthropic 总结了构建有效智能体的三个核心原则:简单、透明、精心设计

    保持设计的简洁性:避免过度复杂化。

    优先考虑透明度:明确展示智能体的规划步骤。

    精心设计智能体-计算机接口 (ACI):通过完善的工具文档和测试。

这篇博客的核心思想是:在 LLM 领域,成功并非取决于构建最复杂的系统,而是构建最适合需求的系统。 我们应该从简单的提示开始,通过全面的评估进行优化,只有当简单的解决方案不足以满足需求时,才考虑引入多步骤的 Agent 系统。

在将智能体系统投入生产环境时,切记要毫不犹豫地减少抽象层,并使用基本组件进行构建,这样构建出来的智能体系统才是最高效简洁强大的!

最后,在 AI 技术快速发展的今天,这些原则将帮助我们构建出真正可靠、可维护且受用户信任的 Agent 系统。在追求技术创新的同时,记住一点:最好的方案往往是最简单的方案。

在公众号后台发送口令“1222”即可获取完整 PDF。


阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

AI开发 Agent系统 工作流模式 Less is More 智能体
相关文章