本文档介绍了Google Cloud中的典型生成式 AI 架构。本文档还列出了适用于生成式 AI 工作负载的安全最佳实践,并介绍了何时使用特定的Google Cloud 服务。
架构
下图显示了使用 Gemini Enterprise Agent Platform 的典型生成式 AI 架构中的 Google Cloud 服务。
该图包含以下部分:
借助Agent Platform,您可以在单个平台上构建和使用生成式 AI,包括 AI 解决方案、搜索和对话。
Artifact Registry可简化机器学习 (ML) 开发和部署流程,提高协作效率,并确保 ML 模型的安全性和可靠性。
BigQuery 可简化数据访问、实现伸缩分析,并让您在机器学习工作流中使用其机器学习能力。
Cloud Audit Logs 可跟踪用户在您的环境中执行的操作,从而增强您的问题排查、审核和突发事件响应能力。
借助 Cloud Billing信息中心和提醒,您可以查看 Agent Platform 工作负载的使用情况和结算情况。
借助 Cloud Build,您可以在 Google Cloud上构建、测试和部署无服务器 CI/CD 平台。
Cloud Identity 可为 Google Cloud统一身份、访问权限、应用和管理。
Cloud Run functions 可自动执行任务、提供预测、触发训练作业、与其他服务集成,以及构建事件驱动型机器学习流水线。
Cloud Storage 存储训练数据、模型工件和生产数据。
借助 Dataflow,您可以构建复杂的流水线,以从各种来源注入数据并根据需要汇总数据。
Cloud DNS 可注册、管理和提供网域。
Identity and Access Management (IAM) 可控制哪些人可以对生成式工作负载资源执行特定操作,例如创建、修改或删除这些资源。
组织政策服务可集中管理和强制执行整个 Google Cloud环境中的政策。组织政策有助于确保组织内的项目和资源在配置和安全合规性方面保持一致。
Pub/Sub 可在机器学习工作流中实现高效的通信和自动化。
Resource Manager 可帮助您对 Agent Platform 工作负载的逻辑组件进行分组和管理。
Secret Manager 可帮助您保护 Agent Platform 项目中使用的敏感数据和凭证。
Sensitive Data Protection 可自动发现数据集中的敏感数据。Sensitive Data Protection 可以在数据到达模型之前扫描提示并遮盖敏感数据。Sensitive Data Protection 还可以扫描模型的输出,以避免在回答中泄露敏感的训练数据。
Security Command Center 有助于保护您的云组织、AI 工作负载以及您存储在 Google Cloud中的 AI 数据。Security Command Center 提供以下功能:
- 集中式安全管理
- 威胁检测和突发事件响应
- 自动化安全评估
- 合规性和监管报告
- 安全建议和最佳实践
虚拟私有云 (VPC) 可在安全的环境中将 AI 资源与互联网隔离开来。此网络配置有助于保护敏感数据和模型,防止未经授权的访问和潜在的网络攻击。
借助 Cloud VPN 或 Cloud Interconnect,您可以在本地基础架构和 Agent Platform 环境之间建立安全的网络连接。Cloud VPN 或 Cloud Interconnect 可帮助您在私有网络与 Google Cloud资源之间实现无缝的数据传输和通信。对于需要访问本地数据以进行模型训练或将模型部署到本地资源以进行推理等场景,请考虑使用此集成。
生成式 AI 工作负载最佳实践
本部分提供了指向使用 Agent Platform 的生成式 AI 工作负载的最佳实践的链接。
- 建议的用户群组和 IAM 角色
安全的企业级基础最佳实践
身份验证和授权最佳实践
组织最佳实践
网络最佳实践
日志记录、监控和提醒最佳实践
密钥和 Secret 管理最佳实践
安全态势和分析最佳实践
基础设施最佳实践
数据管理最佳实践
数据仓库最佳实践
存储最佳实践
- 禁止公开访问 Cloud Storage 存储分区
- 使用统一存储桶级访问权限
- 保护服务账号的 HMAC 密钥
- 检测服务账号对 Cloud Storage 存储分区的枚举
- 检测服务账号对 Cloud Storage 存储分区的 IAM 政策修改
- 确保 Cloud Storage 存储桶保留政策使用存储分区锁定
- 为 SetStorageClass 操作设置生命周期规则
- 为存储类别设置允许的区域
- 为 Cloud Storage 存储分区启用生命周期管理
- 为 Cloud Storage 存储分区启用生命周期管理规则
- 查看和评估活跃对象的暂时保全
- 对 Cloud Storage 存储分区强制执行保留政策
- 为 Cloud Storage 存储分区强制执行分类标记
- 为 Cloud Storage 存储分区强制使用日志存储分区
- 为 Cloud Storage 存储分区配置删除规则
- 确保删除规则的 isLive 条件为 False
- 为 Cloud Storage 存储分区强制启用版本控制
- 强制为 Cloud Storage 存储分区设置所有者
- 启用关键 Cloud Storage 活动的日志记录
工具和推理最佳实践
- 定义 Agent Platform Workbench 笔记本和实例的访问模式
- 禁止在 Agent Platform Workbench 实例上下载文件
- 停用对 Agent Platform Workbench 用户管理的笔记本和实例的根访问权限
- 停用 Agent Platform Workbench 实例上的终端
- 限制 Agent Platform Workbench 笔记本和实例上的环境选项
- 强制对 Agent Platform Workbench 用户管理的笔记本和实例进行自动预定升级
- 限制对新的 Agent Platform Workbench 笔记本和实例的公共访问权限
- 限制 Agent Platform Workbench 实例上的 VPC 网络
代理和应用最佳实践
Artifact Registry 的使用场景
请考虑以下将 Artifact Registry 与 Agent Platform 搭配使用的应用场景:
- 管理机器学习制品:借助 Artifact Registry,您可以将所有机器学习制品(包括模型训练代码、数据集、训练后的模型和预测服务容器)集中存储和管理。您可以使用此集中式代码库跨不同团队和项目跟踪、共享和重复使用机器学习工件。
- 版本控制和可重现性:Artifact Registry 为您的机器学习制品提供版本控制,帮助您跟踪更改并在需要时回滚到之前的版本。此功能对于确保机器学习实验和部署的可重现性至关重要。
- 安全可靠的存储空间:Artifact Registry 为您的机器学习制品提供安全可靠的存储空间。这些制品在静态和传输状态下均会加密。配置访问权限控制,以限制谁可以访问制品,从而帮助保护您的宝贵数据和知识产权。
- 与 Gemini Enterprise Agent Platform Pipelines 集成:将 Artifact Registry 与 Agent Platform Pipelines 集成,以构建和自动化您的机器学习工作流。使用 Artifact Registry 存储流水线制品(例如流水线定义、代码和数据),并在上传新制品时自动触发流水线运行。
- 简化机器学习的 CI/CD:将 Artifact Registry 与 CI/CD 工具集成,以简化机器学习模型的开发和部署。例如,每当您将新版本的模型推送到 Artifact Registry 时,使用 Artifact Registry 自动构建和部署模型服务容器。
- 支持多区域:借助 Artifact Registry,您可以将制品存储在多个区域中,这有助于提高机器学习模型的性能和可用性,尤其是在您的用户分布在全球各地的情况下。
BigQuery 使用场景
请考虑将 BigQuery 与 Agent Platform 搭配使用的以下应用场景:
- 无缝集成:BigQuery 和 Agent Platform 紧密集成,让您可以直接在 Agent Platform 平台中访问和分析数据。此集成无需移动数据,可简化机器学习工作流程并减少摩擦。
- 规模化数据分析:BigQuery 提供 PB 级数据仓库,让您能够分析海量数据集,而无需担心基础设施限制。这种可伸缩性对于训练和部署数据密集型机器学习模型至关重要。
- 基于 SQL 的机器学习:借助 BigQuery ML,您可以使用熟悉的 SQL 命令直接在 BigQuery 内训练和部署模型。此功能可让数据分析师和 SQL 从业人员无需具备高级编码技能即可使用机器学习功能。
- 在线预测和批量预测:BigQuery ML 支持在线预测和批量预测。您可以对单个行运行实时预测,也可以在批处理模式下为大型数据集生成预测结果。这种灵活性支持各种具有不同延迟要求的应用场景。
- 减少数据移动:借助 BigQuery ML,您无需将数据移动到单独的存储或计算资源,即可进行模型训练和部署。这种减少的数据移动简化了您的工作流,缩短了延迟时间,并最大限度地降低了与数据传输相关的费用。
- 模型监控:Agent Platform 提供全面的模型监控功能,可让您跟踪 BigQuery ML 模型的性能、公平性和可解释性。模型监控有助于确保模型按预期运行并解决潜在问题。
- 预训练模型:Agent Platform 提供对预训练模型的访问权限,包括用于自然语言处理和计算机视觉的模型。您可以在 BigQuery 中使用这些模型来增强分析能力,并从数据中提取更深入的分析洞见。
- 经济实惠的解决方案:BigQuery ML 提供了一种经济实惠且灵活的方式来训练和部署机器学习模型。您只需为所使用的资源付费,因此对于各种规模的组织而言,这都是一种经济实惠的选择。
- 高级分析功能:BigQuery 提供用于高级分析(包括地理空间分析和预测)的工具。借助这些工具,您可以将机器学习与其他分析技术相结合,以便更深入地探索数据并获得更丰富的分析洞见。
- 增强协作:通过将 BigQuery 与 Agent Platform 搭配使用,数据科学家、机器学习工程师和分析师可以无缝协作处理机器学习项目。这种协作有助于打造更集成、更高效的方法来解决复杂的数据问题。
Cloud Build 的使用场景
请考虑将 Cloud Build 与 Agent Platform 搭配使用的以下应用场景:
- 自动执行机器学习流水线构建:借助 Cloud Build,您可以自动构建和测试在 Agent Platform Pipelines 中定义的机器学习流水线。此自动化功能可帮助您更快、更一致地构建和部署模型。
- 构建用于部署的自定义容器映像:Cloud Build 可以为模型部署环境构建自定义容器映像。借助 Cloud Build,您可以将模型代码、依赖项和运行时环境打包到单个映像中,然后将该映像部署到 Gemini Enterprise Agent Platform Inference 以提供预测。
- 与 CI/CD 工作流集成:借助 Cloud Build,您可以在 CI/CD 工作流中自动构建和部署机器学习模型。这种自动化可确保您的模型保持最新状态并部署到生产环境。
- 根据代码更改触发构建:当模型代码或流水线定义发生更改时,Cloud Build 可以自动触发构建。这种自动化有助于确保您的模型使用最新代码构建,并且所有更改都会自动部署到生产环境。
- 获得可伸缩的安全基础设施:Cloud Build 使用Google Cloud 可伸缩的安全基础设施来构建和部署模型。这种可伸缩性意味着您无需担心管理自己的基础设施,可以专注于开发模型。
- 支持各种编程语言:Cloud Build 支持各种编程语言,包括 Python、Java、Go 和 Node.js。借助此支持,您可以使用自己选择的语言构建模型。
- 使用预构建的构建步骤:为了帮助简化构建流程,Cloud Build 针对常见的机器学习任务(例如安装依赖项、运行测试和将映像推送到容器注册表)提供了预构建的构建步骤。
- 创建自定义构建步骤:您可以在 Cloud Build 中定义自己的自定义构建步骤,以便在构建流程中执行任何任意代码。
- 为其他 Agent Platform 服务构建制品:Cloud Build 可以为其他 Agent Platform 服务(例如 Agent Platform 上的 Feature Store 和 Agent Platform Data Labeling)构建制品。这种灵活性有助于您在Google Cloud上构建完整的机器学习工作流。
- 实现经济实惠的解决方案:Cloud Build 提供随用随付的价格模式,因此您只需为所使用的资源付费。
Cloud Storage 使用场景
请考虑将 Cloud Storage 与 Agent Platform 搭配使用的以下应用场景:
- 存储训练数据:Agent Platform 可让您将训练数据集存储在 Cloud Storage 存储分区中。使用 Cloud Storage 有以下几个优势:
- Cloud Storage 可以处理任意大小的数据集,让您能够使用海量数据训练模型,而无需担心存储空间限制。
- 您可以对 Cloud Storage 存储桶设置精细的访问权限控制和加密,以确保敏感的训练数据受到保护。
- Cloud Storage 可让您跟踪更改并恢复到之前的数据版本,从而提供有价值的审核轨迹并有助于重现训练实验。
- Agent Platform 可与 Cloud Storage 无缝集成,让您能够在平台内访问训练数据。
- 存储模型制品:您可以将训练好的模型制品(包括模型文件、超参数配置和训练日志)存储在 Cloud Storage 存储分区中。使用 Cloud Storage 可执行以下操作:
- 将所有模型制品都保存在 Cloud Storage 中,以便集中存储,方便您访问和管理。
- 跟踪和管理模型的不同版本,以便在需要时进行比较和回滚。
- 向队友和协作者授予对特定 Cloud Storage 存储桶的访问权限,以便高效地共享模型。
- 存储生产数据:对于生产环境中使用的模型,Cloud Storage 可以存储提供给模型用于预测的数据。例如,您可以使用 Cloud Storage 执行以下操作:
- 存储用户数据和互动,以便实时提供个性化建议。
- 保留图片,以便使用您的模型按需进行处理和分类。
- 维护交易数据,以便使用模型实时识别欺诈行为。
- 与其他服务集成:Cloud Storage 可与 Agent Platform 工作流中使用的其他 Google Cloud 服务无缝集成,例如:
- 用于简化数据预处理和转换流水线的 Dataflow。
- BigQuery:用于访问存储在 BigQuery 中的大型数据集,以进行模型训练和推理。
- Cloud Run functions,用于根据模型预测或 Cloud Storage 存储桶中的数据变化执行操作。
- 管理费用:Cloud Storage 采用随用随付的价格模式,这意味着您只需为实际使用的存储空间付费。这有助于提高成本效益,尤其是在处理大型数据集时。
- 实现高可用性和高持久性:Cloud Storage 可确保您的数据具有高可用性,并可防范故障或中断,从而保证可靠性并确保对机器学习资产的访问顺畅无阻。
- 启用多区域支持:将数据存储在地理位置上更靠近用户或应用的多个 Cloud Storage 区域中,从而提高性能并缩短数据访问和模型预测的延迟时间。
Cloud Run functions 的使用场景
请考虑将 Cloud Run functions 与 Agent Platform 搭配使用的以下应用场景:
- 预处理和后处理数据:Cloud Run 函数可以在将数据发送到 Agent Platform 模型进行训练或预测之前对其进行预处理。例如,函数可以清理和归一化数据,或从中提取特征。同样,Cloud Run 函数可以对 Agent Platform 模型的输出进行后处理。例如,函数可以格式化输出数据,或将其发送到其他服务以进行进一步分析。
- 自动触发 Agent Platform 训练作业:如需自动训练 Agent Platform 模型,您可以使用来自各种Google Cloud 服务(例如 Cloud Storage、Pub/Sub 和 Cloud Scheduler)的事件来触发 Cloud Run 函数。例如,您可以创建一个在将新文件上传到 Cloud Storage 时触发的函数。此函数可以启动 Agent Platform 训练作业,以根据新数据训练模型。
- 提供预测:Cloud Run 函数可以提供来自 Agent Platform 模型的预测,让您无需管理任何基础架构即可为模型创建 API 端点。例如,您可以编写一个函数,该函数以图片作为输入,并输出 Agent Platform 图片分类模型的预测结果。然后,您可以将此函数部署为 HTTP API 端点。
- 构建事件驱动型机器学习工作流:您可以使用 Cloud Run functions 构建事件驱动型机器学习工作流。例如,当向 Pub/Sub 主题添加新记录时,函数可以触发 Agent Platform 预测作业。借助此函数,您可以实时处理数据,并根据模型预测结果采取行动。
- 与其他服务集成:您可以将 Cloud Run functions 与其他 Google Cloud 服务(例如 Cloud Storage、BigQuery 和 Cloud Firestore)集成。通过集成,您可以构建将不同服务连接在一起的复杂机器学习流水线。
- 简化费用:Cloud Run functions 意味着您只需为函数在运行时使用的资源付费。此外,Cloud Run 函数会自动扩缩以满足需求,从而确保您在流量高峰期拥有充足的资源。
Pub/Sub 的使用场景
请考虑以下将 Pub/Sub 与 Agent Platform 搭配使用的应用场景:
- 异步事件驱动型架构:Pub/Sub 支持事件驱动型通信,因此您可以根据发布到 Pub/Sub 主题的事件触发 Agent Platform 流水线。这些事件可能包括新数据和模型更新。
- 可伸缩性和可靠性:Pub/Sub 具有高度的可伸缩性,可让您处理大量事件,而不会影响性能。可伸缩性对于处理大型数据集或同时运行多个机器学习作业至关重要。Pub/Sub 还可在主题内提供可靠的消息传送和排序功能,即使在繁重的工作负载下也能确保处理一致性。
- 灵活性:您可以使用 Pub/Sub 将 Agent Platform 与 Cloud Run functions 或 Dataflow 等其他服务集成,从而创建灵活且动态的机器学习流水线。
- 实时监控和提醒:借助 Pub/Sub,您可以订阅特定主题,以接收有关 Agent Platform 流水线中事件的实时通知。借助实时监控,您可以监控模型训练进度、数据预处理结果和预测输出。您可以根据特定事件(例如作业失败或预测期间检测到的异常情况)配置提醒。借助提醒,您可以主动干预并及时排查问题。
例如,您可以使用 Pub/Sub 执行以下操作:
- 当新数据到达 Cloud Storage 存储桶时,触发模型训练。
- 将已部署模型的实时预测结果发送到下游系统以进行进一步处理。
- 监控模型性能指标的变化并做出相应反应。
- 针对预测失败或数据质量问题等严重事件触发提醒。
Resource Manager 的使用场景
请考虑以下将 Resource Manager 与 Agent Platform 搭配使用的应用场景:
- 为不同的团队或部门创建单独的项目,有助于确保资源和数据隔离以及精细的访问控制。
- 将保护性安全政策应用于 AI 工作负载。
- 为训练作业中的 GPU 使用情况定义配额,以防止费用超支。
- 自动为新项目创建所需的 Cloud Storage 存储分区和 Compute Engine 实例。
- 跟踪和分析特定项目的资源使用模式,以优化资源分配。
- 生成审核报告,以证明符合数据治理和安全政策。
Secret Manager 的使用场景
请考虑以下将 Secret Manager 与 Agent Platform 搭配使用的应用场景:
- 存储用于访问模型训练中所用外部数据源的 API 密钥。
- 在预测流水线中加密数据库凭证,以实现安全访问。
- 为服务之间的安全通信提供临时访问令牌。
- 保护用于加密通信渠道的私钥和证书。
- 管理您在机器学习工作流中使用的第三方服务的密码和凭证。
VPC 的使用场景
请考虑以下将 VPC 与 Agent Platform 搭配使用的应用场景:
您可以在 VPC 网络中定义精细的防火墙规则和访问权限控制,以限制网络流量并仅允许授权连接到特定资源。
根据功能或安全要求,将 Agent Platform 资源整理到不同的 VPC 网络中。
这种类型的组织有助于隔离资源,并防止不同项目或团队之间发生未经授权的访问。您可以为敏感工作负载(例如使用机密数据训练模型)创建专用 VPC 网络,确保只有已获授权的用户和服务才能获得网络访问权限。
后续步骤
查看建议的 IAM 角色。