

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 从软件代理到代理人工智能
<a name="new-generation"></a>

软件代理是自主的数字实体，旨在感知自己的环境，推断自己的目标，并采取相应的行动。与遵循固定逻辑的传统软件程序不同，代理会根据上下文输入和决策框架来调整其行为。这使它们非常适合动态分布式环境，例如云原生系统、机器人、智能自动化以及现在的生成式 AI 编排。

本节介绍了软件代理的核心构建块，并解释了这些组件如何在传统架构中基于感知、理性、行为模型进行交互。它讨论了生成式人工智能，尤其是大型语言模型 (LLMs)，如何改变了软件代理的推理和计划方式。这标志着代理人工智能从基于规则的系统向数据驱动的、学习到的智能发生了根本性的转变。

**Topics**
+ [软件代理的核心构建块](core-modules.md)
+ [传统代理架构：感知、理性、行动](traditional-agents.md)
+ [生成式 AI 代理：将符号逻辑替换为 LLMs](generative-ai-agents.md)
+ [将传统 AI 与软件代理和代理人工智能进行比较](comparison.md)

# 软件代理的核心构建块
<a name="core-modules"></a>

下图显示了大多数智能代理中的关键功能模块。每个组件都有助于代理在复杂环境中自主运行。

![\[智能代理中的关键功能模块和子模块。\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/agentic-ai-foundations/images/functional-modules.png)


在感知、理性、行为循环的背景下，代理人的推理能力分布在其认知和学习模块中。通过记忆和学习的整合，代理可以根据过去的经验开发出适应性推理。当代理在其环境中行动时，它会形成一个紧急的反馈循环：每个动作都会影响未来的感知，由此产生的体验通过学习模块整合到记忆和内部模型中。这种持续的感知、推理和行动循环使代理人能够随着时间的推移而改善，并完成完整的感知、理性和行为周期。

## 感知模块
<a name="perception"></a>

感知模块使代理能够通过文本、音频和传感器等多种输入模式与其环境进行交互。这些输入构成了所有推理和行动所依据的原始数据。文本输入可能包括自然语言提示、结构化命令或文档。音频输入包括语音指令或环境声音。传感器输入包括物理数据，例如视觉馈送、运动信号或 GPS 坐标。感知的核心功能是从这些原始数据中提取有意义的特征和表现形式。这使代理能够对其当前背景形成准确且可操作的理解。该过程可能涉及特征提取、物体或事件识别以及语义解释，是感知、理性、行为循环中关键的第一步。有效的感知可确保下游推理和决策以相关的 up-to-date态势感知为基础。

## 认知模块
<a name="cognitive"></a>

认知模块是软件代理的深思熟虑的核心。它负责解释感知，形成意图，并通过以目标为导向的计划和决策来指导有目的的行为。该模块将输入转换为结构化推理过程，从而使代理能够有意而不是被动地操作。这些流程通过三个关键子模块进行管理：目标、计划和决策。

### 目标子模块
<a name="cognitive-goals"></a>

目标子模块定义了代理的意图和方向。目标可以是明确的（例如，“导航到某个地点” 或 “提交报告”），也可以是隐含的（例如，“最大限度地提高用户参与度” 或 “最大限度地减少延迟”）。它们是代理人推理周期的核心，为其计划和决策提供了目标状态。

代理人不断评估实现目标的进展情况，并可能根据新的认知或学习重新确定目标的优先顺序或重新制定目标。这种目标感知使代理能够适应动态环境。

### 规划子模块
<a name="cognitive-planning"></a>

规划子模块构造实现代理当前目标的策略。它生成操作序列，按层次分解任务，并从预定义或动态生成的计划中进行选择。

为了在不确定性或不断变化的环境中有效运作，规划不是一成不变的。现代代理可以生成 chain-of-thought序列，引入子目标作为中间步骤，并在条件变化时实时修改计划。

该子模块与记忆和学习紧密相连，允许代理根据过去的结果随着时间的推移完善其计划。

### 决策子模块
<a name="cognitive-decision-making"></a>

决策子模块评估可用的计划和行动，以选择最合适的下一步行动。它整合了来自感知、当前计划、代理目标和环境背景的输入。

决策是因为：
+ 在相互矛盾的目标之间进行权衡
+ 置信阈值（例如，感知的不确定性）
+ 行动的后果
+ 代理人学到的经验

根据架构的不同，代理可能会依靠符号推理、启发式方法、强化学习或语言模型 (LLMs) 来做出明智的决策。此过程使代理的行为具有情境感知能力、目标一致性和适应性。

## 动作模块
<a name="action"></a>

操作模块负责执行代理的选定决策，并与外部世界或内部系统连接以产生有意义的效果。它代表了感知、理性、行为循环的行为阶段，在这个阶段，意图被转化为行为。

当认知模块选择动作时，动作模块通过专门的子模块协调执行，其中每个子模块都与代理的集成环境保持一致：
+ 物理驱动：对于嵌入在机器人系统或物联网设备中的代理，该子模块将决策转化为现实世界的物理运动或硬件级别的指令。

  示例：操纵机器人、触发阀门、打开传感器。
+ 集成交互：此子模块处理非物理但外部可见的操作，例如与软件系统交互、平台或。 APIs

  示例：向云服务发送命令、更新数据库、通过调用 API 提交报告。
+ 工具调用：代理通常通过使用专门的工具来扩展其能力，以完成以下子任务：
  + 搜索：查询结构化或非结构化知识来源
  + 摘要：将大型文本输入压缩为高级概览
  + 计算：执行逻辑、数值或符号计算

  工具调用通过模块化、可调用的技能实现复杂的行为组合。

## 学习模块
<a name="learning"></a>

学习模块使代理能够根据经验随着时间的推移进行适应、概括和改进。它利用感知和行动的反馈不断完善代理的内部模型、策略和决策策略，从而为推理过程提供支持。

该模块与短期和长期记忆协调运行：
+ 短期记忆：存储瞬态背景，例如对话状态、当前任务信息和最近的观察结果。它可以帮助代理保持交互和任务的连续性。
+ 长期记忆：对过去经历中的持久知识进行编码，包括以前遇到的目标、行动结果和环境状态。长期记忆使代理能够识别模式、重复使用策略并避免重复错误。

### 学习模式
<a name="learning-modes"></a>

学习模块支持一系列范式，例如监督学习、无监督学习和强化学习，它们支持不同的环境和代理角色：
+ 监督学习：根据带标签的示例（通常来自人工反馈或训练数据集）更新内部模型。

  示例：学习根据之前的对话对用户意图进行分类。
+ 无监督学习：识别数据中的隐藏模式或结构，无需显式标签。

  示例：对环境信号进行聚类以检测异常。
+ 强化学习：通过在交互式环境中最大限度地提高累积奖励，通过反复试验优化行为。

  示例：了解哪种策略可以最快地完成任务。

学习与代理人的认知模块紧密集成。它根据过去的结果完善规划策略，通过评估历史成功来加强决策，并不断改善感知与行动之间的映射。通过这种封闭的学习和反馈循环，代理从被动执行演变为能够随着时间的推移适应新的目标、条件和背景的自我完善系统。

# 传统代理架构：感知、理性、行动
<a name="traditional-agents"></a>

下图说明了[上一节](core-modules.md)中讨论的构建块在感知、理性、行为周期下是如何运作的。

![\[核心构建块如何应用于传统的代理架构。\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/agentic-ai-foundations/images/traditional-agent-modules.png)


## 感知模块
<a name="perceive"></a>

感知模块充当代理与外部世界的感官接口。它将原始的环境输入转换为结构化表示，为推理提供信息。这包括处理多模态数据，例如文本、音频或传感器信号。
+ 文本输入可能来自用户命令、文档或对话。
+ 音频输入包括语音指示或环境声音。
+ 传感器输入可捕获真实世界的信号，例如运动、视觉馈送或 GPS。

摄取原始输入后，感知过程会执行特征提取，然后进行物体或事件识别以及语义解释，以创建对当前情况的有意义的模型。这些输出为下游决策提供了结构化的背景，并将代理的推理锚定在现实世界的观测中。

## 原因模块
<a name="reason"></a>

原因模块是代理的认知核心。它评估背景，制定意图并确定适当的行动。该模块通过使用所学知识和推理来编排目标驱动的行为。

原因模块由紧密集成的子模块组成：
+ 记忆：以短期和长期格式保存对话状态、任务上下文和情节历史记录。
+ 知识库：提供对符号规则、本体或学习模型（例如嵌入、事实和策略）的访问权限。
+ 目标和计划：定义预期结果并制定实现这些结果的行动策略。可以动态更新目标，也可以根据反馈对计划进行自适应性修改。
+ 决策：通过权衡选项、评估权衡和选择下一步行动，充当中央仲裁引擎。该子模块考虑了置信度阈值、目标一致性和情境约束。

这些组件共同使代理能够推理其环境，更新信念，选择路径，并以连贯的适应性方式行事。原因模块缩小了感知和行为之间的差距。

## Act 模块
<a name="act"></a>

act 模块通过与数字或物理环境接口来执行任务，从而执行代理的选定决策。这就是意图变成行动的地方。

该模块包括三个功能通道：
+ 执行器：对于有物理存在的代理（例如机器人和物联网设备），控制硬件级的交互，例如移动、操纵或信号。
+ 执行：处理基于软件的操作，包括调用 APIs、调度命令和更新系统。
+ 工具：启用诸如搜索、摘要、代码执行、计算和文档处理等功能功能。这些工具通常是动态的和上下文感知的，从而扩展了代理的实用性。

act 模块的输出反馈到环境中并关闭循环。代理会再次感知到这些结果。它们更新代理的内部状态并为未来的决策提供信息，从而完成感知、理性、行为周期。

# 生成式 AI 代理：将符号逻辑替换为 LLMs
<a name="generative-ai-agents"></a>

下图说明了大型语言模型 (LLMs) 现在如何作为软件代理的灵活而智能的认知核心。与依赖静态计划库和手工编码规则的传统符号逻辑系统形成鲜明对比的是，它 LLMs支持自适应推理、情境规划和动态工具使用，从而改变代理的感知、推理和行为方式。

![\[Diagram showing LLM-based agent architecture with perceive, reason, and act components.\]](http://docs.aws.amazon.com/zh_cn/prescriptive-guidance/latest/agentic-ai-foundations/images/gen-ai-modules.png)


## 主要增强功能
<a name="enhancements"></a>

此架构增强了传统的代理架构，如下所示：
+ LLMs 作为认知引擎：目标、计划和查询作为****即时上下文传递到模型中。法学硕士生成推理路径（例如思维链），将任务分解为子目标，并决定下一步行动。
+ 通过提示使用工具： LLMs 可以通过工具使用代理或推理和行动 (ReAct) 提示进行引导，以呼叫 APIs 以及搜索、查询、计算和解释输出。
+ 情境感知规划：代理根据代理的当前目标、输入环境和反馈动态生成或修改计划，无需硬编码的计划库。
+ 提示上下文作为内存：代理不使用符号知识库，而是将内存、计划和目标编码为传递给模型的提示标记。
+ 通过少量的、基于情境的学习来学习：通过及时的工程来 LLMs 调整行为，从而减少对明确的再训练或僵化的计划库的需求。

## 在基于 LLM 的代理中实现长期记忆
<a name="long-term-memory"></a>

与在结构化知识库中存储长期记忆的传统代理不同，生成式 AI 代理必须在上下文窗口的限制下工作 LLMs。为了扩展内存并支持持久智能，生成式 AI 代理使用了几种补充技术：代理存储、检索增强生成 (RAG)、情境内学习和提示链以及预训练。

**代理存储：外部长期存储器**

代理状态、用户历史记录、决策和结果存储在长期代理内存存储中（例如矢量数据库、对象存储或文档存储）。按需检索相关内存，并在运行时将其注入到 LLM 提示上下文中。这会创建一个持久的内存循环，在该循环中，代理在会话、任务或交互之间保持连续性。

**抹布**

RAG 通过将检索到的知识与生成能力相结合，提高 LLM 的绩效。发布目标或查询时，代理会搜索检索索引（例如，通过对文档、之前的对话或结构化知识的语义搜索）。检索到的结果将附加到法学硕士提示中，该提示是在外部事实或个性化背景下生成的。这种方法扩展了代理的有效记忆力，提高了可靠性和事实正确性。

**情境内学习和提示链接**

代理通过使用会话内令牌上下文和结构化提示链来保持短期记忆。上下文元素（例如当前计划、先前的行动结果和座席状态）在两次通话之间传递以指导行为。

**持续的预训练和微调**

对于特定域的代理， LLMs 可以继续对自定义集合（例如日志、企业数据或产品文档）进行预训练。或者，通过人工反馈进行指令微调或强化学习 (RLHF) 可以将类似代理的行为直接嵌入到模型中。这会将推理模式从提示时间逻辑转移到模型的内部表示中，缩短了提示长度并提高了效率。

## 代理人工智能的综合优势
<a name="benefits"></a>

这些技术一起使用时，使生成式 AI 代理能够：
+ 随着时间的推移保持情境意识。
+ 根据用户历史记录或偏好调整行为。
+ 利用 up-to-date事实知识或私人知识做出决定。
+ 通过持久、合规且可解释的行为扩展到企业用例。

通过增强 LLMs 外部记忆、检索层和持续训练，代理可以实现以前仅通过符号系统无法实现的认知连续性和目标水平。

# 将传统 AI 与软件代理和代理人工智能进行比较
<a name="comparison"></a>

下表详细比较了传统 AI、软件代理和代理 AI。


| 特征 | 传统人工智能 | 软件代理 | 代理式人工智能 | 
| --- | --- | --- | --- | 
|  示例  |  垃圾邮件过滤器、图片分类器、推荐引擎  |  聊天机器人、任务调度器、监控代理  |  AI 助手、自主开发者代理、多代理 LLM 编排  | 
|  执行模型  |  Batch 或同步  |  事件驱动或定时  |  异步、事件驱动和目标驱动  | 
|  自治  |  有限；通常需要人工或外部编排  |  中等；在预定义的范围内独立运行  |  高；使用自适应策略独立行动  | 
|  反应性  |  对输入数据有反应  |  对环境和事件做出反应  |  被动和主动；预测并启动行动  | 
|  积极主动  |  稀有  |  存在于某些系统中  |  核心属性；推动以目标为导向的行为  | 
|  Communication  |  最小；通常是独立的或 API 绑定的  |  代理间或代理人与人之间的消息传递  |  丰富的多代理和 human-in-the-loop交互功能  | 
|  决策  |  仅限模型推断（分类、预测等）  |  符号推理，或基于规则的决策或脚本式决策  |  情境化、基于目标的动态推理（通常是 LLM 增强型）  | 
|  委托意图  |  否；执行用户直接定义的任务  |  部分；代表范围有限的用户或系统行事  |  是；根据委派的目标行事，通常是跨服务、用户或系统  | 
|  学习和适应  |  通常以模型为中心（例如，机器学习训练）  |  有时是自适应的  |  嵌入式学习、记忆或推理（例如，反馈、自我纠正）  | 
|  中介机构  |  无；人类工具  |  隐式或基本  |  明确；有目的、目标和自我指导的运作  | 
|  情境感知  |  低；无状态或基于快照  |  中等；某些状态跟踪  |  高；使用内存、情境上下文和环境模型  | 
|  基础设施角色  |  嵌入在应用程序或分析管道中  |  中间件或服务层组件  |  与云端、无服务器或边缘系统集成的可组合代理网格  | 

总而言之：
+ 传统的人工智能以工具为中心，功能狭窄。它侧重于预测或分类。
+ 传统的软件代理引入了自主权和基本的通信，但它们通常是受规则约束或静态的。
+ Agentic AI 汇集了自主权、异步性和代理性。它使智能的、以目标为导向的实体能够在复杂的系统中进行推理、行动和适应。这使得代理人工智能成为云原生、人工智能驱动的未来的理想之选。