Ray on Vertex AI 概览

Ray 是一个用于扩缩 AI 和 Python 应用的开源框架。Ray 提供了用于为机器学习 (ML) 工作流执行分布式计算和并行处理的基础设施。

Ray 与 Vertex AI 的比较

如果您已经在使用 Ray,则可以使用相同的开源 Ray 代码在 Vertex AI 上编写程序和开发应用,并且只需极少的更改。然后,您可以在机器学习工作流中使用 Vertex AI 与其他 Google Cloud 服务(例如 Vertex AI PredictionBigQuery)的集成。

如果您已使用 Vertex AI 并且需要一种更简单的方法来管理计算资源,则可以使用 Ray 代码扩缩训练。

使用 Ray on Vertex AI 的工作流

使用 Colab Enterprise 和 Vertex AI SDK for Python 连接到 Ray 集群。

步骤 说明
1. 为 Ray on Vertex AI 进行设置 设置 Google 项目,安装包含 Ray 客户端功能的 Vertex AI SDK for Python 版本,并设置 VPC 对等互连网络(可选)。
2. 创建 Ray on Vertex AI 集群 创建 Ray on Vertex AI 集群。必须拥有 Vertex AI Administrator 角色
3. 在 Vertex AI 上开发 Ray 应用 连接到 Ray on Vertex AI 集群并开发应用。必须拥有 Vertex AI User 角色
4. (可选)将 Ray on Vertex AI 与 BigQuery 搭配使用 使用 BigQuery 读取、写入和转换数据。
5. (可选)在 Vertex AI 上部署模型并获取预测结果 将模型部署到 Vertex AI 在线端点并获取预测结果。
6. 监控 Ray on Vertex AI 集群 在 Cloud Logging 中监控生成的日志,并在 Cloud Monitoring 中监控指标。
7. 删除 Ray on Vertex AI 集群 删除 Ray on Vertex AI 集群,以避免产生不必要的计费。

概览

内置的 Ray 集群可确保关键机器学习工作负载或高峰季的容量可用性。与自定义作业(训练服务在作业完成后会释放资源)不同,Ray 集群在删除之前会一直可用。

注意:在以下情况下使用长时间运行的 Ray 集群:

  • 如果您要多次提交同一 Ray 作业,可以在同一长时间运行的 Ray 集群上运行作业,利用数据和映像缓存来节省时间。
  • 如果您运行许多短期有效的 Ray 作业(实际处理时间短于作业启动时间),则使用长时间运行的集群可能会有所帮助。

Ray on Vertex AI 集群可以通过公共连接或专用连接进行设置。下图展示了 Ray on Vertex AI 的架构和工作流。如需了解详情,请参阅公共或专用连接

具有公共连接的架构

Ray on Vertex AI 公共连接

  1. 使用以下方法在 Vertex AI 上创建 Ray 集群:

    a. 使用 Google Cloud 控制台创建 Ray on Vertex AI 集群。

    b. 使用 Vertex AI SDK for Python 创建 Ray on Vertex AI 集群。

  2. 使用以下方法连接到 Ray on Vertex AI 集群以进行交互式开发:

    a. 在 Google Cloud 控制台中使用 Colab Enterprise 实现无缝连接。

    b. 使用可供公共互联网访问的任何 Python 环境。

  3. 在 Ray on Vertex AI 集群上开发应用并训练模型:

    • 在您的首选环境(Colab Enterprise 或任何 Python 笔记本)中使用 Vertex AI SDK for Python。

    • 使用您的首选环境编写 Python 脚本。

    • 使用 Vertex AI SDK for Python、Ray Job CLI 或 Ray Job Submission API 将 Ray 作业提交到 Ray on Vertex AI 集群。

  4. 将经过训练的模型部署到在线 Vertex AI 端点以进行实时预测。

  5. 使用 BigQuery 管理数据。

具有 VPC 的架构

下图展示了在设置 Google Cloud 项目和 VPC 网络(可选)后 Ray on Vertex AI 的架构和工作流:

Ray on Vertex AI VPC

  1. 设置 (a) Google 项目和 (b) VPC 网络。

  2. 使用以下方法在 Vertex AI 上创建 Ray 集群:

    a. 使用 Google Cloud 控制台创建 Ray on Vertex AI 集群。

    b. 使用 Vertex AI SDK for Python 创建 Ray on Vertex AI 集群。

  3. 使用以下方法通过 VPC 对等互连网络连接到 Vertex AI 上的 Ray 集群:

  4. 使用以下方法在 Vertex AI 上的 Ray 集群中开发应用并训练模型:

    • 在您的首选环境(Colab Enterprise 或 Vertex AI Workbench 笔记本)中使用 Vertex AI SDK for Python。

    • 使用您的首选环境编写 Python 脚本。使用 Vertex AI SDK for Python、Ray Job CLI 或 Ray 信息中心将 Ray 作业提交到 Ray on Vertex AI 集群。

  5. 将经过训练的模型部署到在线 Vertex AI 端点以进行预测。

  6. 使用 BigQuery 管理数据。

价格

Ray on Vertex AI 的价格按以下方式计算:

  • 您使用的计算资源的费用根据您在创建 Ray on Vertex AI 集群时选择的机器配置计费。如需了解 Ray on Vertex AI 价格,请参阅价格页面

  • 对于 Ray 集群,您只需在“正在运行”和“正在更新”状态期间付费。无需针对其他状态付费。支付的金额取决于目前的实际集群大小。

  • 当您使用 Vertex AI 上的 Ray 集群执行任务时,系统会自动生成日志并根据 Cloud Logging 价格收取费用。

  • 如果您将模型部署到端点以进行在线预测,请参阅 Vertex AI 价格页面的“预测和说明”部分。

  • 如果您将 BigQuery 与 Ray on Vertex AI 搭配使用,请参阅 BigQuery 价格

后续步骤