活动摘要系列
- 议程 01:最大限度提高 AI 推理成本效益:战略性采用 AWS GPU 实例
- 议程 02:高级智能体 AI 设计模式
- 议程 03:在 AWS 上构建全新的现代化应用
议程笔记
本场活动介绍了从生成式 AI 助手到自主智能体 AI 系统的演进,涵盖反思、工具使用、规划和多智能体协作四种核心设计模式,并演示了开源 Strands Agents SDK 如何支持智能体开发。
向智能体 AI 演进
生成式 AI 助手:
- 遵循一组明确的规则。
- 自动执行重复性任务。
- 模仿人类逻辑和推理的某些方面。
生成式 AI 智能体:
- 通过推理和行动实现特定目标。
- 与基于规则的助手相比,可以处理更广泛的任务。
- 能够与工具及其环境交互。
智能体 AI 系统:
- 具有更高程度的自主性。
- 协调推理、规划、工具、记忆和行动。
- 可以自动完成整个工作流,而不仅仅是单个任务。
什么是 AI 智能体?
- AI 智能体是一种自主软件系统,使用人工智能(尤其是大语言模型)代表人员或其他系统进行推理、规划并完成任务。
- 智能体观察环境、朝目标推进、选择行动,并在需要时使用工具。
- 记忆提供以往观察和交互的上下文。
- 工具将智能体连接到外部能力。
- 行动使智能体能够影响或查询其环境。
智能体 AI 的核心设计模式
反思:
- 使 AI 系统能够评估自身的输出、决策和推理。
- 帮助识别错误和不一致之处。
- 生成改进建议。
- 支持通过多个周期进行迭代优化。
工具使用:
- 将智能体的能力扩展到语言生成之外。
- 将智能体连接到 API、数据库、计算器、搜索系统和图像处理服务。
- 支持与外部系统进行动态交互。
- 支持数据检索、计算和系统操作等任务。
规划:
- 将复杂目标拆分为可管理的子任务。
- 将各个步骤组织成结构化策略。
- 按顺序执行任务,同时监控进度。
- 在新信息或故障要求调整时修订计划。
多智能体协作:
- 将复杂问题分解给多个智能体。
- 为每个智能体分配专门的角色或能力。
- 允许智能体交换信息并共享中间结果。
- 将各自的输出整合为最终结果。
模式 1:反思
自我评估:
- 模型审查自己的响应或拟采取的行动。
错误识别:
- 模型查找事实错误、遗漏、矛盾和薄弱之处。
改进建议:
- 模型提出改进结果的具体修改建议。
迭代改进:
- 系统重复执行评估和修订,直至得到可接受的结果或达到配置的上限。
反思可以提高质量,但每次迭代都会增加延迟和模型成本。因此,应用应定义停止条件并避免无界循环。
模式 2:工具使用
利用外部资源:
- 智能体可以调用 API、查询数据库、检索文档或调用其他软件。
扩展能力:
- 工具可执行语言模型自身无法可靠完成的精确计算和操作。
动态交互:
- 智能体根据当前任务选择工具,并使用工具返回的结果确定下一步。
典型应用:
- 检索最新数据或私有数据。
- 执行计算。
- 处理图像或文件。
- 创建工单或更新业务系统。
- 执行受控的基础设施操作。
智能体生成的工具输入不可信,因此必须通过验证、授权和最小权限来限制工具访问。
模式 3:规划
任务分解:
- 将复杂目标拆分为更小、可独立执行的任务。
战略性组织:
- 确定依赖关系,并按有效顺序安排任务。
高效执行:
- 按计划执行,并监控完成情况和故障。
灵活调整:
- 当工具失败、假设发生变化或出现新信息时重新规划。
对于需要多种工具、存在依赖关系或无法通过模型单次响应可靠完成的任务,规划尤其有用。
模式 4:多智能体协作
任务划分:
- 将问题拆分为可委派的工作。
专业分工:
- 为每个智能体指定明确的角色,例如研究员、分析师、开发人员或审查人员。
协作:
- 允许智能体交换上下文和中间发现。
结果整合:
- 在生成最终答案之前,合并并协调各项输出。
多智能体系统可以改善专业分工和并行处理,但也会带来协调成本、重复工作和额外的故障模式。只有当角色分离能带来明确价值时,才应使用多智能体系统。
Strands Agents
- Strands Agents 是一个开源 Python SDK,只需少量代码即可构建 AI 智能体。
- 它采用模型驱动的方法构建和运行智能体。
- 它可以从对话式助手扩展到自主的多步骤工作流。
- 它支持本地开发和生产部署。
轻量且灵活:
- 提供简单、可自定义的智能体循环。
与模型无关:
- 支持 Amazon Bedrock、Anthropic、Ollama 和自定义模型提供商。
高级能力:
- 支持多智能体系统、自主智能体和流式传输。
内置模型上下文协议支持:
- 提供与 MCP 服务器的原生集成。
- 允许智能体发现并使用通过 MCP 公开的外部工具。
智能体循环
- 使用目标、上下文、可用工具和观察结果调用模型。
- 接收模型响应、推理结果和工具选择。
- 让智能体决定是否需要执行其他操作。
- 使用经过验证的输入执行所选工具。
- 将工具结果作为新的观察返回给模型。
- 重复上述过程,直至任务完成或达到停止条件。
- 生成最终响应。
该循环支持复杂的多步骤推理和行动。生产环境中的实现还应限制迭代次数、执行时间、权限和支出。
设计注意事项
- 当对输出进行评议和修订能够提高质量时,使用反思。
- 当任务需要最新数据、确定性计算或外部操作时,使用工具。
- 当目标包含多个相互依赖的步骤时,使用规划。
- 当专业分工或并行工作的收益超过协调开销时,使用多个智能体。
- 在系统边界验证所有工具输入和输出。
- 为每个工具和智能体角色应用最小权限访问。
- 记录工具调用和状态转换,以便进行可观测性监控和审计。
- 添加超时、重试次数限制和明确的终止条件。
- 对敏感或不可逆的操作保留人工审批步骤。
要点总结
- 智能体 AI 结合了模型、记忆、目标、工具、行动和环境反馈。
- 反思、工具使用、规划和多智能体协作是构建高能力智能体的可复用模式。
- 每种模式解决不同的问题,也会带来各自的成本和运维复杂性。
- Strands Agents 提供轻量、与模型无关的 SDK,支持多智能体工作流和 MCP 工具。
- 除模型推理外,可靠的智能体系统还需要防护机制、有界执行、可观测性和受控的工具权限。
