文献信息 Agents(智能体)白皮书 来源:谷歌 作者:Julia Wiesinger, Patrick Marlow and Vladimir Vuskovic 发表时间:2024年9月 在本白皮书里,我们探讨了生成式人工智能智能体的基础构建模块、它们的构成以及以认知架构形式有效实施这些智能体的方法。以下是本白皮书的一些关键要点: 1. 智能体通过利用工具获取实时信息、提出现实世界的行动建议以及自主规划和执行复杂任务,拓展了语言模型的能力。智能体可以借助一个或多个语言模型,来决定何时以及如何进行状态转换,并使用外部工具完成众多语言模型自身难以或无法完成的复杂任务。 2. 智能体运作的核心是协调层,这是一种构建推理、规划、决策过程并指导其行动的认知架构。各种推理技术,如ReAct(反应式推理)、思维链和思维树等,为协调层提供了一个框架,使其能够接收信息、进行内部推理,并生成有依据的决策或响应。 3. 工具(如扩展程序、函数和数据存储)是智能体通向外部世界的钥匙,让它们能够与外部系统进行交互,并获取超出其训练数据范围的知识。扩展程序在智能体和外部应用程序编程接口(API)之间架起了一座桥梁,实现了API调用的执行和实时信息的检索。函数通过分工为开发者提供了更细致的控制,使智能体能够生成可在客户端执行的函数参数。数据存储让智能体能够访问结构化或非结构化数据,从而支持数据驱动的应用程序。 智能体的未来充满了令人振奋的发展可能,而我们目前对其潜力的探索才刚刚开始。随着工具变得更加复杂,推理能力不断增强,智能体将有能力解决越来越复杂的问题。此外,“智能体链”这一战略性方法将继续获得发展动力。通过组合专门的智能体——每个智能体都在特定领域或任务中表现出色——我们可以打造一种“智能体专家混合体”模式,能够在各个行业和问题领域交付卓越的成果。 需要记住的是,构建复杂的智能体架构需要采用迭代方法。实验和改进是为特定业务场景和组织需求找到解决方案的关键。由于支撑智能体架构的基础模型具有生成性,没有任何两个智能体是完全相同的。然而,通过充分利用这些基础组件各自的优势,我们能够创建出具有影响力的应用程序,这些应用程序将拓展语言模型的能力,并带来实实在在的现实价值。 ![]() 什么是智能体 从最基础的形式来看,生成式人工智能智能体可以定义为一种应用程序,它通过观察世界并利用自身可支配的工具对世界采取行动,从而努力实现某个目标。智能体具有自主性,能够在无需人类干预的情况下独立行动,尤其是在被赋予其理应达成的明确目标或任务时。在实现目标的方式上,智能体还可以展现出主动性:即便没有人类提供明确的指令集,智能体也能自主思考为达成最终目标接下来应该采取哪些行动。尽管人工智能中“智能体”的概念具有很强的通用性和影响力,但本白皮书聚焦于在撰写之时生成式人工智能模型有能力构建的特定类型的智能体。 为了理解智能体的内部运作机制,我们首先来介绍驱动智能体行为、行动和决策的基础组件。这些组件的组合可以被称为认知架构,通过对这些组件进行不同的组合搭配,能够形成多种不同的认知架构。聚焦于核心功能,如下图所示,智能体的认知架构包含三个关键组件:模型、工具、协调层。 ![]() 模型 在智能体的范畴内,“模型”指的是将被用作智能体流程核心决策者的语言模型(LM)。智能体所使用的模型可以是一个或多个任意规模(小型/大型)的语言模型,这些模型需能够遵循基于指令的推理和逻辑框架,如ReAct(反应式推理)、思维链或思维树等。模型可以是通用型、多模态的,也可以根据特定智能体架构的需求进行微调。为了在实际应用中取得最佳效果,应选择最适合目标终端应用的模型;理想情况下,该模型还需在与认知架构中计划使用的工具相关的数据特征上进行过训练。需要注意的是,模型通常不会针对智能体的特定配置设置(即工具选择、编排/推理设置)进行训练。不过,我们可以通过向模型提供展示智能体能力的示例(包括智能体在不同场景下使用特定工具或推理步骤的实例),进一步优化模型以适应智能体的任务。 工具 基础模型尽管在文本和图像生成方面表现出色,但仍受限于无法与外部世界进行交互。工具则弥合了这一差距,使智能体能够与外部数据和服务进行交互,同时解锁了远超基础模型自身能力范围的更多行动可能。工具可以有多种形式,复杂程度也各不相同,但通常与常见的网络API方法(如GET、POST、PATCH和DELETE)相契合。例如,某一工具可以更新数据库中的客户信息,或获取天气数据以辅助智能体为用户提供旅行建议。借助工具,智能体能够获取并处理现实世界的信息,这使其有能力支持更专业的系统(如检索增强生成技术,即RAG),从而显著拓展智能体的能力,使其超越基础模型自身的局限。文章中将会更详细地探讨工具,但最需要理解的是:工具架起了智能体内部能力与外部世界之间的桥梁,为其解锁了更广阔的可能性。 协调层 协调层描述了一个循环过程,该过程控制着代理如何接收信息、执行一些内部推理,并利用这些推理为下一步行动或决策提供信息。一般来说,这个循环将一直持续到代理达到目标或停止点为止。协调层的复杂程度会因代理及其执行的任务不同而有很大差异。有些循环可以是带有决策规则的简单计算,而有些循环则可能包含连锁逻辑,涉及额外的机器学习算法,或实施其他概率推理技术。我们将在认知架构部分详细讨论代理协调层的实现。 工具:通向外部世界的钥匙 尽管语言模型在信息处理方面表现出色,但它们缺乏直接感知和影响现实世界的能力。这限制了它们在需要与外部系统或数据交互的场景中的实用性。从某种意义上说,语言模型的能力仅限于其从训练数据中学到的内容。然而,无论我们向模型投喂多少数据,它们仍然缺乏与外部世界进行交互的基本能力。那么,如何才能让我们的模型具备与外部系统进行实时、上下文感知的交互能力呢?函数、扩展程序、数据存储和插件都是为模型提供这一关键能力的方式。 尽管名称繁多,但这些工具在基础模型与外部世界之间建立了联系。这种与外部系统和数据的连接,使智能体能够执行更广泛的任务,并且执行得更准确、更可靠。例如,借助工具,智能体可以调整智能家居设置、更新日历、从数据库中获取用户信息,或者根据特定指令发送电子邮件。 截至本白皮书发布之日,谷歌模型能够交互的工具主要有三类:扩展程序、函数和数据存储。通过为智能体配备这些工具,我们不仅为其解锁了理解世界的巨大潜力,更赋予了它们改变世界的能力,为无数新应用和新可能打开了大门。 通过针对性学习提升模型性能 要让模型得到有效利用,一个关键环节在于它们在生成输出时能否选择合适的工具,尤其是在生产环境中大规模使用工具的情况下。虽然通用训练有助于模型培养这种能力,但现实场景往往需要超出训练数据范围的知识。这就好比基础烹饪技能与精通某一特定菜系之间的区别:两者都需要基础的烹饪知识,但后者需要针对性的学习才能实现更精妙的效果。 为了帮助模型获取这类特定知识,有以下几种方法: · 上下文学习:这种方法在推理阶段为通用模型提供提示词、工具以及少量示例,让模型能够“即时”学习在特定任务中如何以及何时使用这些工具。ReAct框架就是自然语言处理中应用这种方法的一个例子。 · 基于检索的上下文学习:该技术通过从外部存储器中检索最相关的信息、工具及相关示例,动态地填充模型的提示词。例如Vertex AI扩展中的“示例库”,或是前文提到的基于检索增强生成(RAG)架构的数据存储,都属于这种方法的应用。 · 基于微调的学习:这种方法在推理之前,使用大量特定示例数据集对模型进行训练。这能帮助模型在接收任何用户查询之前,就理解何时以及如何应用特定工具。 这些方法在速度、成本和延迟方面各有优缺点。然而,通过在智能体框架中组合使用这些技术,我们可以充分利用它们各自的优势,同时最大限度地减少劣势,从而构建出更稳健、更具适应性的解决方案。 |
|Archiver|手机版|小黑屋|雄启汇|雄启识慧云上智库:您身边的行业研究顾问
|网站地图
GMT+8, 2025-9-22 05:03 , Processed in 0.375270 second(s), 25 queries .
Powered by Discuz! X3.5
© 2001-2025 Discuz! Team.