告别Agent孤岛!亚马逊云科技AI技术现已支持A2A协议

Amazon Bedrock AgentCore Runtime现已支持Agent-to-Agent(A2A)协议,让Agent可通过标准化通信方式,跨系统发现节点、共享能力与协同工作。


Amazon Bedrock AgentCore Runtime提供安全的serverless运行环境,专为部署AI Agent及工具设计。它兼容任意框架与模型,支持实时及长时间运行的工作负载,并通过内置认证机制实现会话隔离。


基于对MCP及A2A协议的支持,Amazon Bedrock AgentCore Runtime可实现Agent间的无缝通信,无论这些Agent是基于Strands Agents、OpenAI Agents SDK、LangGraph、Google ADK,还是Claude Agents SDK等不同框架构建的,它们都能以统一可验证的格式共享上下文、能力与推理过程。




本文将介绍如何利用A2A协议,让基于不同框架构建的AI Agent实现无缝协作。您将了解如何在Amazon Bedrock AgentCore Runtime上部署A2A服务器、配置Agent发现与认证机制,以及搭建可投入实际应用的事件响应多Agents系统。


本文会完整解析A2A请求的全生命周期,从Agent能力卡片发现到任务分配,直观呈现标准化协议如何消除多Agents协作的复杂性。






理解多Agents系统




构建高效的Agent系统需要多个基础组件,其中包括:

  • 记忆功能:短期记忆用于维持对话上下文,长期记忆则用于跨会话留存关键洞察。

  • 工具集成:支持Agent可直接访问或通过MCP服务器调用工具。

  • 身份认证:实现更安全的身份验证与权限管理,支持Agent代表用户执行操作或自主访问资源。

  • 安全防护:实时检测有害内容、预防幻觉输出,确保响应符合策略要求与事实准确性。




图片






MCP负责连接单个Agent与工具和数据,A2A协议则支持多个Agent之间的协作交互。例如,零售库存Agent可通过MCP查询产品数据库,再借助A2A协议与外部供应商Agent交互,完成订单下达。


A2A协议跨多元边界的无缝互操作性,为多Agents系统带来了诸多优势。无论Agent由何种框架构建,搭载何种大语言模型,亦或是部署在亚马逊云科技或边缘设备等不同系统上,它们都能无需复杂中间件即可实现轻松通信协作。


这种互操作性还具备松耦合与模块化特性:每个Agent作为独立单元运行,可单独开发、测试、部署甚至升级,不会影响整个系统。新的专业Agent也能无缝接入环境,且单个Agent故障被隔离在明确边界内,可避免出现系统级连锁故障。


该协议还支持动态发现与编排Agent:Agent通过标准化架构声明自身能力,编排Agent则能根据实时任务需求发现并调用专业Agent。






AgentCore Runtime

上的A2A请求生命周期




A2A协议定义了结构化的请求生命周期,通过特定组件协同工作,协调多Agents间的通信。核心要素如下:




用户



通过客户端Agent发起请求,发起者可以是人工操作员,也可以是定义需要多Agents协助达成某项目标的自动化服务。




A2A客户端



代表用户行动,基于A2A协议发起通信,来发现远程Agent并请求其执行任务。




A2A服务器



公开实现A2A协议的HTTP端点,用于接收请求、处理任务并返回结果。不同Agent均可承担该角色,通过HTTP/S上的JSON-RPC 2.0或Server-Sent Events,处理同步与异步交互。




Agent Card



每个Agent发布的JSON格式元数据文件,用于公示其身份、功能、端点及认证要求。这一设计支持动态发现功能,Agent在委托任务前可查询其他Agent的能力范围。




任务对象



代表系统中流转的每个工作单元,包含唯一ID与生命周期。在Agent协同过程中,任务可能是长期运行的、涉及多轮交互,且需多个Agent协作完成。




成果



任务完成后生成的输出,可包括结构化文本、JSON数据、图像、音频或其他多模态内容。Agent在协作完成用户原始请求时,会相互交换这些成果。




多Agents应用场景

监控与故障响应






为展示在AgentCore Runtime上运用A2A协议构建多Agents系统的强大能力,下文将详细介绍一项企业级的监控与故障响应解决方案。这一真实应用场景案例,将展现采用不同框架构建的专业Agent,如何通过A2A协议无缝协作,共同应对复杂的运维挑战。


该监控与故障响应解决方案采用“中心辐射型”架构,包含三个专业Agent,每个Agent均集成了提供不同关键能力的Amazon Bedrock AgentCore核心功能模块,包括:



  • 用于上下文感知响应的AgentCore Memory。

  • 基于Amazon Cognito实现的AgentCore Identity,为Agent提供更安全的身份认证及操作权限管控。

  • 用于提供更安全的集中式工具访问入口的AgentCore Gateway。

  • 用于追踪、调试和监控AI Agent性能的AgentCore Observability。

相关架构图如下:




图片




该多Agents系统包含以下组件:




Host Agent(基于Google ADK构建)

作为Agent交互的智能路由层与协调中心,它展现了基于A2A协议的跨系统互操作性。该Agent是采用Google Agent Development Kit构建而成的,运行在AgentCore Runtime,同时借助标准化的A2A协议,与部署在亚马逊云科技服务上的Agent实现无缝通信。Host Agent的核心职责包括:



  • 动态发现Agent:从Amazon Systems Manager Parameter Store中获取每个远程Agent的身份提供商(IDP)配置,为多Agents系统提供更安全的身份认证。

  • 能力感知:从各个A2A服务器获取Agent Card,明确可用功能与端点信息。

  • 智能路由:分析用户查询,并根据能力将其路由至合适的专业Agent。

  • 多Agents协同:编排需要多个Agent参与协作的复杂工作流程。




监控Agent(基于Strands Agents SDK构建)



作为运维智能层,它将持续分析跨亚马逊云科技服务的Amazon CloudWatch日志、指标数据、仪表盘及警告信息。该Agent专门负责识别异常情况、追踪错误模式,并能从海量遥测数据中挖掘可直接落地的洞察。检测到异常模式时,监控Agent会主动与其他专业Agent展开对话,协调响应行动。监控Agent核心职责包括:

1.Amazon CloudWatch集成能力:

  • 列出并分析Amazon CloudWatch仪表盘数据;

  • 拉取Amazon Lambda、Amazon ECS、Amazon EC2等特定亚马逊云科技服务的日志;

  • 实时监控告警及警报状态变化;

  • 分析日志组中的数据模式与错误信息。

2.跨账户访问:支持对多个亚马逊云科技账户进行统一监控。




运维Agent(基于OpenAI SDK构建)

提供故障修复方案及外部知识集成能力。当监控Agent检测到关键问题时,它会通过A2A协议与运维Agent直接通信,同步问题上下文信息并请求执行特定修复操作。运维Agent的核心职责包括:



  • 网络搜索:借助Tavily API检索亚马逊云科技最佳实践、故障排查指南及解决方案。

  • 制定修复方案:为检测到的问题提出解决方案。




图片






实施多Agents监控解决方案






下面将详细介绍如何借助AgentCore Runtime,构建并部署该多Agents系统。


本例采用循序渐进的方式来实施该方案,具体步骤如下:


1.搭建基础架构:部署一个简易的A2A服务器,了解在AgentCore Runtime中Agent部署、认证及调用的核心机制。


2.构建监控系统:沿用相同部署模式,为每个专业Agent(监控Agent、运维Agent、Host Agent)配置专属工具与功能。


3.实现Agent互联:配置Agent间的A2A通信通道,使各Agent可通过标准化协议实现动态发现与相互调用。


4.观摩系统运行:查看系统演示视频,直观了解故障实时检测、跨Agent协同及自动化响应的完整流程。


该多Agents监控系统的所有代码示例、完整实现方案及部署脚本,均已同步至GitHub代码库,您可查阅使用。






GitHub代码库:

https://github.com/awslabs/amazon-bedrock-agentcore-samples/tree/main/02-use-cases/A2A-multi-agent-incident-response






在AgentCore Runtime中

开始使用A2A协议






有关在AgentCore Runtime上部署A2A服务器的详细信息,包括创建、测试、部署及调用Agent的分步操作指南,请参阅《A2A协议支持文档》,其中涵盖以下内容:



  • 利用任意框架(包括Strands、OpenAI SDK、LangGraph)创建并配置A2A服务器。

  • 本地测试与验证。

  • 使用AgentCore CLI完成部署。

  • 身份验证配置(OAuth 2.0与Amazon IAM)

  • Agent Card的获取与发现。

  • 调用已部署Agent的客户端实现。



掌握这些知识后,您可复用相同模式构建多Agents监控系统的各个组件。


您可在GitHub示例中查看完整实例,本文将重点介绍该用例的实现细节。






GitHub示例:

https://github.com/awslabs/amazon-bedrock-agentcore-samples/tree/main/01-tutorials/01-AgentCore-runtime/05-hosting-a2a






准备条件






部署多Agents监控系统实现方案前,您需先按照以下步骤完成准备工作:


1.亚马逊云科技账户:您需要拥有一个具备相应权限的有效亚马逊云科技账户。



  • 创建亚马逊云科技账户。

  • 有权限访问亚马逊云科技管理控制台。

2.Amazon Web Services CLI:使用您的凭证安装并配置Amazon Web Services CLI。

  • 安装Amazon Web Services CLI

  • 配置Amazon Web Services CLI



3.安装uv工具。

4.支持区域:目前,本方案已在部分亚马逊云科技区域完成测试并得到支持,详细区域信息请参阅下方链接。

注意:如需在其他区域部署,您需要更新cloudformation/vpc-stack.yaml中的DynamoDB前缀列表映射。详情请参阅《VPC Stack文档》。






支持区域:

https://github.com/awslabs/amazon-bedrock-agentcore-samples/tree/main/02-use-cases/A2A-multi-agent-incident-response#:~:text=Supported%20Regions%3A%20This%20solution%20is%20currently%20tested%20and%20supported%20in%20the%20following%20AWS%20regions%3A

《VPC Stack文档》

https://github.com/madhurprash/amazon-bedrock-agentcore-samples/blob/main/02-use-cases/A2A-multi-agent-incident-response/cloudformation/vpc-stack.yaml






部署步骤




本指南将帮助您通过基础设施即代码(Infrastructure-as-Code)的方式,在亚马逊云科技上部署多Agents系统。要部署该方案,最便捷的方式是使用本例提供的自动化部署脚本。




步骤1:克隆代码库








git clone https://github.com/awslabs/amazon-bedrock-agentcore-samples.gitcd 02-use-cases/A2A-multi-agent-incident-response

左右滑动查看完整示意






步骤2:运行部署脚本






该部署脚本将自动完成以下操作:


验证Amazon Web Services CLI是否已安装并配置妥当、检查凭证是否有效、确认区域是否已设置为us-west-2、以交互方式收集所需参数、生成唯一的Amazon S3存储桶名称,并按正确顺序自动部署所有堆栈,预计部署时间约为10-15分钟。







uv run deploy.py

左右滑动查看完整示意






步骤3:配置运行时CLI参数






接下来,提供部署脚本所需参数。对于每个选项,直接按回车键即可使用默认的Amazon Bedrock模型ID,以及各Agent对应的Amazon CloudFormation堆栈名称。


API密钥:您需要准备以下API密钥(部署脚本会提示您输入):



  • OpenAI API密钥:可从OpenAI Platform获取。

  • Tavily API密钥:可从Tavily获取。

  • Google API密钥:可从Google AI Studio获取。

完成上述信息配置后,启动部署流程,您可分别在控制台和终端跟踪部署进度。




步骤4:配置运行时CLI参数




通过以下命令运行前端服务。该操作会完成React前端界面的搭建与运行工作,用户可通过此界面与多Agents故障响应系统交互,来监控亚马逊云科技基础设施、查询Amazon CloudWatch指标与日志,以及通过协同工作的A2A Agent检索故障补救方案。











cd frontendnpm install
chmod +x ./setup-env.sh./setup-env.sh
npm run dev

左右滑动查看完整示意






本次部署将创建一个多Agents A2A系统,其中包含三个运行于AgentCore Runtime的专业Agent,并通过A2A协议协同调度。


其中,Amazon Cognito堆栈通过创建Amazon Cognito用户池(包含四个独立客户端应用:WebSearch、Monitoring、Gateway及Host Agent客户端),提供基于OAuth 2.0协议的机器对机器(M2M)身份验证能力。


基于Strands SDK构建的监控Agent通过AgentCore Gateway,以及利用Smithy模型定义连接Amazon CloudWatch指标与日志,并结合自定义语义记忆策略跟踪故障事件。


基于OpenAI Agents SDK构建的运维Agent,通过Tavily API实现故障补救方案检索。


基于Google ADK构建的Host Agent则作为协调中枢,通过HTTP协议将任务分配给上述两个专业A2A Agent。






端到端事件响应工作流




本节将详细介绍一个端到端工作流:Host Agent负责管理对话交互、获取用户需求,并筛选最优专业Agent(监控Agent或运维Agent)来路由请求。监控Agent与运维Agent会展示其Agent Card,供Host Agent进行任务编排。本示例将基于多个日志组的简单错误分析场景展开测试,并检索对应的故障修复方案。




图片






该工作流包含以下步骤:


1.初始问候:用户向Host Agent发送问候消息,Host Agent接收并处理该请求,并以友好语气回复用户。


2.能力查询:用户向Host Agent询问“你具备哪些能力”,以了解其功能范围。Host Agent向用户解释:它是一个编排Agent,基于自身可访问的远程Agent连接,专为亚马逊云科技的监控与运维工作而设计。


3.列出日志组与仪表盘:用户向Host Agent发起请求,要求列出其亚马逊云科技账户中的日志组与仪表盘。Host Agent识别出这是一项监控类任务,随即调用transfer_to_agent工具进行任务分配,将该请求转发至监控Agent进行专业处理。监控Agent通过A2A Json RPC传输协议进行通信,检索相关信息后返回结果,显示账户中未发现可用仪表盘,共查询到153个日志组。Host Agent接收监控Agent的反馈后,再向用户展示完整的日志组与仪表盘信息。


4.分析指定日志组:用户请求Host Agent查找特定路径日志组中的错误信息,该日志组路径为/aws/bedrock-agentcore/runtimes/hostadk-<runtimeId>-DEFAULT。Host Agent判定这需要监控专业能力,遂执行transfer_to_agent工具,将含“分析指定日志组错误”指令的请求转发至监控Agent。监控Agent分析日志组后,发现9个错误与18条警告,并明确识别出了OTLP导出失败问题。Host Agent接收分析结果后,向用户展示详细的错误分析报告。


5.故障排查与修复建议:用户请求Host Agent对上述错误进行排查,并提供修复方案报告。该请求被路由至运维Agent,负责检索有关OTLP导出失败问题的解决方案。运维Agent通过A2A JsonRPC传输协议发起检索,并结合网络搜索补充信息,最终生成解决方案。






AgentCore Runtime

为A2A提供的安全机制






AgentCore Runtime为A2A通信安全提供两种认证方式:


1.OAuth 2.0认证:A2A客户端通过外部授权服务器进行身份验证,获取JSON Web Token(JWT),该token将随所有请求一同发送至A2A服务器。这种基于token的认证方式支持通过机器对机器(M2M)凭证或用户联合身份验证实现安全的标准化认证,使A2A服务器能够验证客户端身份,并根据token中的声明执行访问控制。


2.Amazon IAM认证:A2A客户端承担有权限调用A2A服务器Agent的IAM角色。该方式借助Amazon SigV4请求签名机制与Amazon IAM策略来控制访问权限,无需额外管理外部token,同时支持精细化的权限配置。






基于A2A协议

AgentCore Runtime的支持范围




AgentCore Runtime为A2A通信提供全方位支持,部分支持功能如下:




1.无状态服务器:AgentCore Runtime可托管暴露HTTP接口的A2A服务器,在9000端口运行无状态HTTP服务器,并支持JSON-RPC消息协议。AgentCore Runtime充当透明Agent,原样传递JSON-RPC请求与响应,确保协议完整性不受破坏。


2.已认证的Agent Card支持在/.well-known/agent-card.json路径下提供已认证的Agent Card,其中包含Agent能力信息,便于其他Agent自动发现。


3.安全入站认证机制:AgentCore Runtime支持通过Amazon SigV4与OAuth 2.0实现安全认证,保障Agent间通信的授权合法性与传输安全性。A2A服务器依托AgentCore Identity能力,通过HTTP头部提供的凭证信息对每一个入站请求进行身份验证。






4.安全出站授权机制:AgentCore Runtime支持通过Amazon IAM执行角色与AgentCore Identity实现安全出站授权。每个Agent会承担一个已定义的Amazon IAM执行角色,获得安全访问亚马逊云科技资源所需的必要权限。与外部服务交互时,Agent可借助AgentCore Identity,该服务为Google、GitHub、Slack等第三方身份提供商提供托管的OAuth 2.0支持。


5.VPC连接:您可配置AgentCore Runtime,以连接至Amazon VPC内的资源。通过启用VPC连接功能,您能够安全访问VPC内的私有资源,例如数据库、内部API及各类服务。


6.依托Amazon PrivateLink实现私有连接:Amazon Bedrock AgentCore支持使用Amazon PrivateLink,在您的VPC与AgentCore服务之间建立安全的私有连接。通过创建接口VPC端点,您可将A2A服务器通信完全限制在VPC内部,无需经过公网传输。


7.生命周期管理:AgentCore Runtime允许您配置生命周期规则,通过设置idleRuntimeSessionTimeoutmaxLifetime两个参数来管理资源使用情况。系统会自动终止空闲或长时间运行的会话,以提供资源利用效率并维持稳定的系统性能。






总结






Amazon Bedrock AgentCore Runtime对A2A协议的支持,为构建具备高扩展性、高互操作性的多Agents系统提供了有力支撑。借助A2A协议,无论AI Agent的底层框架、模型或托管基础设施存在何种差异,企业均可实现这些Agent间的标准化通信,从而构建出复杂的Agent解决方案。


本文介绍的亚马逊云科技监控与事件响应示例,充分印证了该方案的实践价值:基于Google ADK构建的编排Agent,能够与Strands及OpenAI SDK Agent高效协作,所有Agent均部署在Amazon Bedrock AgentCore Runtime,共同完成问题检测、解决方案检索与修复措施推荐等一系列任务。


传统模式下,要实现这种程度的互操作性,往往需要进行大量定制化集成工作,而A2A协议凭借其标准化通信设计,将这一过程变得简单易行。


随着AI系统从单一功能工具向协同工作环境演进,A2A与MCP等标准化协议已成为不可或缺的基础组件,它们将助力构建起一个全新的未来图景:实现动态发现、灵活组合与智能编排Agent,让企业真正达成“一次构建,全域集成”的高效开发模式。






本篇作者







图片

Madhur Prashant

亚马逊云科技应用生成式AI架构师。他热衷于探索人类思维与Agentic AI的融合领域,研究方向涵盖生成式AI、认知科学,专注于打造实用无害、能为客户带来最优体验的解决方案。






图片

Eashan Kaushik

亚马逊云科技人工智能与机器学习专家解决方案架构师。他致力于打造前沿的生成式AI解决方案,同时坚持以客户为中心的工作理念。






图片

Sriharsha M S

亚马逊云科技战略专家团队的首席生成式AI解决方案架构师。他专注于为借助人工智能与机器学习技术解决复杂业务难题的亚马逊云科技战略级客户提供服务,为大规模基础模型科学应用及Agentic AI相关项目提供技术指导与架构设计支持。其专业领域涵盖应用硬件加速器、系统架构、大数据、数据分析及机器学习等。






图片

Jeffrey Burke

亚马逊云科技应用生成式AI解决方案架构师。Jeffrey专注于为企业客户设计并落地前沿生成式AI解决方案,同时热衷传递复杂技术知识,致力于将深奥的AI概念转化为可落地、可扩展的实用方案,助力客户创造业务价值。他持有数据科学硕士学位与化学工程学士学位。






图片

Shreyas Subramanian

首席数据科学家,通过使用生成式AI和深度学习,来帮助客户利用亚马逊云科技服务解决业务挑战。Shreyas在大规模优化和机器学习领域拥有丰富经验,并擅长使用机器学习和强化学习加速优化任务。






图片

Andy Palmer

亚马逊云科技战略客户部技术总监。他的团队在多个专业领域提供专业解决方案架构技能,包括人工智能与机器学习、生成式AI、数据和分析、安全、网络和开源软件。Andy及其团队一直走在引导最先进的客户探索生成式AI之旅的前沿,并帮助寻找将这些新工具应用于现有问题以及全新创新和产品体验的方法。






图片

Sayee Kulkarni

Amazon Bedrock AgentCore服务团队的软件开发工程师。Sayee所在团队负责构建并维护AgentCore Runtime服务,帮助客户充分利用Agentic AI能力。她以帮助客户创造实际价值为驱动力,始终贯彻以客户为中心的理念。在为AgentCore设计并落地A2A能力的过程中,她发挥了关键作用,助力客户能够打造功能复杂的多Agents系统,让各Agent自主协作,高效解决各类复杂业务难题。




我们正处在Agentic AI爆发前夜。企业要从"成本优化"转向"创新驱动",通过完善的数据战略和AI云服务,把握全球化机遇。亚马逊将投入1000亿美元在AI算力、云基础设施等领域,通过领先的技术实力和帮助“中国企业出海“和”服务中国客户创新“的丰富经验,助力企业在AI时代突破。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值