谷歌刚刚发布AI Agent智能体白皮书,2025年AI Agent时代已到来! 原创 精华
人类在处理复杂的模式识别任务上表现出色。
在形成结论之前,他们常常借助诸如书籍、谷歌搜索或计算器等工具来增强其现有知识。
同样地,AI 大模型能够通过训练,学会使用工具来获取实时信息或提出现实世界的行动建议。例如,这些大模型能够运用数据库检索工具来查询特定信息,如顾客的购买历史,进而提供个性化的购物建议。再比如,基于用户的查询,大模型能够执行多种 API 调用,用于发送邮件回复给同事或代表用户完成财务交易。
为了实现这些功能,大模型不仅需要能够接入各种外部工具,还必须能够自主规划并执行任务。这种结合了推理、逻辑以及对额外信息的利用的能力,是 AI大模型的核心,它体现了 AI Agent 智能体的概念,即超出单纯 AI 大模型独立功能的程序。
1、模型
在 AI Agent 智能体领域,所提到的模型是指那些在 AI Agent 智能体工作流程中充当决策中枢的语言模型(LM)。
AI Agent 智能体所采用的模型可以是单个或多个不同规模(小型或大型)的语言模型,这些模型能够遵循基于指令的推理逻辑,例如:反应(ReAct)、思维链(Chain-of-Thought)或思维树(Tree-of-Thoughts)等架构。这些模型可能是通用的、多模态的,或者根据特定智能体框架的需求进行定制化调整。
为了实现最佳的应用效果,应选择与目标应用最匹配的模型,并且最好该模型已经针对将在认知架构中使用的工具相关的数据特性进行了训练。
应当注意的是,模型通常不会专门针对 AI Agent 智能体的特定配置(即工具的选择、编排和推理设置)进行训练。然而,通过向模型提供展示 AI Agent 智能体能力的示例,包括 AI Agent 智能体在不同情境中使用特定工具或推理步骤的案例,可以进一步针对 AI Agent 智能体的任务对模型进行优化。
2、工具
工具的形式多样,复杂度不一,通常与标准的网络应用程序编程接口(API)方法(如 GET、POST、PATCH 和 DELETE)保持一致。比如,某个工具能够修改数据库中的客户资料,或者获取天气信息以优化 AI Agent 智能体为用户提供的旅行建议。
通过使用这些工具,AI Agent 智能体得以接入和处理现实世界的数据。这使得它能够支撑更专业的系统,如检索增强生成(RAG)系统,该系统显著提升了AI Agent 智能体的功能,使其能力超越了基础模型本身的限制。
3、编排层
编排层描述了一个循环过程,它管理着 AI Agent 智能体如何接收信息、进行内部推理,并使用这些推理来指导其下一个动作或决策。通常,这个循环会一直持续,直到 AI Agent 智能体达到其目标或一个停止点。编排层的复杂性可以根据 AI Agent 智能体及其执行的任务而有很大差异。有些循环可能是简单的计算和决策规则,而其他循环可能包含连锁逻辑,涉及额外的机器学习算法,或者实现其他概率推理技术。
AI Agent 智能体可以利用 ReAct、CoT、ToT 等推理技术,或者许多其他技术,来为给定的用户请求选择下一个最佳动作。例如,让我们考虑一个被编程使用 ReAct 框架来为用户查询选择正确动作和工具的 AI Agent 智能体。事件序列可能如下所示:
1.用户向 AI Agent 智能体发送查询;
2.AI Agent 智能体开始 ReAct 序列;
3.AI Agent 智能体向模型提供一个提示词(Prompt),要求它生成下一个ReAct 步骤及其对应的输出:
a. 问题:用户查询中的输入问题,随提示词一起提供
b. 思考:模型关于接下来应该做什么的想法
c. 动作:模型关于接下来采取什么动作的决定
i. 这里的工具选择可以发生
ii. 例如,一个动作可以是[航班、搜索、编码、无]之一,前三个代表模型可以选择的已知工具,最后一个代表“不选择工具”
d. 动作输入:模型关于向工具提供什么输入的决定(如果有的话)
e. 观察:动作/动作输入序列的结果
i. 这个思考/动作/动作输入/观察可以根据需要重复N次
f. 最终答案:模型对原始用户查询提供的最终答案
4.ReAct 循环结束,并向用户返回最终答案。
4、扩展:自定义插件
将扩展(Extensions)视为一种在 AI Agent 智能体与应用程序编程接口(API)之间建立标准化连接的方式,是最直接的理解方法。这种方式使得 AI Agent 智能体能够顺畅地执行多种 API 操作,而无需关心其背后的具体实现细节。
设想你开发了一个旨在帮助用户预订航班的 AI Agent 智能体。你打算利用谷歌航班 API 来获取所需的航班信息,但你不确定如何让你的 AI Agent 智能体来调用这个 API。
采用一种更为灵活的方法是使用扩展。扩展通过以下步骤在 AI Agent 智能体和 API 之间搭建桥梁:
- 通过示例指导 AI Agent 智能体如何使用 API 接口。
- 指导 AI Agent 智能体了解成功调用 API 接口所需的参数。
扩展可以独立于 AI Agent 智能体进行开发,但它们应该作为 AI Agent 智能体配置的一部分来提供。在运行时,AI Agent 智能体依靠模型和示例来决定哪个扩展(如果有)最适合处理用户的查询。这体现了扩展的一个重要优势,即它们的“示例内嵌”特性,它允许 AI Agent 智能体根据任务需求动态地选择最合适的扩展。
5、功能函数
在 AI Agent 智能体领域,函数的运作方式与软件开发中的情况类似,但在这里,模型取代了软件开发人员的角色。模型能够访问一系列已知的函数,并依据函数的定义来决定何时调用哪个函数以及需要传递哪些参数。
函数与扩展在几个关键点上有所不同,最明显的区别包括:
- 模型会输出一个函数及其所需的参数,但不会直接执行实时应用程序编程接口(API)调用。
- 函数在客户端环境中运行,而扩展则在 AI Agent 智能体端执行。
大多数开发人员倾向于使用功能函数,原因包括:
- 需要进行应用程序编程接口(API)调用的应用程序栈的另一层,这超出了 AI Agent 智能体直接架构的范围(例如中间件系统、前端框架等)。
- 存在安全或认证的限制,导致 AI Agent 智能体无法直接访问 API(例如 API 未在互联网上公开,或者 AI Agent 智能体基础设施无法连接到该 API)。
- 有时间安排或操作顺序的限制,使得 AI Agent 智能体无法实时执行 API 调用(例如批量操作、人工审核等场景)。
- 需要对 AI Agent 智能体无法直接执行的应用程序编程接口(API)响应进行额外的数据转换逻辑。例如,如果一个 API 端点没有提供限制返回结果数量的筛选机制,客户端使用函数可以为开发人员提供执行这些转换的额外机会。
- 开发人员希望在 AI Agent 智能体开发过程中进行迭代,而不需要为 API 端点部署额外的基础设施(即函数调用可以作为 API 的“存根”)。
6、数据存储
数据存储机制使得开发人员能够以原始格式向 AI Agent 智能体提供额外数据,这样他们就无需进行繁琐的数据转换、模型的重新训练或微调。
数据存储将接收到的文档转换成一系列向量数据库嵌入,AI Agent 智能体可以利用这些嵌入来提取必要信息,以支持其后续操作或对用户的响应。
为了使模型能够获取特定类型的知识,可以采用以下几种策略:
• 上下文学习:在推理过程中,向通用模型提供提示词、工具和一些示例,使其能够即时学习如何以及在何时使用这些工具来执行特定任务。自然语言处理中的反应(ReAct)框架就是这种方法的一个例子。
• 基于检索的上下文学习:动态地通过从外部存储器检索最相关的信息、工具和示例来构建模型提示词。例如,Vertex AI 扩展中的“示例存储”或之前提到的基于数据存储的检索增强生成(RAG)架构。
• 基于微调的学习:这涉及到在推理之前使用包含大量特定示例的数据集对模型进行训练。这种方法有助于模型在处理用户查询之前就已经学会了何时以及如何应用某些工具。
7、实施与应用
在 AI Agent 智能体的背景下,数据存储通常被实现为向量数据库,开发人员希望 AI Agent 智能体在运行时能够访问这些数据库。虽然这里不会深入讨论向量数据库,但关键是要理解它们以向量嵌入的形式存储数据,这是一种高维向量或数据的数学表示。最近,数据存储与语言模型结合使用的一个最典型的例子是基于检索增强生成(RAG)的应用程序实现。这些应用程序试图通过让模型访问各种格式的数据,来扩展模型知识的基础训练数据之外的范围和深度,例如:
• 网站内容
• 结构化数据,如 PDF、Word 文档、CSV、电子表格等格式
• 非结构化数据,如 HTML、PDF、TXT 等格式
上图展示了 AI Agent 智能体与数据存储之间的一对多关系,这些数据存储可以代表各种类型的预索引数据。
每个用户请求和 AI Agent 智能体响应循环的底层过程通常如下图所示。
- 用户查询被发送到嵌入模型以生成查询的嵌入;
- 然后使用像 SCaNN 这样的匹配算法将查询嵌入与向量数据库的内容进行匹配;
- 从向量数据库中以文本格式检索匹配的内容并返回给 AI Agent 智能体;
- AI Agent 智能体接收用户查询和检索到的内容,然后制定响应或行动;
- 最终响应被发送给用户。
最终结果是,应用程序允许 AI Agent 智能体通过向量搜索将用户查询与已知数据存储匹配,检索原始内容,并将其提供给编排层和模型进行进一步处理。下一个行动可能是向用户提供最终答案,或者执行额外的向量搜索以进一步精炼结果。
上图展示了一个实现 RAG 与 ReAct 推理/规划的代理与用户的示例交互。
8、总结
在本白皮书中,我们讨论了生成式人工智能 AI Agent 智能体的基础构建块、它们的组成以及有效实施它们的方法,即认知架构。本白皮书的一些关键收获包括:
- AI Agent 智能体通过利用工具来访问实时信息、建立现实世界的行动以及自主规划执行复杂任务,从而扩展了语言模型的能力。AI Agent 智能体可以利用一个或多个语言模型来决定何时以及如何过渡状态,并使用外部工具来完成模型自身难以或无法单独完成的任何数量的复杂任务。
- AI Agent 智能体操作的核心是编排层,这是一种认知架构,它结构化了推理、规划、决策制定并指导其行动。各种推理技术,如 ReAct、思维链(Chain-of-Thought)和思维树(Tree-of-Thoughts),为编排层提供了一个框架,以接收信息、进行内部推理并生成明智的决策或响应。
- 工具,如扩展(Extensions)、函数(Functions)和数据存储(Data Stores),是 AI Agent 智能体与外部世界互动的钥匙,使它们能够与外部系统互动并访问超出其训练数据的知识。扩展在 AI Agent 智能体和外部API 之间架起桥梁,使得执行 API 调用和检索实时信息成为可能。函数为开发者提供了更细致的控制,通过分工允许代理生成可以在客户端执行的函数参数。数据存储为代理提供了结构化或非结构化数据的访问,使得数据驱动的应用程序成为可能。
AI Agent 智能体的未来充满了激动人心的进步,我们只是开始触及可能性的表面。随着工具变得更加复杂和推理能力的增强,AI Agent 智能体将能够解决越来越复杂的问题。此外,"AI Agent 智能体链"的战略方法将继续获得势头。通过结合在特定领域或任务上表现出色的专业代理,我们可以创建一个“AI Agent 智能体专家混合”方法,能够在各个行业和问题领域提供卓越的结果。
本文转载自公众号玄姐聊AGI 作者:玄姐
原文链接:https://mp.weixin.qq.com/s/Ow7gAHSaLFyYO5luB0XPhg