在 Vertex AI Model Registry 中,将模型从一个区域复制到另一个区域

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

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

限制

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

  • 版本别名。
  • 自定义模型 ID - 您可以在复制模型后为其指定新 ID。
  • 任何现有的模型评估。
  • 加密规范 - 您必须在复制时为目标区域指定新的规范。
  • 部署和批量预测。

通过控制台在各个位置之间复制 AutoML 模型和自定义模型

控制台

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

请按照以下说明在各个位置之间复制模型。

  1. 在 Google Cloud 控制台中,转到模型页面。 <a{: class="button button-primary" l10n-attrs-original-order="href,target,class,track-name,track-type" l10n-encrypted-href="eE471CdLRMtrJ6UgOX6O4ltigmNHgUGOXn/QVSGplOheMVJU/yDyZ/OoAbOtzTXtQQdc2CaGxVtVGC/5S+Yj6A==" target="console" track-name="consoleLink" track-type="tasks" }="">Go to Models </a{:>
  2. 从模型注册表中选择更多操作菜单
  3. 点击复制到其他区域
  4. 在“复制模型”面板中,选择要复制的模型版本,然后选择要复制到的区域。如果您是首次复制某个模型,则系统会在新区域中为其分配默认别名

以编程方式在各个位置之间复制 AutoML 模型和自定义模型

HTTP

使用以下代码示例,通过模型资源的复制方法复制模型。在使用任何请求数据之前,请先进行以下替换:

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

HTTP 方法和网址:

POST http://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]

curl:


curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"http://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/models:copy"

响应

{
  "name": "projects/PROJECT_ID/locations/LOCATION/models/MODEL_COPY_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"
    }
  }
}