谷歌在 2024 年底发布了 AI Agent(AI 智能体)白皮书,表明人工智能在商业中将扮演更积极和独立的角色的未来,并详细阐述了智能体的概念、架构、运作方式以及相关技术,为智能体的开发和应用提供了理论框架和实践指导。AI4AI 社区为大家对白皮书内容进行了整理,简单概括回顾核心内容,欢迎点击文章底部“阅读原文”获取完整版白皮书。

智能体时代已来

人类擅长处理复杂的模式识别任务。然而,我们往往需要借助工具——比如书籍、Google 搜索或计算器——来补充我们的先验知识,从而做出最终的判断。正如人类一样,生成式 AI 模型也可以通过训练使用工具,来获取实时信息或建议现实世界中的行动。

例如,一个模型可以利用数据库检索工具来获取特定信息,如客户的购买历史,以便生成量身定制的购物建议。或者,根据用户的查询,模型可以发起各种 API 调用,向同事发送电子邮件回复,或代表用户完成金融交易。

要做到这一点,模型不仅需要能够访问一套外部工具,还需要具备自主的方式规划和执行任何任务的能力。这种将推理、逻辑和访问外部信息相结合的方式,都与生成式 AI 模型相关联,从而引出了对“智能体(Agent)”的概念,即一个超越生成式 AI 模型独立能力的程序。

什么是智能体

智能体是一种应用程序,它能通过观察世界,并利用其可支配的工具来实现特定目标。智能体具备自主性,能够在没有人类干预的情况下独立行动,甚至在没有明确的人类指令集时,也能主动推理下一步如何实现最终目标。

智能体的行为、动作和决策由其内部的认知架构驱动。一个典型的智能体的认知架构构成包括三个核心组件:

1.模型(The Model)

在智能体的范畴内,模型是指在智能体运行过程中充当核心决策者的语言模型(LM)。 它可以是一个或多个不同规模(小型或大型)的 LM,并且能够理解并执行基于指令的推理和逻辑框架,如 ReAct、Chain-of-Thought 或 Tree-of-Thoughts。模型可以是通用的、多模态的,也可以根据特定智能体架构的需求进行微调。为了获得最佳的生产效果,应选择最适合目标应用的模型,并且该模型最好已经过与认知架构中计划使用的工具相关的数据签名的训练。

2.工具(The Tools)

尽管基础模型在文本和图像生成方面表现出色,但它们仍受限于无法与外部世界交互。工具弥合了这一差距,使智能体能够与外部数据和服务进行交互,从而解锁超越模型本身的一系列操作。 工具可以有多种形式,并且具有不同的复杂程度,但通常与常见的 Web API 方法(如 GET、POST、 PATCH 和 DELETE)一致。

3.编排层(The Orchestration Layer)

编排层描述了一个循环过程,它控制着智能体如何接收信息、进行内部推理,并利用该推理来指导其下一个行动或决策。这个循环过程会持续进行,直到智能体达到其目标或停止点。编排层的复杂性因智能体及其执行的任务而异。一些循环可能是简单的决策规则计算,而另一些可能包含链式逻辑、额外的机器学习算法或其他概率推理技术。


通用智能体架构和组件

认知架构:智能体的运作机制

如同忙碌厨房中的厨师,智能体的目标是通过一系列的计划、执行和调整来为顾客创造“美味佳肴”。他们通过收集信息(如顾客的订单和食材库存)、进行内部推理(基于收集到的信息思考可以制作哪些菜肴和风味组合)、采取行动(切菜、调味、煎肉等)来制作美食。在制作过程中,厨师会根据需要进行调整,根据食材消耗或顾客反馈细化计划,并利用之前的成果来确定下一步行动计划。

与厨师类似,智能体利用认知架构来迭代处理信息、做出明智决策,并根据之前输出优化后续行动,最终实现其目标。其核心是编排层,负责维护记忆、状态、推理和规划。它利用提示工程领域和相关框架来指导推理和规划,使智能体能够更有效地与环境互动并完成任务。

目前,一些主流的提示工程框架和推理技术包括:

ReAct:一种提示工程框架,为语言模型提供了一种推理(Reason)和行动(Act)的策略,无论是否有上下文示例。ReAct 提示已被证明优于多个 SOTA 基线,并提高了 LLM 的可解释性和可信度。

Chain-of-Thought (CoT):一种通过中间步骤实现推理能力的提示工程框架。CoT 具有多种子技术,包括自洽性、主动提示和多模态 CoT,每种技术都具有其自身的优势和劣势,具体取决于具体的应用场景。

Tree-of-Thoughts (ToT):一种适用于探索或战略前瞻任务的提示工程框架。它对思维链提示进行了泛化,并允许模型探索各种思维链,这些思维链作为使用语言模型解决一般问题的中间步骤。

例如,使用 ReAct 框架的智能体在处理用户查询时,会依次经历用户发送查询、智能体开始 ReAct 序列、向模型提供提示以生成下一个 ReAct 步骤及其对应输出(包括问题、思考、行动、行动输入、观察和最终答案)等环节,最终将基于用户原始查询的经过深思熟虑、简洁明了的回答提供给用户。


具有 ReAct 推理的编排层中的智能体示例

工具:智能体与外部世界的桥梁

目前,Google 模型能够交互的主要工具类型有三种:扩展(Extensions)、函数(Functions)和数据存储(Data Stores)。 通过为智能体配备工具,可以释放它们理解世界并对其采取行动的巨大潜力,为无数新的应用和可能性打开了大门。

1.扩展(Extensions)

扩展以标准化的方式桥接了 API 与智能体,使智能体能够无缝执行 API,无需关心其底层实现。例如,若要构建一个帮助用户预订航班的智能体,使用 Google Flights API 获取航班信息时,通过扩展,智能体可以利用示例学习如何使用 API 端点以及成功调用 API 端点所需的参数。


智能体、扩展和 API 之间的一对多关系

为了简化扩展的使用,Google 提供了一些开箱即用的扩展,可以快速导入到您的项目中,并以最少的配置使用。

2.函数(Functions)

类似于软件工程中的函数,智能体中的函数是完成特定任务且可根据需要重用的自包含代码模块。在软件工程领域,函数被定义为完成特定任务并且可以根据需要重复使用的自包含代码模块。当软件开发人员编写程序时,他们通常会创建许多函数来执行各种任务。

在智能体领域,可以用模型“替换”软件开发人员。模型可以采用一组已知函数,并根据其规范决定何时使用每个函数,以及函数需要哪些参数。函数与扩展的主要区别在于:

  • 模型输出函数及其参数,但不进行实时 API 调用
  • 函数在客户端执行,而扩展在智能体端执行。


展示函数调用生命周期的序列图

3.数据存储(Data Stores)

数据存储可以被视为一个大型的、不断更新的知识库。可以把数据存储想象成一个庞大的图书馆,其中包含其训练数据。但与不断获取新卷的图书馆不同,这个图书馆保持静态,仅保存最初训练时的知识。这提出了一个挑战,因为现实世界的知识在不断发展。

数据存储通过提供对更动态、最新信息的访问来解决语言模型知识静态的限制,确保模型的响应基于事实性和相关性。数据存储允许开发者以原始格式向智能体提供额外数据,无需耗时的数据转换、模型重新训练或微调。数据存储将传入文档转换为一组向量数据库嵌入,智能体可以使用这些嵌入来提取所需信息。


数据存储将智能体连接到各种类型的新实时数据源

在生成式 AI 智能体的上下文中,数据存储通常被实现为向量数据库,它以向量嵌入的形式存储数据,这是一种高维向量或数据的数学表示。开发人员希望智能体在运行时能够访问此向量数据库。

近年来,将数据存储与语言模型结合使用的最丰富的示例之一是实现基于检索增强生成(RAG)的应用。 在这些应用中,数据存储的使用为模型提供了超出基础训练数据的知识广度和深度,例如:

  • 网站内容
  • PDF、Word 文档、CSV、电子表格等格式的结构化数据
  • HTML、PDF、TXT 等格式的非结构化数据

通过定向学习提升模型性能

有效使用模型的关键之一是其在生成输出时选择正确工具的能力,尤其是在生产中大规模使用工具时。虽然一般训练有助于模型发展这项技能,但现实世界的场景通常需要超出训练数据的知识。可以将其想象为基本烹饪技能和掌握特定菜系之间的区别。两者都需要基本的烹饪知识,但后者需要有针对性的学习才能获得更细致的结果。

为了帮助模型获取特定知识,存在几种方法:

上下文学习(In-Context Learning):这种方法是在推理时为通用模型提供提示、工具和少量示例,使其能够 “即时” 学习如何以及何时为特定任务使用这些工具,ReAct 框架是自然语言中这种学习方法的一个例子。

基于检索的上下文学习(Retrieval-Based In-Context Learning):该技术通过从外部存储器(例如 Vertex AI 扩展中的“示例存储”或前面提到的基于数据存储的 RAG 架构)中检索最相关的信息、工具和相关示例来动态填充模型提示。

基于微调的学习(Fine-Tuning Learning):在推理之前,使用更大的特定示例数据集来训练模型,这有助于模型在接收任何用户查询之前了解何时以及如何应用某些工具。

LangChainLangGraph 是两个流行的开源库,允许用户通过将逻辑、推理和工具调用序列“链接”在一起来构建自定义智能体,以回答用户的查询。

展望未来,“智能体链式连接(Agent Chaining)” 作为极具潜力的战略性方向,通过将在特定领域或任务中表现卓越的专业智能体有机结合,打造出 “智能体专家组合” 方法,能够在各行业以及各类问题领域中展现出超凡的性能,为不同行业的发展注入全新活力。相信随着对智能体研究与应用的不断深入,它必将在未来的科技发展浪潮中,为各个行业带来翻天覆地的变化,引领我们走向一个更加智能、便捷与高效的新时代。


AI4AI社区
1 声望1 粉丝

AI for All Initiative(简称:AI4AI)项目由1024数字产业基金会发起,旨在推动人工智能(AI)能力的广泛普及和受益,通过课程、实训、活动、竞赛、等形式培养更多AI倡导者和引领者。