Vertex AI で AutoML 大規模モデルとカスタムモデルを目的のレベルまでトレーニングするには、時間とテストが必要です。使用したい良好なパフォーマンスのモデルが別のプロジェクトまたはロケーションにある場合は、新しいモデルのトレーニングはおすすめしません。モデルのトレーニングは本質的に非決定的であるため、最終的に同じデータから同じモデルが完成する可能性は低くなります。また、リージョン間でモデルの動作の整合性を維持する確実な方法は、各リージョンまたはプロジェクトでモデルをトレーニングする方法ではありません。Vertex AI Model Registry のモデルのコピー機能を使用すると、Vertex AI Model Registry から同じプロジェクト内の別のロケーションまたは別のプロジェクトにモデルをコピーできます。
モデルをコピーするときに、コピーするモデルのバージョンを指定しないと、デフォルトのモデル バージョンがコピーされます。モデルのデフォルトまたはモデル エイリアスの詳細については、モデル エイリアスの使用方法をご覧ください。
制限事項
モデルをコピーしても、すべてのモデル情報がコピーされるわけではありません。コピーされたモデルでは以下のものは保持されません。
- バージョンのエイリアス。
 - カスタムモデル ID。モデルのコピー後に新しい ID を指定できます。
 - 既存のモデル評価。
 - 暗号化の仕様。ターゲット リージョンのモデルをコピーするときに、暗号鍵を指定する必要があります。
 - デプロイとバッチ推論。
 
プロジェクト間のコピーでは、サードパーティのコンテナ イメージを含むカスタムモデルをコピーできません。
プロジェクト間でモデルをコピーする
前提条件
プロジェクト間でモデルをコピーするには、まず、ソースモデルのオーナーが宛先プロジェクトにモデルのエクスポート権限を付与する必要があります。
- Google Cloud コンソールでプロジェクトを選択します。
 - [IAM と管理] ページに移動します。
 - IAM の権限ページで [アクセスを許可] をクリックすると、ポップアップ ウィンドウが表示され、ソース プロジェクトに新しいプリンシパルを追加できます。
 - 宛先プロジェクトのプロダクト / プロジェクトごとのサービス アカウント(P4SA)
service-{project_number}@gcp-sa-aiplatform.iam.gserviceaccount.comを取得します。 - 宛先プロジェクトの P4SA を新しいプリンシパルとしてソース プロジェクトに追加し、Vertex AI サービス エージェントのロールを割り当てます。
 - [保存] をクリックすると、宛先プロジェクトの P4SA に、ソース プロジェクトからモデルをエクスポートする権限が付与されます。
 
REST
リクエストのデータを使用する前に、次のように置き換えます。
DESTINATION_LOCATION: モデルをコピーするリージョン。例:us-central1DESTINATION_PROJECT_ID: モデルをコピーするプロジェクト ID またはプロジェクト番号。SOURCE_PROJECT_ID: プロジェクト ID またはプロジェクト番号。SOURCE_LOCATION: モデルのコピー元の Vertex AI リージョン。SOURCE_MODEL_ID: コピーするモデル ID のソース。VERSION_ID: (省略可)コピーするモデル バージョンの ID(指定しない場合、デフォルト バージョンがコピーされます)。
HTTP メソッドと URL:
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 コンソールで、Vertex AI Model Registry ページに移動します。Vertex AI Model Registry に移動
 - Model Registry で、コピーするモデルの [その他の操作] メニュー  を選択します。
 - [モデルのコピー] をクリックします。
 - [別のプロジェクトへ] または [別のリージョンへ] を選択します。
 
別のプロジェクトにモデルをコピーする
- [別のプロジェクトへ] を選択します。
 - コピーするモデル バージョンを選択します。
 - コピー先のプロジェクトを選択します。
 - 宛先リージョンを選択します(例: 
us-central1)。 - 詳細オプション: Google-owned and Google-managed encryption key または Cloud KMS 鍵を使用して、暗号化方法を選択できます(省略可)。
 
ロケーション間でモデルをコピーする
REST
リクエストのデータを使用する前に、次のように置き換えます。
DESTINATION_LOCATION: Vertex AI を使用するリージョン。例:us-central1SOURCE_LOCATION: モデルのコピー元の Vertex AI リージョン。PROJECT_ID: プロジェクト ID またはプロジェクト番号。MODEL_ID: コピーするモデルの ID。VERSION_ID: (省略可)コピーするモデル バージョンの ID(指定しない場合、デフォルト バージョンがコピーされます)。
HTTP メソッドと URL:
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 コンソールで、Vertex AI Model Registry ページに移動します。Model Registry に移動
 - Model Registry で、コピーするモデルの [その他の操作] メニュー  を選択します。
 - [モデルのコピー] をクリックします。
 - [別のプロジェクトへ] または [別のリージョンへ] を選択します。
 
別のリージョンにモデルをコピーする
- [別のリージョンへ] を選択します。
 - コピーするモデル バージョンを選択します。
 - [新しいモデルとしてコピー] または [新しいバージョンとしてコピー] を選択します。
 - 宛先のリージョンを選択します。
 - 宛先モデル名またはモデル ID を追加します。モデルを初めてコピーする場合、新しいリージョンでデフォルトのエイリアスが割り当てられます。