本文档提供了一个部署在 Cloud Run 上的多智能体 AI 系统的高级架构,该系统可以分析不同的多模态数据并生成高置信度的分类。这种方法通过将实时数据与历史标准答案进行匹配来交叉验证碎片化媒体,从而生成有依据且可验证的洞见。
本文档的目标受众群体包括在云端构建和管理 AI 基础架构和应用的架构师、开发者和管理员。本文档假定您对 AI 智能体和模型有基本的了解。本文档未提供有关设计和编写 AI 智能体的具体指导。
本文档的“部署”部分列出了代码示例,您可以使用这些示例来了解如何构建和部署多智能体 AI 系统。
架构
下图展示了多智能体 AI 系统的架构,该系统使用 并行智能体设计模式 来协调对多模态数据的独立分析,以生成单个分类。
该架构展示了以下数据传输:
- Web 应用向根智能体发送请求,以分析一组多模态数据进行分类。根智能体是一个 协调智能体 ,用于接收请求并部署在 Cloud Run 服务上。
- 根智能体按以下方式处理请求:
- 根智能体启动
before_agent_callback以收集环境配置、验证用户输入并将资源 路径保存在共享 会话状态中。所有子智能体都可以访问共享会话状态,这消除了获取状态数据的冗余调用并降低了整体延迟时间。 - 根智能体使用 Vertex AI 上的 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 可伸缩的基础设施之上运行 容器。
- Vertex AI:一个机器学习平台,用于训练和部署机器学习模型 和 AI 应用以及自定义 LLM,以在依托 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 系统选择替代组件(包括框架、智能体运行时、工具、内存和设计模式), 请参阅 选择智能体 AI 架构组件。
使用场景
此架构专为合成各种多模态数据以执行分类和检测任务的使用场景而设计。为了提高准确性和可伸缩性,该架构使用多智能体 AI 系统,而不是单体式单智能体方法。这种设计模式提供有针对性的说明,避免冲突的指令,支持较小的工具集以加快决策速度,并支持独立更新,从而获得更稳健和复杂的结果。
以下是本文档中描述的架构的使用场景示例:
- 医疗诊断:部署专用智能体以独立分析医学影像、患者 症状和实验室结果,从而提供全面的诊断评估。AI 系统会根据确定的置信度阈值汇总这些发现,以便为临床医生提供有依据且可验证的洞见。
- 欺诈检测:部署智能体以 独立分析用户行为模式和交易数据(例如扫描的 收据和商家发票),从而检测并标记潜在的欺诈行为。通过将文档中的视觉证据与数字网络活动进行交叉引用,系统可以识别差异并标记单个智能体识别出可疑指标的任何交易。
- 文档处理:部署专用智能体以进行光学字符识别 (OCR)、文档分类和数据提取,从而自动执行文档分类和信息提取。为了支持高置信度的处理,AI 系统要求所有智能体就输出达成一致。
- 质量控制:部署 专用智能体以进行视觉检查、传感器数据分析和 规范检查,从而对产品质量进行分类或检测异常情况。系统会根据智能体之间确定的置信度阈值来确定通过或失败。
设计考虑事项
如需在生产环境中实现此架构,请考虑以下建议:
- 智能体安全性:如需限制智能体执行危险操作的能力, 请创建智能体身份,然后 使用 Identity and Access Management (IAM) 属性保护对 MCP 服务器的访问权限。通过应用 最小权限原则 ,您可以帮助确保智能体 AI 系统执行预期行为,并 防止对生产资源进行意外的读写权限。
- 入站流量安全性:为了控制对应用的访问权限,请停用 前端 Cloud Run 服务的 默认 run.app 网址,并 设置区域级外部应用负载平衡器。 除了对应用传入的流量进行负载均衡之外,负载平衡器还负责处理 SSL 证书管理。为了提供额外的保护,请使用 Google Cloud Armor 安全政策 为 服务提供请求过滤、DDoS 攻击防护和速率限制。
- 容器映像安全性:如需确保仅将获得授权的容器映像 部署到 Cloud Run,请使用 Binary Authorization。如需识别 和缓解容器映像中的安全风险,请使用 Artifact Analysis自动运行 漏洞扫描。如需了解详情,请参阅 容器扫描概览。
- 经济高效的提示:提示(输入)的长度和 生成的响应(输出)直接影响性能和费用。编写简短、直接且提供足够背景信息的提示。如需了解详情,请参阅 提示设计最佳实践。
- 存储费用:如需控制存储费用,您可以选择 Standard Storage 存储类别并启用 对象生命周期管理和 Autoclass。这些功能可帮助您根据访问模式或您设置的规则自动在存储类别之间移动或删除数据,从而优化费用。
- 存储安全性:在 Cloud Storage 中,您可以通过以下两种方法控制对存储分区和对象的访问权限:IAM 和访问权限控制列表 (ACL)。在大多数情况下,我们建议使用 IAM,这可让您在存储桶级和项目级授予权限。如需了解详情,请参阅访问权限 控制概览。
- 资源分配:根据性能要求,配置 要分配给 Cloud Run 服务的内存上限和 CPU 上限。如需了解更多性能优化指南, 请参阅 Cloud Run 常规开发技巧。
如需了解设计因素和最佳实践,以及有关构建和部署多智能体 AI 系统的建议,请参阅中的多智能体 AI 系统。 Google Cloud
部署
如需部署此架构的示例实现,请尝试 Way Back Home Level 1 Codelab。
后续步骤
- 了解如何在 Cloud Run 上托管 AI 智能体。
- 了解如何在 Cloud Run 上构建和部署远程 MCP 服务器。
- 了解如何选择智能体 AI 架构组件
- (视频)观看关于为智能体构建自定义工具的 Agent Factory 播客。
- 探索更多智能体 AI 架构指南。
- 如需简要了解中特定于 AI 和机器学习工作负载的架构原则和建议,请参阅 Well-Architected Framework 中的 AI 和机器学习视角 。 Google Cloud
- 如需查看更多参考架构、图表和最佳实践,请浏览 Cloud 架构中心。
贡献者
作者:Samantha He | 技术文档工程师
其他贡献者:
- Amina Mansour | Cloud Platform 评估团队主管
- Andrey Shakirov | 解决方案架构师,Google Cloud
- Ayo Adedeji | 开发者关系工程师
- Christina Lin | 开发者关系工程师经理
- Kumar Dhanagopal | 跨产品解决方案开发者
- Ryan Pei | 产品经理,Google Cloud