View a markdown version of this page

代理生成器 - AWS 上的生成式人工智能应用程序构建者

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

代理生成器

代理生成器提供了一个平台,用于在 Amazon Bedrock 上创建、部署和管理可用于生产的 AI 代理。 AgentCore本节介绍技术组件和实现细节。

AgentCore 整合

Agent Builder 使用基于配置的部署方法和预先构建的代理映像,以实现快速、安全和可扩展的代理部署。

预先构建的代理映像

代理容器镜像由 GAAB 团队在 CI/CD 管道期间构建,并发布到公共 ECR 存储库。每个图像版本都与 GAAB 解决方案版本相关联(例如,v4.0.0 →: v4.0.0)。 gaab-strands-agent图片基于 Strands SDK,包括:

  • 代理运行时环境

  • MCP 客户端集成

  • 内存管理功能

  • OpenTelemetry 仪器

ECR 直通缓存

该解决方案使用 ECR Pull-Through Cache 自动将代理映像从公共 ECR 存储库分发到客户的私有 ECR。这项 AWS 托管的服务:

  • 首次拉取时缓存图像(延迟 2-5 分钟)

  • 消除了自定义图像复制逻辑

  • 为后续部署提供本地映像可用性

  • 为每个部署创建唯一的缓存规则以避免冲突

配置存储

代理配置与现有用例配置一起存储在 DynamoDB 中。每种配置包括:

  • 系统提示模板

  • 模型提供商和模型 ID

  • 模型参数(温度、max_tokens)

  • MCP 服务器参考和端点

  • 内存设置(切换长期内存)

  • 部署元数据

镜像版本注册表

DynamoDB 表可跟踪可用的代理映像版本及其 URIs缓存,从而实现版本管理和向后兼容。

代理配置

系统提示

系统提示定义了代理的行为、个性和能力。管理员用户可以:

  • 通过 Agent Builder 用户界面编辑默认模板

  • 包括工具使用说明和响应格式说明

  • 随时重置为默认模板

型号选择

Agent Builder 支持 v4.0.0 中的 Amazon Bedrock 模型:

  • 模型提供商:Amazon Bedrock(v4.0.0 中唯一的选项)

  • 模型选择:Claude、Nova 和其他贝德罗克模型

  • 模型参数:温度、max_tokens、top_p 和特定于模型的设置

MCP 服务器集成

模型上下文协议服务器为代理提供访问企业工具和数据的权限:

  • 通过 GET /mcp API 端点发现服务器

  • 无需更改代码即可进行动态配置

  • 身份验证和端点管理

  • 工具能力暴露于特工

流媒体和处理

实时直播

Agent Builder 使用从 AgentCore 桥接到的服务器发送事件 (SSE) WebSocket 进行实时响应流:

  • Lambda 函数建立与运行时的 SSE 连接 AgentCore

  • 直播已桥接到 API Gateway WebSocket

  • 允许向客户端传送 token-by-token响应

  • 为长时间运行的请求保持连接

处理限制

v4.0.0 中的代理处理仅限于 Lambda 执行超时:

  • 最长处理时间:15 分钟

  • 同步处理模型

  • 适用于对话代理和中等工作流程

  • 计划在 v4.1+ 中提供扩展的异步支持

内存管理

短期记忆

默认情况下,所有使用自定义的代理都处于启用状态 MemoryHookProvider:

  • 通过 Strands 的回调处理程序捕获对话事件

  • 按 actorID 和 sessionID 进行组织以实现上下文隔离

  • 维护会话中的对话背景

  • 自动与 AgentCore 内存集成

长期记忆

使用 strands_tools 中的 AgentCore 记忆工具的可选功能:

  • 只需在 Agent Builder UI

  • 使用默认设置的语义记忆策略

  • 通过自然工具调用由代理控制访问

  • 存储跨会话提取的见解

  • 使用 conversationID 作为会话 ID

可观测性

AWS OpenTelemetry 发行版 (ADOT)

在容器构建过程中,会自动检测代理:

  • 为代理操作自动生成跟踪

  • 跨服务边界的分布式跟踪

  • 带关联的结构化日志 IDs

  • 与 CloudWatch 交易搜索集成

身份验证流程

用户使用经自定义 Lambda 授权机构验证的 JWT 令牌通过 Amazon Cognito 进行身份验证,这些授权机构根据用户组从 DynamoDB 检索 IAM 策略。

工作流程生成器

Workflow Builder 通过创建一个主管代理,使用代理即工具委托模式来协调多个代理生成器代理,从而实现多代理编排。

工作流程架构

关键组件

  • 主管代理:接收用户请求和委托给专业代理的 Entrypoint 代理

  • 专业代理:Agent Builder 用例注册为主管的工具

  • 代理注册表:存储代理配置和元数据的 DynamoDB 表

  • 编排层:Strands SDK 实现代理即工具模式

代理实例化

创建本地代理

所有专业代理都是在同一个 AgentCore 运行时本地实例化的:

  1. 从 DynamoDB 检索代理配置

  2. 创建每个 Agent Builder 代理的本地实例

  3. 每个代理都维护自己的 MCP 服务器连接

  4. 主管代理将专业代理注册为工具

  5. Strands SDK 管理代理选择和委派