若要在 Agent Platform 中将 AutoML 模型、大模型和自定义模型训练到所需的水平,需要花费一定时间并进行实验。如果您在其他项目或位置已有表现良好的模型,并且您希望使用该模型,那么便没有必要训练新模型。由于模型训练本质上具有不确定性,因此即便使用相同的训练数据,也不太可能获得完全一样的模型。此外,在每个区域或项目中都训练模型会导致跨区域模型行为的一致性无法得以保证。借助 Gemini Enterprise Agent Platform Model Registry 中的复制模型功能,您可以将 Gemini Enterprise Agent Platform Model Registry 中的模型复制到同一项目中的单独位置或复制到其他项目。
复制模型时,如果您未指定要复制的模型版本,则系统会复制默认模型版本。如需详细了解模型默认设置或模型别名,请参阅如何使用模型别名。
限制
复制模型时,并非所有模型信息都会被复制。复制的模型副本不会保留以下信息:
- 版本别名。
- 自定义模型 ID。您可以在复制模型后为其指定新 ID。
- 任何现有的模型评估。
- 加密规范。在为目标区域复制模型时,您必须指定加密密钥。
- 部署和批量推理。
对于跨项目复制,您无法复制具有第三方容器映像的自定义模型。
在项目之间复制模型
前提条件
如需跨项目复制模型,源模型的所有者需要先向目标项目授予模型导出权限:
默认
- 在 Google Cloud 控制台中选择源项目。
- 前往“IAM 和管理”页面。
- 在 IAM 权限页面上,点击授予访问权限,系统随即会显示一个弹出式窗口,供您向源项目添加新的主账号。
- 获取目标项目的产品和项目专属服务账号 (P4SA)
service-{project_number}@gcp-sa-aiplatform.。 - 将目标项目的 P4SA 作为新主账号添加到源项目,并为其分配 Gemini Enterprise Agent Platform Service Agent 角色。
- 点击保存后,目标项目 P4SA 将拥有从源项目导出模型的权限。
使用自定义服务账号
- 创建自定义服务账号或使用现有服务账号。此服务账号必须属于模型复制到的目标项目,并且您需要拥有此服务账号的
iam.serviceAccounts.actAs权限。 - 在 Google Cloud 控制台中选择源项目。
- 前往“IAM 和管理”页面。
- 在 IAM 权限页面上,点击授予访问权限,系统随即会显示一个弹出式窗口,供您向源项目添加新的主账号。
- 将自定义服务账号作为新主账号添加到源项目,并向其分配
Gemini Enterprise Agent Platform User角色或具有aiplatform.models.export权限的任何自定义角色。 - 点击保存后,自定义服务账号将拥有从源项目导出模型的权限。
- 获取目标项目的产品和项目专属服务账号 (P4SA)
service-{project_number}@gcp-sa-aiplatform.。 - 向目标项目的 P4SA 授予自定义服务账号的
Service Account Token Creator角色。
在项目之间复制模型:
REST
在使用任何请求数据之前,请先进行以下替换:
DESTINATION_LOCATION:要将模型复制到的区域。例如us-central1DESTINATION_PROJECT_ID:要将模型复制到的项目的 ID 或项目编号。SOURCE_PROJECT_ID:您的项目 ID 或项目编号。SOURCE_LOCATION:您要从中复制模型的 Agent Platform 区域。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"
}
}
}
控制台
按照以下说明将模型复制到其他项目。
- 在 Google Cloud 控制台中,前往 Gemini Enterprise Agent Platform Model Registry 页面。 前往 Gemini Enterprise Agent Platform Model Registry
- 从 Model Registry 中选择要复制的模型的更多操作菜单 。
- 点击复制模型。
- 选择移至其他项目或移至其他区域。
将模型复制到其他项目
- 选择移至其他项目。
- 选择要复制的模型版本。
- 选择要复制到的目标项目。
- 选择目标区域,例如
us-central1。 - 高级选项:可以选择加密方法,使用 Google-owned and Google-managed encryption key 或 Cloud KMS 密钥。
在各个位置之间复制模型
REST
在使用任何请求数据之前,请先进行以下替换:
DESTINATION_LOCATION:您使用 Agent Platform 的区域。例如us-central1SOURCE_LOCATION:要从中复制模型的 Agent Platform 区域。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"
}
}
}
控制台
通过跨区域复制,您可以将模型作为目标区域内的新模型进行复制,也可以作为该区域中现有模型的新版本进行复制。
请按照以下说明复制模型。
- 在 Google Cloud 控制台中,前往 Gemini Enterprise Agent Platform Model Registry 页面。 前往 Model Registry
- 从 Model Registry 中选择要复制的模型的更多操作菜单 。
- 点击复制模型
- 选择移至其他项目或移至其他区域。
将模型复制到其他区域
- 选择迁移到其他区域。
- 选择要复制的模型版本。
- 选择复制为新模型或复制为新版本。
- 选择目标区域。
- 添加目标模型名称或模型 ID。如果您是首次复制某个模型,则系统会在新区域中为其分配默认别名。