64张图,看懂AI Agent的核心技术与未来

LLM Agents指南

LLM Agents正变得越来越普及,似乎正在取代我们熟悉的对话式LLM。但是Agents本身其实并不容易,它往往需要多个组件协同工作。

img

在本文中,通过60多张定制可视化图,你将探索LLM Agents领域、其主要组件以及多Agent框架。

什么是LLM Agents?

要理解LLM Agents,让我们首先探索LLM的基本能力。传统上,LLM所做的仅仅是下一个token的预测。

img

通过连续采样多个token,我们可以模拟对话,并使用LLM为我们的查询提供更全面的答案。

img

然而,当我们继续对话时,任何LLM都会展示其主要缺点之一:它不记得对话内容!

img

LLM在执行许多其他任务时也常常失败,包括基本的数学运算,如乘法和除法:

img

这是否意味着LLM很垃圾?当然不是!LLM无需具备所有能力,因为我们可以通过外部工具、记忆和检索系统来弥补其缺点。

通过外部系统,LLM的能力可以得到增强。Anthropic称之为增强型LLM

img

例如,面对数学问题时,LLM可能会决定使用合适的工具(如计算器)。

img

那么这种 增强型LLM 是否就是Agent?不完全是,但也有一些相似之处…

让我们从Agents的定义开始:

Agent是任何可以被视为通过传感器感知其环境并通过执行器作用于该环境的事物。

— Russell & Norvig,《人工智能:现代方法》(2016)

Agents与环境交互,通常由几个重要组件组成:

  • 环境 — Agent交互的世界
  • 传感器 — 用于观察环境
  • 执行器 — 用于与环境交互的工具
  • 效应器 — 决定如何从观察转化为行动的"大脑"或规则

img

这个框架适用于与各种环境交互的各类Agents,比如与物理环境交互的机器人或与软件交互的AI Agents。

我们可以稍微概括这个框架,使其更适合 增强型LLM。

img

使用 增强型LLM,Agent可以通过文本输入观察环境(因为LLM通常是文本模型),并通过使用工具(如网络搜索)执行特定操作。

为了选择要采取的行动,LLM Agent有一个重要组件:规划能力。为此,LLM需要能够通过思维链等方法进行"推理"和"思考"。

img

利用这种推理行为,LLM Agents将规划出需要采取的必要行动。

img

这种规划行为使Agent能够理解背景(LLM)、规划下一步(规划)、采取行动(工具)并跟踪已采取的行动(记忆)。

img

根据系统的不同,你可以使用具有不同自主程度的LLM Agents。

img

根据不同人的观点,一个系统越是由LLM决定其行为方式,就越具有"自主性"。

在接下来的部分,我们将通过LLM Agent的三个主要组成部分——记忆工具规划——探讨各种自主行为方法。

记忆

LLM是健忘的系统,或更准确地说,在与它们交互时根本不执行任何记忆行为。

例如,当你向LLM提出一个问题,然后跟进另一个问题时,它不会记得前一个问题。

img

我们通常将此称为短期记忆,也称为工作记忆,它作为(接近)即时上下文的缓冲区。这包括LLM Agent最近采取的行动。

然而,LLM Agent还需要跟踪可能数十个步骤,而不仅仅是最近的行动。

img

这被称为长期记忆,因为LLM Agent理论上可能需要记住数十甚至数百个步骤。

img

让我们探索几种为这些模型提供记忆的技巧。

短期记忆

使短期记忆成为可能的最直接方法是使用模型的上下文窗口,这本质上是LLM可以处理的token数量。

img

上下文窗口通常至少有8192个token,有时可以扩展到数十万个token!

大的上下文窗口可用于将完整的对话历史作为输入提示的一部分进行跟踪。

img

只要对话历史适合LLM的上下文窗口,这种方法就可行,是模拟记忆的好方法。然而,与其真正记忆对话,我们实际上是在告诉LLM这个对话是什么。

对于上下文窗口较小的模型,或当对话历史较大时,我们可以使用另一个LLM来总结迄今为止发生的对话。

img

通过持续总结对话,我们可以保持会话体积小。这将减少token数量,同时只跟踪最重要的信息。

长期记忆

LLM Agents的长期记忆包括需要长期保留的Agent过去的行动空间。

实现长期记忆的常见技术是将所有先前的交互、行动和对话存储在外部向量数据库中。

要构建这样的数据库,首先需要将对话嵌入到捕捉其含义的数值表示中。

img

建立数据库后,我们可以嵌入任何给定的提示,并通过比较提示嵌入与数据库嵌入来找到向量数据库中最相关的信息。

img

这种方法通常被称为检索增强生成(RAG)。

长期记忆还可以涉及保留不同会话的信息。例如,你可能希望LLM Agent记住它在以前会话中所做的任何研究。

不同类型的信息也可以与不同类型的记忆相关联。在心理学中,有许多类型的记忆需要区分,但《语言Agents认知架构》论文将其中四种与LLM Agents联系起来。

img

这种区分有助于构建主体框架。语义记忆(关于世界的事实)可能存储在与工作记忆(当前和最近情况)不同的数据库中。

工具

工具允许LLM与外部环境(如数据库)交互或使用外部应用程序(如自定义代码运行)。

img

工具通常有两种用途:获取数据以检索最新信息和采取行动,如安排会议或订购食物。

要实际使用工具,LLM必须生成与该工具API匹配的文本。我们倾向于期望可以格式化为JSON的字符串,以便轻松提供给代码解释器

img

请注意,这不限于JSON,我们也可以在代码本身中调用工具!

你还可以生成LLM可以使用的自定义函数,如基本乘法函数。这通常被称为函数调用

img

如果提示正确且全面,某些LLM可以使用任何工具。工具使用是大多数当前LLM都具备的能力。

img
访问工具的更稳定方法是对LLM进行微调(稍后会详细介绍!)。

如果主体框架是固定的,工具可以按特定顺序使用…

img

…或者LLM可以自主选择使用哪种工具以及何时使用。LLM Agents本质上是修改LLM的生成序列(让LLM自主选择行动/工具,将结果在回馈到生成序列中)。

img

换句话说,中间步骤的输出被反馈到LLM中以继续处理。

img

Toolformer

工具使用是增强LLM能力并弥补其缺点的强大技术。因此,近几年关于工具使用和学习的研究迅速增加。

img
随着对工具使用的关注增加,LLM预计将变得更加强大。

这些研究不仅涉及指令要求LLM使用工具,还包括专门训练它们使用工具。

最早采用这种技术的是Toolformer,一种训练用于决定调用哪些API以及如何调用的模型。

它使用[]标记来指示调用工具的开始和结束。当给定提示,例如"5乘以3等于多少?",它开始生成标记,直到达到[标记。

img
之后,它生成标记直到达到标记,表示LLM停止生成标记。

img

然后,工具被调用,输出会被添加到迄今为止生成的标记中。

img

]符号表示LLM现在可以继续生成标记(如有必要)。

Toolformer通过仔细生成包含许多工具用例的数据集来创建这种行为,模型可以在这些数据集上进行训练。对于每个工具,手动创建少样本提示并用于采样使用这些工具的输出。

img

输出基于工具使用的正确性、输出和损失减少进行过滤。由此产生的数据集用于训练LLM遵循这种工具使用格式。

自Toolformer发布以来,出现了许多令人兴奋的技术,如可以使用数千种工具的LLM(ToolLLM)或可以轻松检索最相关工具的LLM(Gorilla)。

无论如何,大多数当前LLM(2025年初)都已经过训练,可以通过JSON生成轻松调用工具(如我们之前所见)。

模型上下文协议(MCP)

工具是主体框架的重要组成部分,允许LLM与世界交互并扩展其能力。然而,当你有许多不同的API时,启用工具使用变得麻烦,因为任何工具都需要:

  • 手动跟踪并提供给LLM
  • 手动描述(包括其预期的JSON模式)
  • 当其API变更时手动更新

img

为了使工具更容易在任何给定的主体框架中实现,Anthropic开发了模型上下文协议(MCP)。MCP标准化了对天气应用和GitHub等服务的API访问。

它由三个组件组成:

  • MCP Host — 管理连接的LLM应用程序(如Cursor)
  • MCP Client — 与MCP Host保持1:1连接
  • MCP server — 向LLM提供上下文、工具和功能

img

例如,假设你希望LLM应用程序总结你仓库的最新5次提交。

MCP主机(与客户端一起)首先调用MCP服务器询问有哪些工具可用。

img

LLM接收信息并可能选择使用工具。它通过主机向MCP服务器发送请求,然后接收结果,包括使用的工具。

img

最后,LLM接收结果并可以解析给用户的答案。

img

这个框架通过连接到任何LLM应用程序都可以使用的MCP服务器,使创建工具变得更容易。因此,当你创建一个与GitHub交互的MCP服务器时,任何支持MCP的LLM应用程序都可以使用它。

规划

工具使用允许LLM增强其能力。它们通常使用类似JSON的请求进行调用。

但在主体系统中,LLM如何决定使用哪种工具以及何时使用?

这就是规划发挥作用的地方。LLM Agents中的规划涉及将给定任务分解为可执行的步骤。

img

这个计划使模型能够迭代反思过去的行为并在必要时更新当前计划。

img

要在LLM Agents中启用规划,让我们首先看看这种技术的基础,即推理。

推理

规划可执行步骤需要复杂的推理行为。因此,LLM必须能够展示这种行为,然后才能规划任务的下一步。

“推理型"LLM倾向于在回答问题前"思考”。

img

这里使用"推理"和"思考"这些术语有些宽泛,因为我们可以争论这是否是类似人类的思考,还是仅仅将答案分解为结构化步骤。

这种推理行为大致可以通过两种选择启用:对LLM进行微调或特定的提示工程。

通过提示工程,我们可以创建LLM应遵循的推理过程示例。提供示例(也称为少样本提示)是引导LLM行为的绝佳方法。

img

这种提供思维过程示例的方法被称为思维链,它能够实现更复杂的推理行为。

思维链也可以在没有任何示例(零样本提示)的情况下启用,只需简单陈述"让我们一步一步思考"。

img

在训练LLM时,我们可以给它提供足够数量的包含类似思考例子的数据集,或者LLM可以发现自己的思考过程。

一个很好的例子是DeepSeek-R1,它使用奖励来引导思考过程的使用。

img

推理与行动

在LLM中启用推理行为很好,但不一定使其能够规划可执行步骤。

我们迄今为止关注的技术要么展示推理行为,要么通过工具与环境交互。

img

例如,思维链仅专注于推理。

结合这两个过程的首批技术之一被称为ReAct(推理和行动)。

img

ReAct通过精心设计的提示词工程来实现这一点。ReAct提示描述了三个步骤:

  • 思考 - 关于当前情况的推理步骤
  • 行动 - 要执行的一组行动(例如,工具)
  • 观察 - 关于行动结果的推理步骤

提示本身相当直接。

img
LLM使用这个提示(可作为系统提示使用)来引导其行为,使其在思考、行动和观察的循环中工作。

img

它会继续这种行为,直到某个行动指定返回结果。通过对思考和观察的迭代,LLM可以规划行动、观察其输出并相应调整。

因此,与具有预定义固定步骤的Agents相比,这个框架使LLM能够展示更多自主的主体行为。

反思

没有人(甚至使用ReAct的LLM)能完美执行每项任务。只要你能对过程进行反思,失败就是过程的一部分。

这个过程在ReAct中缺失,而Reflexion正是解决这一问题的技术。Reflexion是一种使用语言强化帮助agents从先前失败中学习的技术。

该方法假设三种LLM角色:

  • 执行者 — 根据状态观察选择并执行行动。我们可以使用思维链或ReAct等方法。
  • 评估者 — 对执行者产生的输出进行评分。
  • 自我反思 — 对执行者采取的行动和评估者生成的分数进行反思。

img

添加记忆模块来跟踪行动(短期)和自我反思(长期),帮助Agent从错误中学习并确定改进的行动。

一种类似而优雅的技术是SELF-REFINE,其中重复进行细化输出和生成反馈的行动。

img

同一个LLM负责生成初始输出、细化输出和反馈。

img

有趣的是,这种自我反思行为(Reflexion和SELF-REFINE)与强化学习非常相似,后者根据输出质量给予奖励。

多Agent协作

我们探讨的单Agent存在几个问题:工具过多可能使选择复杂化,上下文变得过于复杂,任务可能需要专业化。

相反,我们可以转向多Agent框架,其中多个agents(每个都有访问工具记忆规划的能力)相互交互并与其环境交互:

img

这些多Agent系统通常由专业Agents组成,每个都配备自己的工具集,并由监督者监督。监督者管理Agents之间的通信,并可以将特定任务分配给专门的Agents。

img

每个Agent可能有不同类型的可用工具,但也可能有不同的记忆系统。

实际上,有数十种多Agent架构,其核心包含两个组件:

  • Agent初始化 — 如何创建单个(专业)Agents?
  • Agent编排 — 如何协调所有Agents?

img

让我们探索各种有趣的多Agent框架,并强调这些组件是如何实现的。

人类行为的交互模拟

可以说最有影响力,也是非常酷的多Agent论文之一是"生成式Agents:人类行为的交互模拟"。

在这篇论文中,他们创建了模拟可信人类行为的计算软件agents,称为生成式Agents。

img

给每个生成式Agent的档案使它们以独特的方式行动,并帮助创建更有趣、更动态的行为。

每个Agent初始化时都有三个模块(记忆规划反思),这与我们之前在ReAct和Reflexion中看到的核心组件非常相似。

img

记忆模块是这个框架中最重要的组件之一。它存储规划和反思行为,以及迄今为止的所有事件。

对于任何给定的下一步或问题,系统会检索记忆并根据其近期性、重要性和相关性进行评分。得分最高的记忆将与Agent共享。

img

这些组件共同允许Agents自由地进行活动并相互交互。因此,几乎没有Agent编排,因为它们没有要完成的特定目标。

img

交互式演示的注释图片。

这篇论文中有太多令人惊叹的信息片段,但我想强调他们的评估指标。

他们的评估以Agent行为的可信度为主要指标,由人类评估者进行评分。

img

它展示了观察、规划和反思在这些生成式Agents性能中共同作用的重要性。如前所述,没有反思行为,规划是不完整的。

模块化框架

无论你选择什么框架来创建多Agent系统,它们通常由几个组成部分组成,包括其档案、环境感知、记忆、规划和可用行动。

img

实现这些组件的流行框架有AutoGen、MetaGPT和CAMEL。然而,每个框架处理各Agent之间通信的方式略有不同。

例如,使用CAMEL时,用户首先创建问题并定义AI用户AI助手角色。AI用户角色代表人类用户并将引导整个过程。

img

之后,AI用户和AI助手将通过相互交互来协作解决查询。

img

这种角色扮演方法实现了agents之间的协作通信。

AutoGen和MetaGPT有不同的通信方法,但都归结为这种协作性质的通信。Agents有机会互相交流,更新当前状态、目标和下一步。

在过去一年,特别是最近几周,这些框架的发展呈爆炸式增长。

img

随着这些框架不断成熟和发展,2025年将成为一个真正令人兴奋的年份!

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值