译者 | 布加迪
审校 | 重楼
我在过去设计对话式系统时亲眼目睹了传统AI的局限性。我设计的系统可以可靠地检测实体,但其僵硬的逻辑使得这种解决方案不能扩展。对话遵循预先编程的路径:如果用户说X,就回应Y。任何偏差都会破坏整个流程,凸显出这类系统有多死板多僵硬。
基于基础模型的代理改变了这一切。它们是自主系统,能够处理不可预测的场景并无缝协作。代理可以规划行程、收集实时数据或管理客户账户,随时适应变化。
代理不仅仅是工具的使用者,它们本身就是工具。像模块化组件一样,代理独立工作,或与其他代理集成以解决复杂问题。预测模型带来了精准预测,生成式模型重新定义了创造力。现在,代理AI将智能转化为自主行动。
我们在本文中将剖析代理的结构、探究其协作,并深入研究将它们扩展到强大的、相互关联的生态系统所需的基础设施。
什么是代理?
简单地说,代理有代理机制,它们不依赖静态路径——它们进行推理、使用工具并动态适应。与使用脚本的机器人不同,代理实时调整工作流,以适应不可预测的输入。
在人工智能领域,代理有着悠久的历史,从Alan Turing和John McCarthy早期的理论思考,到20世纪60年代基于规则的推理代理,这些代理旨在在定义的上下文中自主行动,但其功能受制于狭窄的应用和僵硬的逻辑。
如今,基础模型的出现改变了一切。
基础模型让代理能够动态适应复杂、不可预测的环境所需的推理和泛化。代理的环境定义了其范围,无论是棋盘、网络还是道路,其工具决定了它可以采取什么行动。与早期系统不同,现代代理将强大的推理与多功能工具结合起来,带来了曾经难以想象的应用场景。
图1. 控制逻辑,程序型与代理型
我们在下面将剖析代理的结构:代理如何感知、推理、行动和学习。
剖析代理的结构
就像人类一样,代理通过结合其感觉、记忆、推理和行动能力来解决问题。但在我们深入研究如何做到这一点的机理之前,先介绍一个支撑一切的基本要素:角色(persona)。
图2. 剖析多代理系统
角色(工作职能)
代理的角色定义了其工作功能和专业知识。它就像嵌入到系统提示中的详细职位描述,决定了代理的行为和反应。系统提示设定期望,并影响模型在token上的概率分布,以便使输出与定义的角色保持一致。
系统提示示例:
感知
有了明确的角色,解决任何问题的第一步就是了解环境。对于代理来说,感知是感官输入,即它们如何从周围世界收集数据。人类用眼睛、耳朵和触觉,代理则使用API、传感器和用户输入。
- 示例:物流代理通过从交通API和天气预报中提取实时数据以感知延迟,就像人类驾驶员查阅交通报告一样。
推理和决策
一旦收集到信息,就需要对信息进行处理和解读。推理是代理分析数据、得出见解并决定下一步做什么的能力。对于人类来说,推理在大脑中进行。对于代理,它由像LLM这样的模型提供支持,模型可以动态适应输入和上下文。
- 示例:客户服务代理可能会分析用户的语气以识别挫败感、相互对照账户历史记录以查找未解决的问题,并决定上报问题。
记忆
记忆允许代理跨交互保留特定领域的信息。其目的并非学习。人类既依赖短期记忆(比如回忆一段对话的开始),又依赖长期记忆(比如记住几年前学过的一项技能)。代理也是这样工作的。
短期记忆允许代理跟踪会话中的即时上下文,这些上下文可能在会话期间临时存储在内存缓冲区中。与此同时,长期记忆指存储历史数据,比如用户偏好或过去的交互。这可能是矢量数据库或另一个永久存储区。矢量数据库支持语义搜索,嵌入允许代理有效地检索相关信息。
- 示例:销售助理记得过去的交互,比如注意到客户对特定功能的兴趣,并利用它来定制后续服务。
规划
一旦代理知道需要做什么,它就会设计计划来实现目标。这一步反映了人类如何制定策略:将问题分解成更小的步骤,并优先考虑某些行动。
- 示例:膳食规划代理组织一周的食谱,考虑到饮食限制、可用配料和用户的时间表。
行动
没有执行,计划毫无价值。行动是代理与外界交互的呈现,无论是通过发送消息、控制设备还是更新数据库。
- 示例:客户支持代理更新工单、发出退款或发送电子邮件以解决问题。
代理的执行处理程序负责确保准确地执行这些动作并验证结果。
学习
人类通过从错误中学习和适应新信息加以改进。代理同样如此,使用机器学习来完善其推理、改进预测和优化行动。
- 示例:产品推荐引擎跟踪点击率,并根据与用户产生共鸣的内容调整建议。
这个过程可能需要在提示装配期间动态调整代理的上下文,以便它根据情境反馈改进其响应,而不会对模型的权重进行永久性更改。另外,学习也可能通过强化学习来进行决策使用与特定行动相关联的奖罚机制来加以优化。在许多情况下,适应上下文为代理提供了一种灵活而有效的改进方式,没有微调带来的开销。
协调和协作
人类很少单独工作,我们相互合作、分享知识、分工任务。在多代理系统中,协调使代理能够做同样的事情,一起工作以实现共同的目标。
- 示例:CRM助理在Salesforce系统中更新客户的联系人详细信息,同时通知计费助理代理调整订阅记录。
这种协作常常由像Apache Kafka这样的消息代理提供支持,消息代理促进了代理之间的实时通信和同步。动态共享状态和任务的能力使多代理系统比独立代理强大得多。
工具接口
人类使用工具来增强能力,比如医生使用听诊器、程序员使用集成开发环境(IDE)。代理也不例外。工具接口是代理实现专门功能的途径,便于它们扩大应用范围,并在现实世界中有效地操作。
- 示例:旅行代理使用航班API查找机票、使用天气API规划路线、使用财务API计算成本。
这些接口通常依赖模块化API处理程序或插件架构,以便代理动态高效地扩展其功能。
启示
如果您细加分解,会发现代理解决问题的方式与人类相同:它们感知环境、处理信息、回忆相关知识、制定计划并采取行动。
但代理与众不同的不仅仅是其工作方式,还有其扩展能力。
人类可能精通一个领域,但代理生态系统可以将来自无数领域的专家聚集在一起,合作解决单个系统无法处理的挑战。
我们在下一节中将探讨如何构建使这些代理发展壮大的基础设施——不是充当孤立的工具,而是成为动态的、相互关联的AI劳动力的一部分。
代理充当工具和微服务
从本质上讲,代理是有智能的工具。
它们可以使用API、外部库甚至其他代理来完成工作。这种模块化反映了微服务架构的原则,几十年来微服务架构来一直为企业级系统提供支撑。如果将代理视为微服务,我们就可以运用相同的经验:将它们设计为轻量级、专门化和可互操作。这种方法让我们可以通过像搭乐高积木一样组合代理,在不创建臃肿的单体式系统的情况下扩展功能,从而组合复杂的工作流。
比如说,营销代理可能会联系客户细分代理来分析用户数据,然后将结果传递给活动策略代理来优化广告投放。如果将代理视为共享生态系统中的工具,工作流就可以动态拼接,从而实现前所未有的灵活性和可扩展性。
为什么这对可扩展性很重要?
这种类似微服务的架构对于构建可扩展的代理生态系统至关重要。我们可以设计更小、更专业的代理来协同工作,而不是创建试图做所有事情的单体式代理。这种方法支持更快的开发、更轻松的维护以及独立扩展各个组件的能力。
如果立足于微服务架构,我们可以为代理系统带来企业级的可靠性、模块化和性能。生成式AI的未来不是构建孤立的代理,而是创建协作生态系统,代理的功能像微服务一样,无缝地协同工作以解决复杂问题。
我们在下一节中将探讨如何将扩展微服务的经验运用到代理基础设施中,以确保我们准备好支持下一代生成式AI系统。
代理需要事件
从微服务的经验来看,传统的请求/响应架构对代理而言根本不具有可扩展性。
在这些系统中,每个动作都需要明确的协调,从而引入延迟、瓶颈和紧密耦合的依赖项。这就像组织中的每一个决定都需要书面批准,这在小型环境中有效,但复杂性增加后,速度和效率就会奇低。
图3. 多代理系统导致了迷宫般的紧密耦合的相互依赖关系
向事件驱动架构转变标志着构建可扩展代理系统迎来了关键时刻。代理不是等待直接指令,而是被设计成自主地发出和监听事件。事件充当发生了某些事件(数据更改、触发的动作或重要的更新)的信号,允许代理动态独立地响应。
图4. 事件驱动代理:代理发出并监听事件
剖析事件驱动代理
这种架构直接影响了代理的结构组成:
- 感知:代理通过事件感知世界,事件提供了结构化的实时输入。
- 推理:事件驱动决策过程,代理动态解释信号以确定下一步。
- 记忆:事件持久性确保历史数据始终可用于上下文回忆,从而降低交互丢失或不完整的风险。
- 动作:代替僵硬的工作流,代理通过发出事件来行动,使下游代理或系统能够在需要的地方获取信息。
该系统中的代理接口不再由僵硬的API定义,而是由它们发出和使用的事件定义。这些事件用简单的标准化格式(比如JSON有效负载)加以封装,可执行以下功能:
- 简化代理对变化的理解和反应。
- 促进跨不同工作流和系统的可重用性。
- 在动态的、不断发展的环境中实现无缝集成。
构建代理生态系统
IT外媒VentureBeat特别指出:“进入到2025年,我们更需要创建基础设施来管理多个AI代理和应用程序。”
这不仅仅是预测,更是号召我们行动起来。
剖析代理:感知、推理、记忆、行动和协作为它们的能力奠定了基础,但如果没有合适的基础设施,这些部分就无法扩展。
像Kafka和Flink这样的平台是扩展微服务的核心。通过借助事件解耦服务,这些系统使微服务(现在是代理)能够在没有僵硬依赖关系的情况下无缝交互。对于充当微服务的代理而言,这意味着它们可以自主地发出和使用事件,动态地集成到工作流中,同时确保大规模环境下的治理、一致性和适应性。
未来不是仅仅一个代理解决一个问题,而是数百个代理协同工作,无缝扩展和适应不断变化的挑战。若想在2025年领先,我们不仅要致力于创建代理,还要致力于创建大规模管理代理的基础设施。
原文标题:More than machines: The inner workings of AI agents,作者:Sean Falconer