在 Vertex AI Model Registry 中复制模型

若要在 Vertex AI 中将 AutoML 模型、大模型和自定义模型训练到所需的水平,需要花费一定时间并进行一些实验。如果您在其他项目或位置已有表现良好的模型,并且您希望使用该模型,那么便没有必要训练新模型。由于模型训练本质上具有不确定性,因此即便使用相同的训练数据,也不太可能获得完全一样的模型。此外,在每个区域或项目中都训练模型会导致跨区域模型行为的一致性无法得以保证。借助 Vertex AI Model Registry 中的复制模型功能,您可以将 Vertex AI Model Registry 中的模型复制到同一项目中的单独位置或其他项目。

复制模型时,如果您未指定要复制的模型版本,则系统会复制默认模型版本。如需详细了解模型默认设置或模型别名,请参阅如何使用模型别名

限制

复制模型时,并非所有模型信息都会被复制。复制的模型副本不会保留以下信息:

  • 版本别名。
  • 自定义模型 ID。您可以在复制模型后为其指定新 ID。
  • 任何现有的模型评估。
  • 加密规范。您必须在复制时为目标区域指定新的规范。
  • 部署和批量预测。
  • 对于跨项目复制,您可以复制具有第三方容器映像的自定义模型。

在项目之间复制模型

前提条件

如需跨项目复制模型,来源模型所有者需要先向目标项目授予模型导出权限:

  1. 在 Google Cloud 控制台中选择您的项目。
  2. 前往“IAM 和管理”页面。
  3. 在 IAM 权限页面上,点击授予访问权限,系统会显示一个弹出式窗口,您可以向源项目添加新的主账号。
  4. 获取目标项目的数字项目编号和目标项目的 P4SA 凭据
  5. 将目标项目 P4SA 凭据添加为来源项目的新负责人,并将 Vertex AI 服务代理角色分配给目标项目 P4SA。
  6. 点击保存后,目标项目 P4SA 将具有从源项目导出模型的权限。

REST

在使用任何请求数据之前,请先进行以下替换:

  • DESTINATION_LOCATION:您要将模型复制到的区域。例如 us-central1
  • DESTINATION_PROJECT_ID:要将模型复制到的项目 ID 或项目编号。
  • SOURCE_PROJECT_ID:您的项目 ID 或项目编号。
  • SOURCE_LOCATION:要从中复制模型的 Vertex AI 区域。
  • SOURCE_MODEL_ID:要复制的模型 ID 的来源。
  • VERSION_ID:(可选)要复制的模型版本的 ID(如果未提供,则复制默认版本)

HTTP 方法和网址:

POST https://DESTINATION_LOCATION-aiplatform.googleapis.com/v1/projects/DESTINATION_PROJECT_ID/locations/DESTINATION_LOCATION/models:copy

请求 JSON 正文:

   {
    "sourceModel": projects/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/models/SOURCE_MODEL_ID
    }

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

  {
    "name": "projects/PROJECT_ID/locations/LOCATION/models/MODEL_ID/operations/OPERATION_ID",
    "metadata": {
      "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CopyModelOperationMetadata",
      "genericMetadata": {
        "createTime": "2022-07-01T00:10:55.621355Z",
        "updateTime": "2022-07-01T00:10:55.621355Z"
      }
    }
  }

控制台


请按照以下说明将模型复制到其他项目。

  1. 在 Google Cloud 控制台中,进入 Vertex AI Model Registry 页面。 进入 Vertex AI Model Registry
  2. 从模型注册表中选择要复制的模型的更多操作菜单
  3. 点击复制模型
  4. 选择迁移到其他项目迁移到其他区域

将模型复制到其他项目

  1. 选择转移到其他项目
  2. 选择要复制的模型版本。
  3. 选择要复制到的目标项目。
  4. 选择目标区域,例如 us-central1
  5. 高级选项:可选,用于选择加密方法,使用 Google 管理的加密密钥或 Cloud KMS 密钥。

在各个位置之间复制模型

REST

在使用任何请求数据之前,请先进行以下替换:

  • DESTINATION_LOCATION:您在其中使用 Vertex AI 的区域。 例如 us-central1
  • SOURCE_LOCATION:要从中复制模型的 Vertex AI 区域。
  • PROJECT_ID:您的项目 ID 或项目编号。
  • MODEL_ID:要复制的模型的 ID。
  • VERSION_ID:(可选)要复制的模型版本的 ID(如果未提供,则复制默认版本)

HTTP 方法和网址:

POST https://DESTINATION_LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/models:copy

请求 JSON 正文:


{"sourceModel": projects/PROJECT_ID/locations/SOURCE_LOCATION/models/MODEL_ID[@VERSION_ID]
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

  {
    "name": "projects/PROJECT_ID/locations/LOCATION/models/MODEL_ID/operations/OPERATION_ID",
    "metadata": {
      "@type": "type.googleapis.com/google.cloud.aiplatform.v1.CopyModelOperationMetadata",
      "genericMetadata": {
        "createTime": "2022-07-01T00:10:55.621355Z",
        "updateTime": "2022-07-01T00:10:55.621355Z"
      }
    }
  }

控制台


借助跨区域复制,您可以将模型作为目标区域内的新模型进行复制,也可以作为该区域中现有模型的新版本进行复制。

请按照以下说明复制模型。

  1. 在 Google Cloud 控制台中,进入 Vertex AI Model Registry 页面。 进入 Model Registry
  2. 从模型注册表中选择要复制的模型的更多操作菜单
  3. 点击复制模型
  4. 选择迁移到其他项目迁移到其他区域

将模型复制到其他区域

  1. 选择转移到其他区域
  2. 选择要复制的模型版本。
  3. 选择复制为新模型复制为新版本
  4. 选择目标区域。
  5. 添加目标模型名称或模型 ID。如果您是首次复制某个模型,则系统会在新区域中为其分配默认别名。