slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
经验篇:Google专家眼中更多的AI Agent
17611538698
webmaster@21cto.com

经验篇:Google专家眼中更多的AI Agent

人工智能 49 1204 2025-01-23 07:21:53

图片

Google 在去年九月时,在 Kaggle 平台上公布了一篇由 Julia Wiesinger、Patrick Marlow 和 Vladimir Vuskovic 撰写的 Agent 主题白皮书。

本次文章,我将进行汇整,以让大家更理解 Agent 的概念。

一、什么是 AI Agent?


AI Agent是一种应用程序,其核心功能是透过观察环境并运用工具采取行动,以实现特定目标。


这些Agent具有以下几个关键特征:


  • 自主性(Autonomy):AI代理能够自主运行,不需要人类的直接干预。当赋予明确的目标或相关任务后,它们能够独立完成操作。

  • 目标导向(Goal-Oriented):他们的行动与决策设计是为了实现特定目标,表现出目标驱动的特征。

  • 主动性(Proactiveness):即使缺乏人类明确的指令,人工智能代理也能推理与分析,决定下一步行动,努力完成最终目标。

  • 应用场景广泛:虽然人工智能代理的概念十分通用且强大,但本文重点关注生成式人工智能模型所构建的特定类型代理。


以下是作者提出的一个基础Agent架构:

图片


二. 生成式AI Agents的核心组成


在人工智能领域中,生成式AI Agent 正在迅速成为核心技术。

这些不仅仅是语言模型,而是能够与外部世界交互、完成复杂任务的系统。要理解生成式AI代理的可运作的,必须从其三大核心组成部分来理解:模型(The Model)、工具(The Tools)与指挥层(The Orchestration Layer)。

模型(The Model):AI Agents的智慧核心


模型是AI智能体的「大脑」,负责决策与推理,具备理解指令和逻辑推理的能力。


它通常由一个或多个大型语言模型(如GPT-3或类似技术)构成,并采用不同的推理框架,例如ReAct、Chain-of-Thought (CoT) 或 Tree-of-Thoughts (ToT),来帮助模型深入理解问题并提供合理的解决方案。


根据需求,模型可以是通用型、多模态型,或者经过特定调整以应对特殊任务。虽然模型本身并不包含Agent的具体配置,但可以透过数据进行Fine-Tuning,以确保最佳效果。


就其而言,模型是Agent思考的核心,决定了它的判断与推理能力。


工具(The Tools):连接内外世界的桥梁


工具是AI Agent与外部世界交互的关键因子,帮助Agent克服仅靠语言模型无法直接处理外部系统或数据的限制。这些工具以多种形式存在,例如CRUD方法等。


工具极大地扩展了代理的能力,可访问与处理真实世界信息,例如查询天气或更新资料库。


目前常见的工具类型包括:


  • 扩展(Extensions):标准化地连接API与Agent,让Agent无缝执行操作。

  • 函数(Functions):由模型输出函数与参数,实际API调用由客户端执行,为开发者提供更精细的控制。

  • 数据存储(Data Stores):以提供数据库的形式,存储并提供代理访问动态更新的信息。


工具的存在让人工智能代理能够真正与外部世界产生互动,而不是仅仅针对语言模型本身。

指挥层 (The Orchestration Layer):Agent 的指挥中心


指挥层是AI Agent模型与工具的总指挥,决定了它如何接收信息、进行内部推理,并采取行动。这是一个循环的过程,直到Agent完成目标或到达终点。


指挥层的复杂性不是一,可以是简单的逻辑计算,也可以是高度复杂的规划与推理。它负责维护记忆、状态、推理与规划,并贯穿提示工程(Prompt Engineering)框架来引导推理与行动。例如:


  • ReAct:让模型边推理边行动。

  • Chain-of-Thought (CoT):透过中间步骤实现多步推理。

  • Tree-of-Thoughts (ToT):适用于需要探索或策略性预测的任务。


那么,指挥层确保AI Agent的每一步都按计划进行,相当于「执行大脑」。

三者良好配合:模型、工具与指挥层的协作之美


这三个组成部分相互协作,使得 AI Agent 能够有效地完成任务。模型负责「思考」,工具负责「执行」,而指挥层则负责「规划与控制」。

这种协作就像一位厨房里的厨师中工作:

  • 厨师首先收集信息(食材和指令)。

  • 然后根据信息进行推理(决定菜色与烹饪方式)。

  • 随后执行动作(切菜、烹煮)。

  • 最后根据结果调整步骤(改进与改进)。


通过这样的方式,AI Agent表现出强大的能力与适应能力,能够自主完成复杂的任务。

三.模型和代理的差异


以下提供了一份作者所撰写的差异表格:

图片


从表格中可以看出,模型的知识来源仅限于其训练数据,无法管理多轮对话或持续上下文,也缺乏内建工具和逻辑层支持。

而代理则跨越介接外部工具扩展知识,具备管理多轮会话的能力,并内建推理框架,能够执行更复杂的任务。这使得智能体在处理动态和复杂任务时更具优势。

四. Agent运作的核心概念


就像厨师在昏暗的厨房中,Agent 利用认知架构来完成其高效的目标。


遍历迭代处理信息、做出明智的决策,并根据先前的输出调整下一步的行动,Agent 才能运转。


Agent的核心位于协调层,负责维护记忆、状态、推理和规划。协调层利用快速发展的提示工程技术和相关框架来引导推理和规划,使Agent能够更有效地完成任务并与环境交互。


Agent使用认知架构的兼容步骤


以下是 Agent 如何使用认知架构来执行任务的步骤示例:


  • 信息收集代理:收集信息,例如用户的查询或可用的工具和资源。

  • 内部推理:根据收集到的信息进行推理,考虑可行的选项和行动。

  • 采取行动:根据推理结果采取行动,例如使用工具、搜索信息或产生响应。

  • 调整:在每个阶段,代理人会根据需要进行调整,利用前期的结果完善计划,并确定下一步行动。


推理技术与思考


Agent可以采用多种推理技术与框架,以选择针对用户请求的最佳行动。以下是常见的框架与技术:

  • ReAct(Reasoning and Acting):提供语言模型一种思考过程策略,结合上下文提示进行推理与行动。

  • 链式思考(Chain of Thought, CoT):跨越中间步骤实现推理能力。子技术包括:自我一致性、主动提示、多模式CoT,针对不同的应用场景有其优缺点。

  • 树思维(Tree of Thought, ToT):适合探索或战略性前瞻任务。扩展链式思考,允许模型探索多种解决问题的中间步骤。


协调层兼容范例:ReAct 框架


以下是协调层如何利用 ReAct 框架来引导推理和规划的流程示例:

  • 查询:用户向Agent发送查询。

  • 启动ReAct序列:Agent向模型提供提示,启动ReAct框架步骤。

  • 执行步伐:

  • 问题:从用户查询中提取的具体问题。

  • 想法:模型关于下一步行动的构想。

  • 行动:模型决定采取的行动,例如选择工具或搜索信息。

  • 操作输入:模型决定提供给工具的输入内容。

  • 观察:根据行动结果进行反馈。

  • 最终答案:为原始查询生成的最终响应。


4.结束循环:将最终答案返回给用户。

图片




在指挥层中使用 ReAct 推理的 Agent 示例

五、工具:通往门口世界的入口


工具是我们可以让LLM通往外部世界的途径。虽然语言模型擅长处理信息,但它们缺乏直接获取和影响现实世界的能力。这种限制在于需要与外部系统或数据交互的情况下的用处。这意味着,在某种意义上,语言模型的好坏取决于它从训练数据中学到的东西。但是,无论我们向模型投入多少数据,它们仍然缺乏与外部世界互动的基本能力。

为了使模型能够与外部系统进行即时、采集的交互,可以使用函数(Functions)、扩展(Extensions)和数据存储(Data Stores)等工具来提供这种关键能力。这些工具建立了基础模型和外部世界之间的联系,使代理能够执行更广泛的任务,而且更准确和可靠。

扩展 (Extensions)


可以被认为是建立标准化方式桥接API和Agent之间的差距,允许Agent无缝执行API,而不管它们的底层实际作如何。扩展跨越以下方式桥接Agent和API之间的差距:

  • 使用范例教导 Agent 如何使用 API 端点。

  • 教导Agent成功调用API端点所需的引数或参数。Agent可以使用模型和示例来动态选择最适合解决用户查询的扩展。

图片

示例:Agents-Extension-API 关系图


函数 (Functions)


与软件工程中的函数类似,是完成特定任务且可根据需要重复使用的独立程序码模组。模型可以利用一组已知的函数,并根据其规格决定当使用每个函数以及函数需要哪些引数。函数与扩展的不同用途:


模型输出函数及其引数,但不进行即时API调用。


图片

示例:Agents-Function-API 关系图


函数在客户端执行,而在Agent端执行扩展。函数的调用逻辑和执行从Agent端转移到客户端应用程序,为开发人员提供对应用程序中数据流的更精细的控制。

图片



划分客户端与代理端对扩展和函数调用的控制


数据存储 (Data Stores)


通过提供对更动态和最新信息的访问来解决模型的静态知识限制。数据存储允许开发人员恢复原始格式向代理提供额外的数据,而无需运行的数据转换、模型重新训练或操作。


数据存储通常作为提供数据库, Agent可以在运行时访问该数据库。数据存储允许Agent访问各种格式的数据,例如:


  • 网站内容

  • 形成资料,如PDF、Word文件、CSV、试算表等

  • 非结构化资料,如HTML、PDF、TXT等

图片

示例:Agents-data store-resource关系图


那如果你设计并储存了一个基于RAG的知识库,你也可以参考以下的方式,建立起AI代理的生命周期:

  • 用户查询:用户向代理发布查询。

  • 查询嵌入(Query Embedding):使用嵌入模型将用户查询转换为 Embedding Vector。

  • 支持数据库匹配:将 Embedding Vector 与支持数据库的内容进行匹配。

  • 内容搜索:从提供数据库中搜索匹配的内容,以文字格式输出结果。

  • 代理处理:代理接收用户查询和检索到的内容。

  • 生成响应或采取行动:代理根据用户查询和搜索的内容制定响应或决定下一步的行动。

  • 回覆结果:向用户传达最终回覆。

图片


基于RAG的AI代理的生命周期架构图


作者在文章中,也很贴心的准备了工具追溯,我们整理如下,这将更加深了这三种执行方式之间的差异:

图片


VI. 模型能力的增强


目标模型执行的增强,目标学习( targeted Learning)是一种关键方法,可以提升模型在特定任务中的表现,尤其是在需要超出数据训练范围的知识时。


这种方法类似于从基本烹饪技巧进阶阶到掌握特定菜系,需要急躁的学习以确定更进一步的结果。来源中提到了以下几种方法来帮助模型获得此类特定的知识:


情境学习(In-context Learning)


  • 这种方法在推论时(推理时间)提供通用模型提示(提示)、工具(工具)和少量范例(few-shot Examples),能够「即时」学习如何以及当使用这些工具来完成特定任务时。

  • ReAct 框架就是这种方法的一个例子。它利用自然语言的提示,使模型能够在接收到用户查询时,能够有效地推理并采取行动。

  • 就像厨师收到特定的食谱(提示)、一些关键食材(相关工具)和一些小吃(少量样品),然后根据有限的资讯和一般的烹饪知识,即时查找如何准备最符合食谱和客户偏好的馅饼。


检索式情境学习(检索式情景学习)


  • 这种技术从外部记忆中检索最相关的信息、工具和相关示例,动态地填充模型提示。

  • Vertex AI 扩展中的「范例存储」(示例商店)或前面提到的基于RAG 架构的数据存储就是这种方法的示例。

  • 这就像厨师在厨房里有一个即时丰富的食物预存室(外部资料储存),里面装满了各种食材和食谱(范例和工具)。厨师动态地可以从食物预知室中选择食材和食谱,方便更好地符合客户的食谱和偏好。


微调学习(基于微调的学习)


  • 这种方法涉及在推论之前使用更大的特定范例数据集来训练模型。

  • 这有助于模型理解何时以及如何应用某些工具,甚至在接收到任何用户查询之前。

  • 这就像我们送厨师去学习一个新的菜系或一系列菜系(在更大的特定样本数据集上进行预训练)。这让厨师能够更深入地理解未来未见过的客户食谱。


综上所述,这些目标学习方法各有优点,在速度、成本和延迟方面都有所不同。在Agent框架中结合这些技术,可以利用各自的优势并最小化其缺点,从而实现更强大的且这些方法使模型能够根据基础,提取信息、工具、以及示例,提升处理复杂任务的能力。

七. 如何在 Google Vertex AI 实践 AI Agent


Vertex AI 平台提供了一个完整的托管环境,简化了当前生产级 AI Agent 的流程,其中包含前面讨论的核心元件,以及其他工具。以下是关于 Vertex AI 上目前生产应用程序的重点:


简化开发流程


开发人员可以使用自然语言介绍,定义Agent的关键要素,包括快速目标、任务指示、工具、用于任务分派的子Agent和示例。这让开发人员能够更加关注当前和完善Agent,而不必担心基础设施、安装和维护的复杂性。


整合开发工具


Vertex AI平台提供了一系列的开发工具,用于测试、评估、快速高效地执行Agent、排除错误并改善Agent的整体质量。这确保了开发出的Agent是可靠且可靠的。


综合代理框架


Vertex AI 平台集成了多种功能,例如 Vertex Agent Builder、Vertex Extensions、Vertex Function Calling 和 Vertex Example Store,这些功能可以共同分享目前完整的端对端 Agent 架构。该架构能够满足生产应用程序的各种需求。


可扩展性管理


Vertex AI 作为一个全托管平台,处理基础设施的管理、维护和部署,让开发人员可以专注于应用程序的开发和优化。


作者在 Vertex AI 平台上提供了一个目前的 Agent 架构示例,展示了如何利用各种功能来创建生产级应用程序。该架构结合了多个必需的元件,确保了 Agent 的有效运行。

图片

  • 工具:用户可以从官方文件中尝试初步的 Agent 架构示例。


VIII. 结论


作者总结了生成式AI Agent的基础组成要素、组成方式以及如何以认知架构的形式有效实施它们。以下是作者在总结中提出的几个重点:


代理利用工具来扩展语言模型的能力。代理可以访问即时信息、提出真实世界的行动建议,并自主规划和执行复杂的任务。代理可以利用一个或多个语言模型来决定如何转换状态,并使用外部工具来完成模型本身难以或不可能完成的复杂任务。


Agent运作的核心是指挥层。指挥层是一种认知架构,它架构了推理、规划、决策并指导Agent的行动。


多种推理技术,例如ReAct、Chain-of-Thought和Tree-of-Thoughts,为指挥提供支持层提供了一个框架,以接收信息、执行内部推理并产生明智的决策或回应。


工具(Tools),例如补充功能(Extensions)、函式(Functions)和数据仓库区(Data Stores),是Agent通往外部世界的接口。它们允许Agent与外部系统交互并访问超出其训练数据范围的知识。

  • 新增功能(Extensions)提供了Agent和外部API之间的桥梁,能够执行API呼叫并检索即时资讯。

  • 函式(Functions)通过分工合作为开发者提供了更便捷的控制,允许代理产生函式参数,这些参数可以在客户端执行。

  • 数据仓库区(Data Stores)为Agent提供了对格式化或非格式化数据的访问,从而实现了数据驱动的应用方案。


随着工具变得更加复杂,推理能力得到增强,Agent将有能力解决迫切复杂的问题。此外,「代理链(代理链)」的策略方法将继续获得发展。突破结合突破特定领域或任务的专业Agent,我们可以创建一个「混合 Agent 专家」方法,能够在各个行业和问题领域提供卓越的成果。

构建复杂的Agent架构需要迭代的方法。实验和改进是针对特定业务案例和组织需求找到解决方案的关键。由于支持其架构的基础模型的生成功能,没有两个Agent是几十的。

然而,利用每个基础组件的优势,我们可以创建有影响力的应用程序,扩展语言模型的功能并驱动真实世界。

作者:万能的大雄

评论