前言

在数字化转型的浪潮中,人工智能(AI)正以其前所未有的速度和规模,重塑着我们的世界。大模型(LLM)的出现,仿佛为AI赋予了思考的大脑。但若要让这些数字巨人真正步入现实世界,与人类并肩作战,我们还需要给它们配备什么?答案可能是:智能体(Agent)。

一、大模型与人类的区别

大模型虽然强大,但它们缺乏人类的某些本能——记忆、工具使用和规划思考能力。人类能够记住知识、使用工具、规划行动,而大模型则需要额外的支持来实现这些功能。

  • LLM:能够接受输入、进行思考、推理输出结果。
  • 人类:具备LLM的能力,加上记忆、工具使用和规划思考。
二、智能体(Agent)的概念

智能体,或称为Agent,是一种计算机程序,它基于大语言模型,并通过添加规划思考、记忆和工具使用的能力,能够自主完成复杂的任务。

【AI大模型】智能体(Agent)大模型时代的AI革新者_人工智能

三、智能体的关键构成

在基于 LLM 的智能体中,LLM 的充当着智能体的“大脑”的角色。下面对智能体的三大核心能力—规划、记忆与工具使用进行讲解:

规划(Planning)

规划是智能体将复杂任务分解为可执行子任务的能力。它是智能体有效完成任务的行动指南。以下是规划在智能体中的全面应用:

  1. 任务分解:智能体将大型任务拆解成小的、可管理的子任务,使得任务的执行变得更加清晰和简单。
  2. 执行流程规划:智能体需要制定一个明确的执行计划,决定各个子任务的执行顺序和时间。
  3. 思考和反思:在任务执行过程中,智能体需要持续进行思考和反思,以评估当前的执行状态,并作出必要的调整。
  4. 任务监控与调整:智能体需要监控任务的执行情况,并根据实际情况进行调整,以确保任务能够顺利进行。
  5. 任务完成判断:智能体需要有能力判断任务何时完成,并在完成任务后进行适当的总结。

关键概念如下:

思维链(Chain of Thoughts,CoT)

思维链已经是一种比较标准的提示技术,能显著提升LLM完成复杂任务的效果。当我们对LLM这样要求,会发现LLM会把问题分解成多个步骤,一步一步思考和解决,能使得输出的结果更加准确。这是一种线性的思维方式。

思维链的prompt:

template="回答问题:Q:{问题}?让我们一步一步地思考:"

思维树(Tree-of-thought, ToT)

对 CoT 的进一步扩展,在思维链的每一步,推理出多个分支,拓扑展开成一棵思维树。使用启发式方法评估每个推理分支对问题解决的贡献。选择搜索算法,使用广度优先搜索(BFS)或深度优先搜索(DFS)等算法来探索思维树,并进行前瞻和回溯。

【AI大模型】智能体(Agent)大模型时代的AI革新者_语言模型_02

ReAct

ReAct(Yao et al. 2023) ,《ReAct: Synergizing Reasoning and Acting in Language Models》 这篇论文提出一种用于增强大型语言模型的方法,它通过结合推理(Reasoning)和行动(Acting)来增强推理和决策的效果。

  • 推理(Reasoning): LLM 基于「已有的知识」或「行动(Acting)后获取的知识」,推导出结论的过程。
  • 行动(Acting): LLM 根据实际情况,使用工具获取知识,或完成子任务得到阶段性的信息。

下面列出几种不同规划模式的推演:

  • 仅推理(Reasoning Only):LLM 仅仅基于已有的知识进行推理,生成答案回答这个问题。很显然,如果 LLM 本身不具备这些知识,可能会出现幻觉,胡乱回答一通。
  • 仅行动(Acting Only):大模型不加以推理,仅使用工具(比如搜索引擎)搜索这个问题,得出来的将会是海量的资料,不能直接回到这个问题。
  • 推理+行动(Reasoning and Acting):LLM 首先会基于已有的知识,并审视拥有的工具。当发现已有的知识不足以回答这个问题,则会调用工具,比如:搜索工具、生成报告等,然后得到新的信息,基于新的信息重复进行推理和行动,直到完成这个任务。其推理和行动的步骤会是如下这样:

【AI大模型】智能体(Agent)大模型时代的AI革新者_ai_03

案例分析:考虑一个名为“市场分析师”的智能体,其任务是为一家公司制定年度市场推广计划。该智能体首先将年度计划拆解为季度目标,再细分为月度活动。它规划了每个活动的关键绩效指标(KPIs)和执行时间表。在执行过程中,智能体持续监控活动效果,根据反馈调整策略,并在年底进行总结,以优化下一年度的计划。

记忆(Memory)

记忆是智能体存储和回忆信息的能力,它分为短期记忆和长期记忆:

  1. 短期记忆:在执行任务过程中,智能体的短期记忆用于暂存上下文信息,如临时数据或中间结果,任务完成后这些信息会被清空。
  2. 长期记忆:长期记忆用于存储长时间保留的信息,通常涉及外部知识库。这些信息可以是固定的事实、学习到的模式或先前的经验。

案例分析:以“个人助理”智能体为例,它需要帮助用户管理日常任务和提醒。短期记忆中可能包含今天的会议安排,而长期记忆则存储用户的个人喜好和历史任务记录。当用户询问明天是否有重要事件时,智能体从长期记忆中检索信息,并结合短期记忆中的日程安排给出回答。

工具使用(Tool use)

智能体能够使用各种工具API,如搜索引擎、代码执行器等,与物理世界进行交互:

  1. 工具API集成:智能体需要集成各种工具API,如搜索引擎、代码执行器、数据库查询工具等,以扩展其功能。
  2. 物理世界交互:通过工具使用,智能体可以与物理世界进行交互,执行如控制设备、获取传感器数据等操作。
  3. 信息获取与处理:智能体可以利用工具获取信息,如通过网络搜索获取数据,或通过执行代码处理数据。
  4. 任务辅助:工具使用还可以辅助智能体完成任务,如使用日历工具管理日程,或使用提醒工具确保任务按时完成。
落地实现如下:
Function Calling

Function Calling 是一种实现大型语言模型连接外部工具的机制。通过 API 调用 LLM 时,调用方可以描述函数,包括函数的功能描述、请求参数说明、响应参数说明,让 LLM 根据用户的输入,合适地选择调用哪个函数,同时理解用户的自然语言,并转换为调用函数的请求参数(通过 JSON 格式返回)。调用方使用 LLM 返回的函数名称和参数,调用函数并得到响应。最后,如果需求,把函数的响应传给 LLM,让 LLM 组织成自然语言回复用户。

function calling 具体工作流程如下图所示:

【AI大模型】智能体(Agent)大模型时代的AI革新者_语言模型_04

案例分析:设想一个“智能家居控制系统”的智能体,它负责控制家中的智能设备。该智能体使用API与各种设备(如灯光、温度控制器、安全系统)交互,根据用户的需求和习惯自动调节家居环境。例如,当用户回家时,智能体通过工具API自动打开照明、调整室内温度,并确保安全系统处于解除状态。
四、智能体的开发框架

当前智能体开发框架的出现,极大地简化了智能体的创建过程。如记忆能力、规划能力、RAG 能力、大模型调用等智能体框架。使得开发者能够快速搭建出功能丰富的智能体。

根据 awesome-ai-agents 的整理,无论是开源的还是闭源的,智能体应用框架在各个领域,比如自定义智能体、编码、研究、数据分析、多智能体等等,都有比较有代表性的产品可供选择。

【AI大模型】智能体(Agent)大模型时代的AI革新者_agi_05

总结

智能体(Agent)作为大模型时代的AI革新者,正逐步从概念走向现实。它们不仅能够扩展大模型的能力,更能够与人类紧密协作,共同创造更加智能的未来。