使用 ADK 和 Cloud Run 的单智能体 AI 系统

本文档提供了一个参考架构,可帮助您在 Google Cloud上设计单智能体 AI 系统。此架构中的单智能体系统是使用智能体开发套件 (ADK) 构建的,并部署在 Cloud Run 上。您还可以将代理部署在 Vertex AI Agent Engine 或 Google Kubernetes Engine (GKE) 上。该架构使用 Model Context Protocol (MCP),使智能体能够访问和处理来自多个来源的信息,从而提供富有背景信息的洞见。

本文档面向 AI 应用的架构师、开发者和管理员。本文档假定您对 AI、机器学习 (ML) 和大语言模型 (LLM) 概念具有基本的了解。本文档还假定您对 AI 代理和模型有基本的了解。本指南未提供有关设计和编码 AI 代理的具体指导。

本文档的部署部分列出了可用于学习如何构建和部署单代理 AI 系统的代码示例。

架构

下图展示了部署在 Cloud Run 上的单代理 AI 系统的架构:

部署在 Cloud Run 上的单代理架构。

架构组件

示例架构包含以下组件:

组件 说明
前端 用户通过前端(例如作为无服务器 Cloud Run 服务运行的聊天界面)与代理互动。
代理 代理接收用户请求、解读用户意图、选择合适的工具,然后综合信息来回答查询。
智能体运行时环境 该代理使用 ADK 构建,并以无服务器 Cloud Run 服务的形式部署。您还可以将智能体部署到 Vertex AI Agent Engine 或作为容器化应用部署到 GKE。 如需了解如何选择代理运行时,请参阅选择代理式 AI 架构组件
ADK ADK 提供用于开发、测试和部署智能体的工具和框架。ADK 可抽象化智能体创建的复杂性,让 AI 开发者专注于智能体的逻辑和功能。使用 ADK 开发代理时,您可以将代理配置为访问和使用 内置工具(例如 Google 搜索)。
AI 模型和模型运行时 对于推理服务,此示例架构中的代理使用 Vertex AI 上的 Gemini AI 模型。
MCP Toolbox MCP Toolbox for Databases 为智能体提供特定于数据库的工具。它可以处理连接池和身份验证等复杂情况。
MCP 客户端、服务器和工具 MCP 通过标准化代理和工具之间的互动,方便访问工具。对于每个智能体-工具对,MCP 客户端都会向 MCP 服务器发送请求,智能体通过该服务器访问文件系统或 API 等工具。例如,StackOverflow LangChain 工具和 Google 搜索工具等外部工具可以提供数据和依据。
可观测性 该代理通过 Google Cloud Observability 进行日志记录、监控和跟踪。

智能体流程

上述架构中的单代理系统示例具有以下流程:

  1. 用户通过前端(例如以无服务器 Cloud Run 服务形式运行的聊天界面)输入提示。
  2. 前端将提示转发给智能体。
  3. 智能体使用 AI 模型来推理用户提示并合成回答:
    • AI 模型会确定使用哪些工具来收集情境信息或执行任务。
    • 代理执行工具调用,并将响应添加到其上下文中。
    • 代理执行接地和中间验证。

使用的产品

此参考架构使用以下 Google Cloud 和开源产品及工具:

使用场景

本部分介绍了本文档中所述架构的可能应用场景。

自动 bug 报告分类

您可以根据此参考架构自动对收到的 bug 报告进行初步过滤:了解问题、搜索重复项、收集相关技术背景信息,然后在系统中创建 bug。AI 赋能的智能体可以充当智能助理,执行初步调查,从而让人类专家专注于更复杂的问题解决工作。

在此使用情形下,该架构可提供以下优势:

  • 缩短问题解决时间:该代理可自动执行初始研究和上下文收集,从而显著缩短分配和解决 bug 工单所需的时间。
  • 提高了准确性和一致性:智能体可以系统地搜索多个数据源(内部数据库、代码库和公共网络)。与手动分诊相比,此功能可提供更全面、更一致的分析。
  • 减少人工工作量:该代理可以分担 IT 支持和工程团队的重复性问题分类任务,让他们专注于更有价值的工作。

此架构非常适合任何开发软件并希望提高 bug 解决流程的效率和效果的组织。如需了解详情和部署选项,请参阅软件 Bug 助理 - ADK Python 示例代理工具打造代理:使用 ADK 从零开始打造助理

客户服务

您可以调整此参考架构,以便为客户提供顺畅且个性化的购物体验。AI 赋能的代理可以提供客户服务、推荐产品、管理订单和安排服务,从而让人工客服代表专注于其他任务。

在此使用情形下,该架构可提供以下优势:

  • 追加销售和促销:代理可以建议产品、服务和促销活动,帮助您提高销售额。智能体的建议基于客户的当前订单和相关销售信息、客户的订单历史记录以及客户购物车中的商品。

  • 订单管理和安排:智能体可以管理客户购物车的内容并帮助客户自行安排服务,从而提高效率并减少客户摩擦。

  • 减少人工工作量:智能体可处理一般咨询、订单和安排,使人工客服能够专注于处理更复杂的客户问题。

此架构非常适合希望提升客户体验、提高销售额并简化订单管理和调度的零售组织。如需了解详情和部署选项,请参阅 Cymbal Home & Garden 客户服务代理

时序预测

您可以根据此参考架构预测结果,例如需求预测、流量模式预测或机器故障分析和预测。AI 赋能的代理可以分析实时数据、历史趋势和即将发生的事件。代理可以使用这些分析来预测指定时间段内的结果。这些预测有助于您制定计划,并减少人工数据分析师花费的时间。

此使用情形可在许多场景中为组织带来益处,例如:

  • 库存管理:通过将高级分析与历史销售数据和市场趋势相结合,智能体可以帮助您规划补货订单,以便您为客户需求的大幅波动做好准备。
  • 出行路线:通过分析实时和历史交通模式以及施工或道路封闭等事件,该代理可帮助送货和服务提供商节省时间并降低出行费用。
  • 避免中断:该代理可帮助您确定历史中断的根本原因,从而避免潜在的服务中断。它还可以帮助预测未来的潜在故障状态,以便您在问题发生之前就采取措施来缓解问题。

此架构非常适合需要根据既定趋势调整不断变化的模式的任何组织。对于客户可以从主动式数据洞见中受益的组织,这也是理想的选择,因为这些数据洞见有助于客户规划未来。如需了解详情和部署选项,请参阅使用 Google 的 ADK 和 MCP 工具箱的时间序列预测代理

文档检索

您可以调整此参考架构,以使用 Vertex AI RAG Engine 并创建代理来管理上下文数据检索。文档检索代理可以从精心挑选的一组文档中提取相关数据,以提供事实性答案,并引用来源材料。

借助文档检索代理,您可以帮助确保客户和内部用户获得基于具体问题的知情且有背景信息的回答。此实现有助于确保回答基于您验证过的信息,从而减少错误和不准确之处。

文档检索架构非常适合用于有关政策和流程、技术基础设施、产品功能和其他基于事实的文档的知识库。如需了解如何开发由检索增强生成 (RAG) 技术提供支持的文档检索代理,请参阅文档检索代理

设计替代方案

本部分介绍了您可以在 Google Cloud中为 AI 代理部署考虑的其他设计方法。

智能体运行时环境

在本文档介绍的架构中,代理及其工具部署在 Cloud Run 上。您还可以使用 GKE 或 Vertex AI Agent Engine 作为替代运行时。如需了解如何选择代理运行时,请参阅“选择代理型 AI 架构组件”中的代理运行时

AI 模型运行时

在本文档介绍的架构中,AI 模型运行时为 Vertex AI。您还可以使用 Cloud Run 或 GKE 作为替代运行时。如需了解如何选择模型运行时,请参阅“选择智能体 AI 架构组件”中的模型运行时

设计考虑事项

本部分提供的指导可帮助您使用此参考架构开发满足特定安全性、可靠性、费用、运营效率和性能要求的架构。

系统设计

本部分提供的指导可帮助您为部署选择 Google Cloud 区域以及选择适当的 Google Cloud 产品和工具。

区域选择

为 AI 应用选择 Google Cloud 区域时,请考虑以下因素:

如需为您的应用选择合适的 Google Cloud 位置,请使用以下工具:

  • Google Cloud 区域选择器:一种基于 Web 的交互式工具,可根据碳足迹、费用和延迟时间等因素为您的应用和数据选择最佳 Google Cloud区域。
  • Cloud Location Finder API:一种公共 API,可提供一种以编程方式查找 Google Cloud、Google Distributed Cloud 和其他云提供商中的部署位置的方法。

代理设计

本部分提供有关设计 AI 代理的一般建议。有关编写代理代码和逻辑的详细指南不在本文档的讨论范围内。

设计重点 建议
代理定义和设计
  • 明确定义智能体 AI 系统的业务目标以及每个智能体执行的任务。
  • 选择最符合您要求的代理设计模式
  • 使用 ADK 可高效创建、部署和管理智能体架构。
智能体互动
  • 在架构中设计面向用户的代理,以支持自然语言交互。
  • 确保每个代理都清楚地向其依赖的客户端传达其操作和状态。
  • 设计代理,使其能够检测和处理模棱两可的查询和细致的互动。
背景信息、工具和数据
  • 确保代理具有足够的上下文来跟踪多轮互动和会话参数。
  • 清晰描述智能体可使用的工具的用途、实参和用法。
  • 确保代理的回答基于可靠的数据源,以减少幻觉。
  • 实现逻辑来处理不匹配的情况,例如提示偏离主题时。

内存和会话存储空间

本文档中显示的示例架构不包含内存或会话存储空间。在生产环境中,您可以通过将状态和记忆集成到代理中来改进回答并添加个性化功能。

  • 会话:会话是指用户与代理之间的对话消息串,从初始互动到对话结束。
  • 状态:状态是指代理在特定会话中使用的和收集的数据。收集的状态数据包括用户和代理之间交换的消息历史记录、任何工具调用的结果,以及代理为了了解对话上下文而需要的其他变量。

ADK 可以使用 Session 对象和 state 属性在短期内存中跟踪会话。ADK 还支持在同一用户的不同会话中保留长期记忆,包括通过记忆库保留。 如需存储会话状态,您还可以使用 Memorystore for Redis 等服务。

如需了解代理内存选项,请参阅选择代理式 AI 架构组件

安全

本部分介绍了设计注意事项和建议,可帮助您在 Google Cloud 中设计满足工作负载安全要求的拓扑。

组件 设计注意事项和建议
代理

AI 代理会带来一些独特而严重的安全风险,而传统的确定性安全实践可能无法充分缓解这些风险。Google 建议采用一种方法,将确定性安全控制措施的优势与基于推理的动态防御措施相结合。这种方法基于三项核心原则:人工监督、精心定义的代理自主性和可观测性。以下是与这些核心原则相符的具体建议。

人工监督:智能体 AI 系统有时可能会出现故障或无法按预期运行。例如,模型可能会生成不准确的内容,或者代理可能会选择不当的工具。在业务关键型智能体 AI 系统中,纳入人机协同流程,以便人类主管监控、替换和暂停智能体。例如,人类用户可以审核智能体的输出,批准或拒绝输出,并提供进一步的指导来纠正错误或做出战略性决策。这种方法将智能体 AI 系统的效率与人类用户的批判性思维和领域专业知识相结合。

代理的访问权限控制:使用 Identity and Access Management (IAM) 控制配置代理权限。仅向每个代理授予其执行任务以及与工具和其他代理通信所需的权限。这种方法有助于最大限度地降低安全漏洞的潜在影响,因为遭到入侵的代理对系统的其他部分的访问权限有限。如需了解详情,请参阅为代理设置身份和权限管理已部署代理的访问权限

监控:利用全面的跟踪功能监控智能体行为,让您能够了解智能体执行的每项操作,包括其推理过程、工具选择和执行路径。如需了解详情,请参阅 Vertex AI Agent Engine 中的代理日志记录ADK 中的日志记录

如需详细了解如何保护 AI 智能体,请参阅 AI 智能体的安全性和安全性

Vertex AI

责任共担:安全是共同的责任。Vertex AI 可保护底层基础架构,并提供工具和安全控制措施,帮助您保护数据、代码和模型。您有责任正确配置服务、管理访问权限控制和保护应用。如需了解详情,请参阅 Vertex AI 共担责任

安全控制措施:Vertex AI 支持 Google Cloud 安全控制措施,可用于满足数据驻留、客户管理的加密密钥 (CMEK)、使用 VPC Service Controls 的网络安全和Access Transparency方面的要求。如需了解详情,请参阅以下文档:

安全性:AI 模型可能会生成有害的回答,有时是响应恶意提示。

  • 为了提高安全性并防范代理 AI 系统可能被滥用的情况,您可以配置内容过滤器来屏蔽有害的输入和回答。如需了解详情,请参阅安全过滤条件和内容过滤条件
  • 如需检查和清理推理请求及响应,以防范提示注入和有害内容等威胁,您可以使用 Model Armor。 Model Armor 可帮助您防止恶意输入、验证内容安全性、保护敏感数据、保持合规性,并始终如一地执行安全政策。

模型访问权限:您可以设置组织政策,以限制可在 Google Cloud 项目中使用的 AI 模型的类型和版本。如需了解详情,请参阅控制对 Model Garden 模型的访问权限

数据保护:如需发现提示和回答以及日志数据中的敏感数据并对其进行去标识化处理,请使用 Cloud Data Loss Prevention API。 如需了解详情,请观看以下视频: 在 AI 应用中保护敏感数据

MCP 将代理配置为使用 MCP 时,请确保对外部数据和工具的访问已获得授权,实施加密等隐私权控制措施,应用过滤器来保护敏感数据,并监控代理互动。如需了解详情,请参阅 MCP 和安全性
A2A

传输安全性:A2A 协议强制要求在生产环境中使用 HTTPS 进行所有 A2A 通信,并建议使用 传输层安全协议 (TLS) 1.2 版或更高版本。

身份验证:A2A 协议将身份验证委托给标准 Web 机制(如 HTTP 标头)以及 OAuth2 和 OpenID Connect 等标准。每个代理都会在其代理卡片中宣传身份验证要求。如需了解详情,请参阅 A2A 身份验证

Cloud Run

入站流量安全(适用于前端服务):如需控制对应用的访问权限,请停用前端 Cloud Run 服务的默认 run.app 网址,并设置区域级外部应用负载平衡器。除了将入站流量均衡分配给应用之外,负载平衡器还负责处理 SSL 证书管理。为了增强保护,您可以使用 Google Cloud Armor 安全政策为服务提供请求过滤、DDoS 攻击防护和速率限制。

用户身份验证

  • 组织内部的用户:如需验证内部用户对前端 Cloud Run 服务的访问权限,请使用 Identity-Aware Proxy (IAP)。如果用户尝试访问受 IAP 保护的资源,IAP 会执行身份验证和授权检查。
  • 组织外部的用户:如需对外部用户访问前端服务的行为进行身份验证,请使用 Identity PlatformFirebase Authentication。如需管理外部用户访问权限,请配置您的应用以处理登录流程,并向 Cloud Run 服务进行经过身份验证的 API 调用。

如需了解详情,请参阅对用户进行身份验证

容器映像安全性:如需确保仅将获得授权的容器映像部署到 Cloud Run,您可以使用 Binary Authorization。如需识别和缓解容器映像中的安全风险,请使用 Artifact Analysis 自动运行漏洞扫描。如需了解详情,请参阅容器扫描概览

数据驻留:Cloud Run 可帮助您满足数据驻留要求。Cloud Run 函数在所选的区域内运行。

如需详细了解容器安全性,请参阅 Cloud Run 常规开发技巧

此架构中的所有产品

数据加密:默认情况下, Google Cloud会使用 Google-owned and Google-managed encryption keys对静态数据进行加密。 如需使用您控制的加密密钥保护代理的数据,您可以使用在 Cloud KMS 中创建和管理的 CMEK。如需了解与 Cloud KMS 兼容的 Google Cloud 服务,请参阅兼容的服务

降低数据渗漏风险:为降低数据渗漏风险,请在基础设施周围创建 VPC Service Controls 边界。VPC Service Controls 支持此参考架构使用的所有 Google Cloud 服务。

访问权限控制:为拓扑中的资源配置权限时,请遵循最小权限原则。

云环境安全:使用 Security Command Center 中的工具检测漏洞、识别和缓解威胁、定义和部署安全状况,以及导出数据以供进一步分析。

部署后优化:在 Google Cloud中部署应用后,使用 Active Assist 获取建议,进一步优化安全性。查看建议,并根据您的环境应用这些建议。如需了解详情,请参阅在 Active Assist 中查找建议

更多安全建议

可靠性

本部分介绍在 Google Cloud中为部署构建和运营可靠的基础设施时应考虑的设计因素和建议。

组件 设计注意事项和建议
代理

模拟故障:在将 agentic AI 系统部署到生产环境之前,请通过模拟生产环境来验证该系统。识别并修复问题和意外行为。

横向扩缩:为确保高可用性和容错能力,请在负载均衡器后运行代理应用的多个实例。此方法还可以通过在多个实例之间分配请求来帮助减少延迟时间和超时。某些代理运行时会自动为您处理负载均衡,例如 Cloud Run 服务中的实例自动扩缩

从中断中恢复:为了帮助确保代理能够妥善处理重启并保持上下文,请将状态与运行时分离。如需实现此类无状态代理应用,请使用数据库或分布式缓存等外部数据存储区。例如,您可以使用 Memory BankMemorystore for RedisCloud SQL 等数据库服务。

处理错误:为了能够诊断和排查错误,请实现日志记录、异常处理和重试机制。

Vertex AI

配额管理:Vertex AI 支持 Gemini 模型的动态共享配额 (DSQ)。DSQ 有助于灵活管理按需付费请求,并且无需手动管理配额或请求增加配额。DSQ 会在活跃客户之间动态分配给定模型和区域的可用资源。使用 DSQ 时,没有预定义的个人客户配额限制。

容量规划:如果对模型的请求数量超出分配的容量,则系统会返回错误代码 429。对于业务关键型且需要持续高吞吐量的工作负载,您可以使用预配吞吐量来预留吞吐量。

模型端点可用性:如果数据可以在多个区域或国家/地区之间共享,您可以为模型使用全球端点

Cloud Run

针对基础架构中断的稳健性:Cloud Run 是区域级服务。它跨一个区域内的多个可用区同步存储数据,并自动在这些可用区之间对流量进行负载均衡。如果发生可用区服务中断,Cloud Run 将继续运行,并且数据不会丢失。如果区域服务中断,该服务将停止运行,直到 Google 解决服务中断问题。

横向伸缩:Cloud Run 服务会为您处理实例自动伸缩。自动扩缩有助于确保实例能够处理所有传入的请求、事件和 CPU 利用率,从而确保高可用性。

此架构中的所有产品

部署后优化:在 Google Cloud中部署应用后,您可以使用 Active Assist 获取建议,进一步优化安全性。查看建议,并根据您的环境酌情应用。如需了解详情,请参阅在 Active Assist 中查找建议

如需了解特定于 AI 和机器学习工作负载的可靠性原则和建议,请参阅 Well-Architected Framework 中的 AI 和机器学习视角:可靠性

运维

本部分介绍使用此参考架构设计可高效运营的 Google Cloud 拓扑时应考虑的因素。

组件 设计注意事项和建议
代理

调试和分析:在代理应用中实现结构化日志记录。通过日志记录和跟踪,您可以以结构化格式捕获关键信息,例如调用了哪些工具、代理的输入和输出,以及每个步骤的延迟时间。

Vertex AI

使用日志进行监控:默认情况下,写入 stdoutstderr 信息流的代理日志会路由到 Cloud Logging。如需进行高级日志记录,您可以将 Python 日志记录器与 Logging 集成。如果您需要完全控制日志记录和结构化日志,请使用 Logging 客户端。 如需了解详情,请参阅记录代理ADK 中的日志记录

持续评估:定期对智能体的输出以及智能体为生成输出而采取的轨迹或步骤进行定性评估。如需实现智能体评估,您可以使用 Gen AI Evaluation ServiceADK 支持的评估方法

Cloud Run

健康状况和性能:使用 Google Cloud Observability 监控 Cloud Run 服务。在 Cloud Monitoring 中设置提醒,以便在出现潜在问题时收到通知,例如错误率升高、延迟时间过长或资源利用率异常。

数据库

健康状况和性能:使用 Google Cloud Observability 监控数据库。在 Monitoring 中设置提醒,以便在出现潜在问题时收到通知,例如错误率增加、延迟时间过长或资源利用率异常。

MCP

数据库工具:如需高效管理 AI 代理的数据库工具,并确保代理安全处理连接池和身份验证等复杂问题,请使用 MCP Toolbox for Databases。它提供了一个集中存储和更新数据库工具的位置。您可以在多个代理之间共享工具,并更新工具,而无需重新部署代理。该工具箱包含各种工具,可用于 Google Cloud AlloyDB for PostgreSQL 等数据库以及 MongoDB 等第三方数据库。

生成式 AI 模型:如需让 AI 代理使用 Imagen 和 Veo 等 Google 生成式 AI 模型,您可以将 MCP 服务器用于 Google Cloud 生成式媒体 API

Google 安全产品和工具:如需让 AI 代理访问 Google 安全产品和工具(例如 Google Security Operations、Google Threat Intelligence 和 Security Command Center),请使用 Google 安全产品的 MCP 服务器

架构中的所有 Google Cloud 产品

跟踪:使用 Trace 持续收集和分析跟踪记录数据。借助轨迹数据,您可以快速识别和诊断复杂代理工作流中的延迟时间问题。您可以在 Google Cloud 控制台的 Trace 探索器页面中通过可视化图表进行深入分析。如需了解详情,请参阅跟踪代理

如需了解特定于 AI 和机器学习工作负载的卓越运营原则和建议,请参阅 Well-Architected Framework 中的 AI 和机器学习视角:卓越运营

费用优化

本部分将指导您优化您使用此参考架构构建的 Google Cloud 拓扑的设置和操作费用。

组件 设计注意事项和建议
Vertex AI

费用分析和管理:为了分析和管理 Vertex AI 费用,我们建议您为每秒查询次数 (QPS) 和每秒令牌数 (TPS) 创建基准指标。然后,在部署后监控这些指标。基准还有助于进行容量规划。例如,基准有助于您确定何时可能需要预配的吞吐量

模型选择:为 AI 应用选择的模型会直接影响费用和性能。为了找到在性能和费用之间取得最佳平衡的模型,请针对您的特定应用场景以迭代方式测试模型。建议您先从最具成本效益的型号入手,然后逐步升级到更强大的型号。

经济高效的提示:提示(输入)和生成的回答(输出)的长度会直接影响性能和费用。撰写简短、直接且提供足够背景信息的提示。设计提示,以便从模型中获得简洁的回答。 例如,可使用“用两句话总结”或“列出 3 个要点”等表述方式。如需了解详情,请参阅提示设计最佳实践

上下文缓存:为了降低包含重复内容及大量输入 token 的请求的费用,请使用上下文缓存

批量请求:在相关情况下,考虑使用批量预测。批量请求的费用低于标准请求。

Cloud Run

资源分配:创建 Cloud Run 服务时,您可以指定要分配的内存量和 CPU 量。从默认 CPU 和内存分配开始。观察一段时间内的资源用量和费用,并根据需要调整分配。如需了解详情,请参阅以下文档:

费率优化:如果您可以预测 CPU 和内存要求,则可以通过承诺使用折扣 (CUD) 来节省资金。

此架构中的所有产品 部署后优化:在 Google Cloud中部署应用后,您可以使用 Active Assist 获取建议,进一步优化费用。查看建议,并根据您的环境应用这些建议。如需了解详情,请参阅在 Active Assist 中查找建议

如需估算 Google Cloud 资源的费用,请使用Google Cloud 价格计算器

如需了解特定于 AI 和机器学习工作负载的费用优化原则和建议,请参阅 Well-Architected Framework 中的AI 和机器学习视角:费用优化

性能优化

本部分介绍了在 Google Cloud 中设计满足工作负载性能要求的拓扑时应考虑的设计事项和建议。

组件 设计注意事项和建议
代理

模型选择:为智能体 AI 系统选择模型时,请考虑智能体需要执行的任务所需的功能。

提示优化:如需大规模快速提升和优化提示效果,并避免手动重写提示,请使用 Vertex AI 提示优化器。 优化器可帮助您高效地调整不同模型中的提示。

Vertex AI

模型选择:为 AI 应用选择的模型会直接影响费用和性能。为了找到在性能和费用之间取得最佳平衡的模型,请针对您的特定应用场景以迭代方式测试模型。建议您先从最具成本效益的型号入手,然后逐步升级到更强大的型号。

提示工程:提示(输入)和生成的回答(输出)的长度会直接影响性能和费用。撰写简短、直接且提供足够背景信息的提示。设计提示,以便从模型中获得简洁的回答。例如,可使用“用两句话总结”或“列出 3 个要点”等表述方式。如需了解详情,请参阅提示设计最佳实践

上下文缓存:为了缩短包含重复内容及大量输入 token 的请求的延迟时间,请使用上下文缓存

Cloud Run

资源分配:根据性能要求,配置要分配给 Cloud Run 服务的内存和 CPU。如需了解详情,请参阅以下文档:

如需了解更多性能优化指南,请参阅常规 Cloud Run 开发技巧

此架构中的所有产品 部署后优化:在 Google Cloud中部署应用后,使用 Active Assist 获取建议,进一步优化性能。 查看建议,并根据您的环境应用这些建议。如需了解详情,请参阅在 Active Assist 中查找建议

如需了解特定于 AI 和机器学习工作负载的性能优化原则和建议,请参阅 Well-Architected 框架中的 AI 和机器学习视角:性能优化

部署

此参考架构不支持自动部署。使用以下代码示例可帮助您构建单代理架构:

如需查看代码示例以开始将 ADK 与 MCP 服务器结合使用,请参阅 MCP 工具

如需查看其他单智能体 AI 系统的示例,您可以使用以下代码示例。这些代码示例是功能齐全的起点,可用于学习和实验。为了在生产环境中实现最佳运行,您必须根据具体的业务和技术要求自定义代码。

  • 个性化购物:为特定品牌、商家或在线交易平台提供个性化的商品推荐。
  • 突发事件管理:通过使用动态身份传播,根据每个请求验证最终用户令牌和身份。
  • 订单处理:处理和存储订单,并根据指定的订单数量协调电子邮件确认流程,以进行有条件的人工审核。
  • 数据工程:开发 Dataform 流水线,排查流水线问题,以及管理数据工程(从复杂的 SQL 查询到数据转换和数据依赖项)。
  • 文档检索:使用 RAG 查询您上传到 Vertex AI RAG Engine 的文档,并获取包含文档和代码引用信息的答案。

后续步骤

贡献者