本页重点介绍了 Cloud Run 作为以下 AI 用例的托管平台所适用的使用场景:
在 Cloud Run 上托管 AI 应用
AI 应用通过 AI 模型来执行特定操作或任务。例如,AI 应用可以使用 AI 模型总结文档,或作为聊天界面,通过向量数据库检索更多上下文信息。
Cloud Run 是一种应用托管基础架构,可为 AI 应用工作负载提供全托管式环境。Cloud Run 可与 Gemini API、Vertex AI 端点等 AI 模型集成,也可集成托管在启用 GPU 的 Cloud Run 服务上的模型。Cloud Run 还与 Cloud SQL for PostgreSQL 和 AlloyDB for PostgreSQL 集成,这两个数据库都提供 pgvector
扩展程序,用于检索增强生成 (RAG)。
在 Cloud Run 上托管 AI 代理
AI 代理结合高级 AI 模型的智能与工具使用能力,在用户的控制下代表用户采取行动。
您可以将 AI 代理实现为 Cloud Run 服务,用于编排一组异步任务,并通过多次请求-响应交互向用户提供信息。
Cloud Run 上的 AI 代理架构
Cloud Run 上部署的典型 AI 代理架构可能包括来自 Google Cloud 以及 Google Cloud外部的多个组件。
服务和编排:Cloud Run 服务作为可扩缩的 API 端点,可通过自动、按需、快速扩缩容来处理多个并发用户请求。此服务运行核心代理逻辑,通常采用 LangGraph 或代理开发套件 (ADK) 等 AI 编排框架。此层用于协调对其他组件的调用。Cloud Run 支持使用 WebSockets 将 HTTP 响应流式传输回用户。Cloud Run 的内置服务身份可提供安全且自动的凭证,以便在无需管理 API 密钥的情况下调用 Google Cloud API。
AI 模型:编排层调用模型以实现推理功能。这些模型可以是:
- Gemini API
- 部署在 Vertex AI 端点上的自定义模型或其他基础模型
- 您自己的微调模型,通过单独的启用 GPU 的 Cloud Run 服务提供
记忆:代理通常需要记忆来保留上下文并从过去的互动中学习。
- 短期记忆可以通过将 Cloud Run 连接到 Memorystore for Redis 来实现。
- 将 Cloud Run 连接到可扩展的无服务器 NoSQL 数据库 Firestore,即可实现长期记忆,用于存储对话历史记录或记住用户偏好。
数据库和检索:对于检索增强生成 (RAG) 或提取结构化数据:
- 通过将 Cloud Run 连接到使用
pgvector
扩展程序的向量数据库(如 Cloud SQL for PostgreSQL 或 AlloyDB for PostgreSQL),以查询特定实体信息或对嵌入执行相似度搜索。
- 通过将 Cloud Run 连接到使用
工具:编排程序使用工具来执行模型不擅长的特定任务,或与外部服务、API 或网站交互。这可能包括:
- 基本实用程序:如精确的数学计算、时间转换等可在用于编排的 Cloud Run 服务中运行。
- API 调用:调用其他内部或第三方 API(读写访问权限)。
- 生成图片或图表:使用图像生成模型或图表库,快速高效地创建可视化内容。
- 浏览器和操作系统自动化:在容器实例中运行无头或完整的图形操作系统,使代理能够浏览网页、提取网站信息或通过点击和键盘输入执行操作。Cloud Run 服务会返回屏幕像素。使用 Puppeteer 等库来控制浏览器。
- 代码执行:Cloud Run 提供了一个具有多层沙盒的安全环境,可配置为代码执行服务,几乎无需或完全无需 IAM 权限。Cloud Run 作业可用于异步执行代码,而并发数为 1 的 Cloud Run 服务可用于同步执行代码。
后续步骤
- 观看在 Cloud Run 上构建 AI 代理。
- 尝试 codelab,了解如何构建 LangChain 应用并将其部署到 Cloud Run。
- 了解如何将代理开发套件 (ADK) 部署到 Cloud Run。
- 在智能体开发套件 (ADK) 示例中查找现成可用的智能体示例。
- 在 Cloud Run 上托管模型上下文协议 (MCP) 服务器。