本文档介绍了在 Cloud Run 上部署的多智能体 AI 系统的高级架构,该系统可分析不同的多模态数据并生成高置信度分类。这种方法通过将实时数据与历史标准答案进行匹配,对碎片化媒体进行交叉验证,从而生成有依据、可验证的数据洞见。
本文档的目标受众群体包括在云端构建和管理 AI 基础设施和应用的架构师、开发者和管理员。本文档假定您对 AI 智能体和模型有基本的了解。本文档不提供有关设计和编码 AI 智能体的具体指导。
本文档的部署部分列出了代码示例,您可以使用这些示例来学习如何构建和部署多智能体 AI 系统。
架构
下图展示了多智能体 AI 系统的架构,该系统使用并行智能体设计模式来协调对多模态数据的独立分析,从而生成单一分类。
该架构展示了以下数据流:
- Web 应用向根代理发送请求,以分析一组多模态数据进行分类。根代理是一个协调器代理,用于接收请求,并部署在 Cloud Run 服务上。
- 根智能体按如下方式处理请求:
- 根智能体启动
before_agent_callback,以收集环境配置、验证用户输入,并将资源路径保存在共享的会话状态中。所有子智能体都可以访问共享会话状态,从而避免了为提取状态数据而进行的冗余调用,并降低了总体延迟时间。 - 根智能体使用 Gemini Enterprise Agent Platform 上的 Gemini 来解读用户请求,并将任务分配给并行运行的专用子智能体。
- 根智能体启动
- 每个子智能体都专注于特定领域,并独立执行以下任务:
- 图片和视频分析师子智能体与自定义 Model Context Protocol (MCP) 服务器交互,以执行以下操作:
- 提取存储在 Cloud Storage 存储桶中的原始非结构化数据。
- 向 Gemini 发送请求,以解读输入数据、对数据进行分类并计算置信度。
- Gemini 将建议的分类和置信度发送回自定义 MCP 服务器。
- 自定义 MCP 服务器将响应转发回子智能体。
- 结构化数据分析师子智能体通过完成以下任务来编排分析:
- 与 BigQuery MCP 服务器交互,以提取存储在 BigQuery 数据集中的结构化情境数据(例如历史记录、事件日志或传感器读数)。
- 结构化数据分析师向 Gemini 发送请求,要求其解读输入数据、对数据进行分类并计算置信度。
- Gemini 会将建议的分类和置信度发送回子代理。
- 图片和视频分析师子智能体与自定义 Model Context Protocol (MCP) 服务器交互,以执行以下操作:
- 每个子代理都会将建议的分类和置信度发送回根代理。
- 根智能体使用 Gemini 总结专用子智能体的输出,以生成单一、高置信度的分类。
- 如果来自专用子代理的大多数分类匹配,则根代理会将匹配的分类发送到 Web 应用。
- 如果子代理未提供匹配的分类,则根代理会选择置信度最高的分类,并将其发送到 Web 应用。
使用的产品
此参考架构使用以下 Google Cloud 产品和工具:
- Cloud Run:一个无服务器计算平台,可让您直接在 Google 可伸缩的基础设施之上运行容器。
- Gemini Enterprise Agent Platform:一个综合性平台,可让您构建、扩缩、治理和优化企业级 AI 智能体。
- Gemini:Google 开发的一系列多模态 AI 模型。
- BigQuery:一种企业数据仓库,可帮助您使用机器学习、地理空间分析和商业智能等内置功能管理和分析数据。
- Cloud Storage:适用于各种数据类型的费用低廉且不受限制的对象存储区。数据可从 Google Cloud内部和外部访问,并且跨位置进行复制以实现冗余。
- Google Cloud MCP 服务器:由 Google 管理的远程服务,这些服务实现了 Model Context Protocol (MCP),可让 AI 应用访问 Google 和 Google Cloud 产品和服务。
- Model Context Protocol (MCP):一种开源标准,用于将 AI 应用连接到外部系统。
- 智能体开发套件 (ADK):一套用于开发、测试和部署 AI 代理的工具和库。
如需了解如何为智能体 AI 系统选择替代组件(包括框架、Agent Runtime、工具、记忆和设计模式),请参阅选择智能体 AI 架构组件。
使用场景
此架构专为需要整合多种多模态数据以执行分类和检测任务的应用场景而设计。为了提高准确性和可伸缩性,该架构使用多智能体 AI 系统,而不是单体式单智能体方法。这种设计模式可提供重点突出的指令,避免指令冲突,支持使用更小的工具集来加快决策速度,并支持独立更新,从而实现更稳健、更复杂的结果。
以下是本文档中所述架构的用例示例:
- 医疗诊断:通过部署专用智能体来独立分析医学影像、患者症状和实验室结果,从而提供全面的诊断评估。AI 系统会根据确定的置信度阈值总结这些发现,为临床医生提供有依据、可验证的数据洞见。
- 欺诈检测:通过部署智能体来独立分析用户行为模式和交易数据(例如扫描的收据和商家账单),从而检测并标记潜在欺诈行为。通过将文档中的视觉证据与数字网络活动进行交叉对比,系统可以识别差异,并标记单个代理识别出可疑指标的所有交易。
- 文档处理:通过部署专门用于光学字符识别 (OCR)、文档分类和数据提取的智能体,自动对文档中的信息进行分类和提取。为了支持高置信度处理,AI 系统要求所有智能体就输出达成一致。
- 质量控制:通过部署专门的智能体进行视觉检查、传感器数据分析和规格检查,对产品质量进行分类或检测异常。系统会根据代理之间确定的置信度阈值来确定通过或失败。
设计考虑事项
本部分介绍了一些设计因素、最佳实践和建议,您在使用此参考架构开发满足特定安全性、费用和性能要求的拓扑时应考虑这些内容。
本部分中的指导并非详尽无遗。如需详细了解设计因素和最佳实践,以及有关构建和部署多智能体 AI 系统的建议,请参阅 Google Cloud中的多智能体 AI 系统。
安全性、隐私权和合规性
为了帮助应对 AI 智能体的独特安全风险,Google 建议采用一种方法,将确定性安全控制与基于推理的动态防御相结合:
- 人工监督:在业务关键型系统中纳入人机协同流程,以便人工监督员可以审核输出并批准、覆盖或暂停智能体操作。
- Agent Identity:为每个智能体分配一个与工作负载绑定的身份,以强制执行最小权限访问权限控制,并集中管理外部工具的凭证。
- Agent Gateway:通过 Model Armor 强制执行入站和出站流量治理、默认拒绝访问政策以及内嵌提示和工具检查。
Agent Registry:验证智能体是否仅连接到已获批准的子智能体和 MCP 工具。
应用入站流量安全性:为了控制对应用的访问权限,请停用前端 Cloud Run 服务的默认 run.app 应用网址,并设置区域级外部应用负载均衡器。除了对应用的传入流量进行负载均衡之外,负载均衡器还负责处理 SSL 证书管理。为了增强保护,请使用 Google Cloud Armor 安全政策为服务提供请求过滤、DDoS 攻击防护和速率限制。
容器映像安全:为确保仅将获得授权的容器映像部署到 Cloud Run,请使用 Binary Authorization。如需识别和缓解容器映像中的安全风险,请使用 Artifact Analysis 自动运行漏洞扫描。如需了解详情,请参阅容器扫描概览。
存储安全性:Cloud Storage 支持两种方法来控制用户对存储桶和对象的访问权限:Identity and Access Management (IAM) 和访问权限控制列表 (ACL)。在大多数情况下,我们建议使用 IAM,这可让您在存储桶级和项目级授予权限。如需了解详情,请参阅访问权限控制概览。
费用优化
为帮助确保您的代理配置符合您的费用要求,请考虑以下建议:
- 经济实惠的提示:提示(输入)和生成的回答(输出)的长度会直接影响性能和费用。撰写简短、直接且提供足够上下文的提示。如需了解详情,请参阅提示设计的最佳实践。
- 存储费用:如需控制存储费用,您可以选择 Standard Storage,并启用对象生命周期管理和 Autoclass。这些功能可根据您的访问模式或您设置的规则,自动在存储类别之间移动或删除数据,从而帮助您优化费用。
性能优化
为帮助确保代理配置满足您的性能要求,请考虑以下建议:
- 资源分配:根据您的性能要求,配置要分配给 Cloud Run 服务的内存限制和 CPU 限制。如需更多性能优化指南,请参阅常规 Cloud Run 开发技巧。
部署
如需部署此架构的示例实现,请尝试“Way Back Home”第 1 级 Codelab。
后续步骤
- 了解如何在 Cloud Run 上托管 AI 智能体。
- 了解如何在 Cloud Run 上构建和部署远程 MCP 服务器。
- 了解如何选择智能体 AI 架构组件。
- (视频)观看关于为代理构建自定义工具的 Agent Factory 播客。
- 探索学习资源,通过 Gemini Enterprise Agent Ready (GEAR) 构建和部署企业级智能体。
- 探索更多智能体 AI 架构指南。
- 如需简要了解 Google Cloud中特定于 AI 和机器学习工作负载的架构原则和建议,请参阅 Well-Architected Framework 中的 AI 和机器学习视角。
- 如需查看更多参考架构、图表和最佳实践,请浏览 Cloud 架构中心。
贡献者
作者:Samantha He | 技术文档工程师
其他贡献者:
- Amina Mansour | 全球开发者关系与战略内容技术主管
- Andrey Shakirov | 解决方案架构师,Google Cloud
- Ayo Adedeji | 开发者关系工程师
- Christina Lin | 开发者关系工程师经理
- Kumar Dhanagopal | 跨产品解决方案开发者
- Ryan Pei | Google Cloud 产品经理