本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
代理生成器
代理生成器提供了一个平台,用于在 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 运行时本地实例化的:
-
从 DynamoDB 检索代理配置
-
创建每个 Agent Builder 代理的本地实例
-
每个代理都维护自己的 MCP 服务器连接
-
主管代理将专业代理注册为工具
-
Strands SDK 管理代理选择和委派