

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Model Registry モデル、モデルバージョン、Model Group
<a name="model-registry-models"></a>

SageMaker Model Registry は、各グループにモデルパッケージを含む複数の Model (Package) Group で構成されています。これらの Model Group はオプションで 1 つ以上のコレクションに追加できます。Model Group 内の各モデルパッケージはトレーニング済みモデルに対応しています。各モデルパッケージのバージョンは 1 から始まる数値で、Model Group に新しいモデルパッケージが追加されるたびに数が増えます。例えば、Model Group に 5 つのモデルパッケージが追加された場合、モデルパッケージのバージョンは 1、2、3、4、5 になります。

 モデルパッケージは、バージョン管理されたエンティティとして Model Registry に登録される実際のモデルです。SageMaker AI には 2 つのタイプのモデルパッケージがあります。1 つのタイプは AWS Marketplace で使用され、もう 1 つのタイプは Model Registry. で使用されます。 AWS Marketplace で使用されるモデルパッケージはバージョン管理が可能なエンティティではなく、Model Registry 内の Model Group に関連付けられていません。Model Registry は、再トレーニングを行うたびに新しいモデルを受け取り、バージョンを与え、Model Registry 内の Model Group に割り当てます。以下の画像は、連続してバージョン管理されたモデルが 25 個あるモデルグループの例を示しています。 AWS Marketplace で使用されるモデルパッケージの詳細については、「」を参照してください[のアルゴリズムとパッケージ AWS Marketplace](sagemaker-marketplace.md)。

Model Registry で使用されるモデルパッケージはバージョン管理されており、Model Group に関連付けられている**必要があります**。このモデルパッケージタイプの ARN の構造は次のとおりです。`'arn:aws:sagemaker:region:account:model-package-group/version'`

以下のトピックでは、Model Registry でモデル、モデルバージョン、Model Group を作成して操作する方法を説明します。

**Topics**
+ [モデルグループを作成する](model-registry-model-group.md)
+ [Model Group を削除する](model-registry-delete-model-group.md)
+ [モデルバージョンを登録する](model-registry-version.md)
+ [モデルグループとバージョンを表示する](model-registry-view.md)
+ [モデルバージョンの詳細を更新する](model-registry-details.md)
+ [モデルバージョンを比較](model-registry-version-compare.md)
+ [モデルグループタグとモデルバージョンタグを表示して管理する](model-registry-tags.md)
+ [モデルバージョンの削除](model-registry-delete-model-version.md)
+ [モデルライフサイクルのステージング構造](model-registry-staging-construct.md)
+ [モデルの承認ステータスを更新する](model-registry-approve.md)
+ [Python を使用してレジストリからモデルをデプロイする](model-registry-deploy.md)
+ [Studio でモデルをデプロイする](model-registry-deploy-studio.md)
+ [クロスアカウントの検出可能性](model-registry-ram.md)
+ [モデルのデプロイ履歴を表示する](model-registry-deploy-history.md)
+ [Studio でモデルリネージの詳細を表示する](model-registry-lineage-view-studio.md)

# モデルグループを作成する
<a name="model-registry-model-group"></a>

モデルグループには、モデルのさまざまなバージョンが含まれます。特定の問題を解決できるようトレーニングするすべてのモデルを追跡する Model Group を作成します。 AWS SDK for Python (Boto3) または Amazon SageMaker Studio コンソールを使用してモデルグループを作成します。

## モデルグループを作成する (Boto3)
<a name="model-registry-package-group-api"></a>

**重要**  
Amazon SageMaker Studio または Amazon SageMaker Studio Classic に Amazon SageMaker リソースの作成を許可するカスタム IAM ポリシーでは、これらのリソースにタグを追加するアクセス許可も付与する必要があります。Studio と Studio Classic は、作成したリソースに自動的にタグ付けするため、リソースにタグを追加するアクセス許可が必要になります。IAM ポリシーで Studio と Studio Classic によるリソースの作成が許可されていても、タグ付けが許可されていない場合は、リソースを作成しようとしたときに「AccessDenied」エラーが発生する可能性があります。詳細については、「[SageMaker AI リソースにタグ付けのアクセス許可を付与する](security_iam_id-based-policy-examples.md#grant-tagging-permissions)」を参照してください。  
SageMaker リソースを作成するためのアクセス許可を付与する [AWS Amazon SageMaker AI の マネージドポリシー](security-iam-awsmanpol.md) には、それらのリソースの作成中にタグを追加するためのアクセス許可もあらかじめ含まれています。

Boto3 を使用してモデルグループを作成するには、`create_model_package_group` API オペレーションを呼び出して、名前と説明をパラメータとして指定します。次の例は、モデルを作成する方法を示しています。`create_model_package_group` の呼び出しからの応答は、新しい Model Group の Amazon リソースネーム (ARN) です。

まず、必要なパッケージをインポートし、SageMaker AI Boto3 クライアントを設定します。

```
import time
import os
from sagemaker import get_execution_role, session
import boto3

region = boto3.Session().region_name

role = get_execution_role()

sm_client = boto3.client('sagemaker', region_name=region)
```

次に、モデルグループを作成します。

```
import time
model_package_group_name = "scikit-iris-detector-" + str(round(time.time()))
model_package_group_input_dict = {
 "ModelPackageGroupName" : model_package_group_name,
 "ModelPackageGroupDescription" : "Sample model package group"
}

create_model_package_group_response = sm_client.create_model_package_group(**model_package_group_input_dict)
print('ModelPackageGroup Arn : {}'.format(create_model_package_group_response['ModelPackageGroupArn']))
```

## モデルグループを作成する (Studio または Studio Classic)
<a name="model-registry-package-group-studio"></a>

Amazon SageMaker Studio コンソールでモデルグループを作成するには、Studio と Studio Classic のどちらを使用しているかに応じて、以下の手順を実行します。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左のナビゲーションペインで **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. **[登録]** をクリックしてから、**[モデルグループ]** をクリックします。

1. **[モデルグループの登録]** ダイアログボックスで、以下の情報を入力します。
   + **[モデルグループ名]** フィールドに新しいモデルグループの名前を入力します。
   + (オプション) **[説明]** フィールドにモデルグループの説明を入力します。
   + (オプション) **[タグ]** フィールドに、モデルグループに関連付ける任意のキー値のペアを入力します。タグの使い方については、「AWS 全般のリファレンス」の「[Tagging AWS resources](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html)」を参照してください。**

1. **[モデルグループを登録]** をクリックします。

1. (オプション) **[モデル]** ページで、**[登録済みモデル]** タブをクリックしてから、**[モデルグループ]** をクリックします。新しく作成したモデルグループがモデルグループのリストに表示されることを確認します。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. **[アクション]** を選択し、**[モデルグループの作成]** を選択します。

1. **[新しいモデルグループを作成]** ダイアログボックスで、次の情報を入力します。
   + **[名前]** フィールドに新しい Model Group の名前を入力します。
   + (オプション) **[説明]** フィールドに Model Group の説明を入力します。
   + (オプション) **[タグ]** フィールドに、Model Group に関連付けるキーバリューのペアを入力します。タグの使い方については、「AWS 全般のリファレンス」の「[Tagging AWS resources](https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html)」を参照してください。**
   + (オプション) **[プロジェクト]** フィールドに、Model Group を関連付けるプロジェクトを入力します。プロジェクトに関する詳細については、「[SageMaker プロジェクトを使用した MLOps の自動化](sagemaker-projects.md)」を参照してください。

1. **[Create model group]** (モデルグループを作成) を選択します。

------

# Model Group を削除する
<a name="model-registry-delete-model-group"></a>

この手順では、Amazon SageMaker Studio コンソールでモデルグループを削除する方法について説明します。モデルグループを削除すると、モデルグループ内のモデルバージョンにアクセスできなくなります。

## モデルグループを削除する (Studio または Studio Classic)
<a name="model-registry-delete-model-group-studio"></a>

**重要**  
削除できるのは空のモデルグループだけです。モデルグループを削除する前に、そのモデルバージョンがある場合は削除します。

Amazon SageMaker Studio コンソールでモデルグループを削除するには、Studio と Studio Classic のどちらを使用しているかに応じて、以下の手順を実行します。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左のナビゲーションペインで **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. モデルグループのリストから、削除するモデルグループの名前を選択します。

1. モデルグループリストの右上隅にある縦三点リーダーをクリックして、**[削除]** を選択します。

1. **[モデルグループを削除]** ダイアログボックスで、**[はい、モデルグループを削除します]** を選択します。

1. **[削除]** を選択します。

1. 削除したモデルグループがモデルグループのリストに表示されなくなったことを確認します。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。Model Group のリストが表示されます。

1. モデルグループのリストから、削除する Model Group の名前を選択します。

1. 右上隅の **[削除]** を選択します。

1. 確認ダイアログで、[`REMOVE`] を選択します。

1. **[**を削除] を選択します。

------

# モデルバージョンを登録する
<a name="model-registry-version"></a>

Amazon SageMaker AI モデルを登録するには、モデルが属するモデルグループを指定するモデルバージョンを作成します。モデルバージョンには、モデルのアーティファクト (モデルの学習済みの加重) が含まれている必要があります。必要に応じて、モデルの推論コードを含めることができます。

*推論パイプライン*は、推論リクエストを処理する、直線上に並んだ 2～15 個のコンテナで構成される SageMaker AI モデルです。コンテナと関連する環境変数を指定して、推論パイプラインを登録します。推論パイプラインの詳細については、「[Amazon SageMaker AI の推論パイプライン](inference-pipelines.md)」を参照してください。

コンテナと関連する環境変数を指定して、推論パイプラインを持つモデルを登録します。 AWS SDK for Python (Boto3)、Amazon SageMaker Studio コンソール、または SageMaker AI モデル構築パイプラインでステップを作成して、推論パイプラインでモデルバージョンを作成するには、次の手順を使用します。

**Topics**
+ [モデルバージョンを登録する (SageMaker AI パイプライン)](#model-registry-pipeline)
+ [モデルバージョンを登録する (Boto3)](#model-registry-version-api)
+ [モデルのバージョンを登録する (Studio または Studio Classic)](#model-registry-studio)
+ [別のアカウントからモデルバージョンを登録する](#model-registry-version-xaccount)

## モデルバージョンを登録する (SageMaker AI パイプライン)
<a name="model-registry-pipeline"></a>

SageMaker AI モデル構築パイプラインを使用してモデルバージョンを登録するには、パイプラインに `RegisterModel` ステップを作成します。パイプラインの一部として `RegisterModel` を作成する方法の詳細については、「[ステップ 8: モデルパッケージを作成するための RegisterModel ステップを定義する](define-pipeline.md#define-pipeline-register)」を参照してください。

## モデルバージョンを登録する (Boto3)
<a name="model-registry-version-api"></a>

Boto3 を使用してモデルバージョンを登録するには、`create_model_package` API オペレーションを呼び出します。

まず、`create_model_package` API オペレーションに渡すパラメータディクショナリを設定します。

```
# Specify the model source
model_url = "s3://your-bucket-name/model.tar.gz"

modelpackage_inference_specification =  {
    "InferenceSpecification": {
      "Containers": [
         {
            "Image": image_uri,
	    "ModelDataUrl": model_url
         }
      ],
      "SupportedContentTypes": [ "text/csv" ],
      "SupportedResponseMIMETypes": [ "text/csv" ],
   }
 }

# Alternatively, you can specify the model source like this:
# modelpackage_inference_specification["InferenceSpecification"]["Containers"][0]["ModelDataUrl"]=model_url

create_model_package_input_dict = {
    "ModelPackageGroupName" : model_package_group_name,
    "ModelPackageDescription" : "Model to detect 3 different types of irises (Setosa, Versicolour, and Virginica)",
    "ModelApprovalStatus" : "PendingManualApproval"
}
create_model_package_input_dict.update(modelpackage_inference_specification)
```

次に、`create_model_package` API オペレーションを呼び出し、先ほど設定したパラメータディクショナリを渡します。

```
create_model_package_response = sm_client.create_model_package(**create_model_package_input_dict)
model_package_arn = create_model_package_response["ModelPackageArn"]
print('ModelPackage Version ARN : {}'.format(model_package_arn))
```

## モデルのバージョンを登録する (Studio または Studio Classic)
<a name="model-registry-studio"></a>

Amazon SageMaker Studio コンソールでモデルのバージョンを登録するには、Studio と Studio Classic のどちらを使用しているかに応じて、以下の手順を実行します。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、メニューから **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下の **[モデルグループ]** と **[マイモデル]** が選択されていない場合は、選択します。

1. [**登録**] を選択します。これにより、**[モデルの登録]** ページが開きます。

1. **[モデルの登録]** ページに記載されている手順に従います。

1. 選択内容を確認したら、**[登録]** をクリックします。完了すると、モデルバージョンの **[概要]** ページが開きます。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. **[バージョンを登録]** フォームを開きます。これには以下の 2 つの方法があります。
   + **[アクション]** を選択してから、**[モデルバージョンを作成]** をクリックします。
   + モデルバージョンを作成するモデルグループの名前を選択し、**[モデルバージョンを作成]** を選択します。

1. **[モデルバージョンを登録]** フォームに、次の情報を入力します。
   + **[モデルパッケージグループ名]** ドロップダウンで、モデルグループ名を選択します。
   + (オプション) モデルバージョンの説明を入力します。
   + **[モデル承認ステータス]** ドロップダウンで、バージョン承認ステータスを選択します。
   + (オプション) **[カスタムメタデータ]** フィールドで、カスタムタグをキー値のペアとして追加します。

1. [**次へ**] を選択します。

1. **[推論の仕様]** フォームに、以下の情報を入力します。
   + 推論イメージの場所を入力します。
   + モデルデータのアーティファクトの場所を入力します。
   + (オプション) 変換ジョブやリアルタイム推論ジョブに使用するイメージと、サポートされている入出力 MIME タイプに関する情報を入力します。

1. [**次へ**] を選択します。

1. (オプション) エンドポイントの推奨に役立つ詳細情報を入力します。

1. [**次へ**] を選択します。

1. (オプション) 含めるモデルメトリクスを選択します。

1. [**次へ**] を選択します。

1. 表示された設定が正しいことを確認し、**[モデルバージョンを登録]** を選択します。その後、モーダルウィンドウにエラーメッセージが表示されたら、(メッセージの横にある) **[表示]** を選択してエラーの原因を確認します。

1. 親モデルグループのページに新しいモデルバージョンが表示されることを確認します。

------

## 別のアカウントからモデルバージョンを登録する
<a name="model-registry-version-xaccount"></a>

別の AWS アカウントによって作成されたモデルグループにモデルバージョンを登録するには、クロスアカウント AWS Identity and Access Management リソースポリシーを追加して、そのアカウントを有効にする必要があります。たとえば、組織内の 1 つの AWS アカウントがモデルのトレーニングを担当し、別のアカウントがモデルの管理、デプロイ、更新を担当します。この場合、IAM リソースポリシーを作成し、アクセスを付与する特定のアカウントリソースにそのポリシーを適用します。のクロスアカウントリソースポリシーの詳細については AWS、*AWS Identity and Access Management 「 ユーザーガイド*」の[「クロスアカウントポリシーの評価ロジック](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic-cross-account.html)」を参照してください。

他のアカウントがリソース所有者アカウントからモデルパッケージグループを表示できるようにするクロスアカウント検出を有効にするには、「[クロスアカウントの検出可能性](model-registry-ram.md)」を参照してください。

**注記**  
また、アカウントをまたいだモデルデプロイメントのトレーニング中には、KMS キーを使用して[出力データ設定](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OutputDataConfig.html)アクションを暗号化する必要があります。

SageMaker AI でクロスアカウントのモデルレジストリを有効にするには、モデルバージョンを含むモデルグループ用のクロスアカウントリソースポリシーを指定する必要があります。モデルパッケージグループのクロスアカウントポリシーを作成し、その特定のリソースにこのポリシーを適用する例を以下に示します。

アカウントをまたいでモデルグループにモデルを登録するソースアカウントで、次を設定する必要があります。この例では、ソースアカウントはモデルトレーニングアカウントであり、モデルクロスアカウントをトレーニングし、Model Registry アカウントの Model Registry に登録します。

この例では、次の変数が事前に定義されていることを前提としています。
+ `sm_client` – SageMaker AI Boto3 クライアント
+ `model_package_group_name` – アクセスを付与するモデルグループ
+ `model_package_group_arn` – クロスアカウントアクセスを付与するモデルグループの ARN
+ `bucket` – モデルトレーニングアーティファクトが保存されている Amazon S3 バケット

別のアカウントで作成されたモデルをデプロイするには、ユーザーは SageMaker AI のアクションへのアクセスを持つロール (`AmazonSageMakerFullAccess` マネージドポリシーなど) を持っている必要があります。SageMaker AI のマネージドポリシーの詳細については、「[AWS Amazon SageMaker AI の マネージドポリシー](security-iam-awsmanpol.md)」を参照してください。

### 必要な IAM リソースポリシー
<a name="model-registry-version-xaccount-policies"></a>

以下の図は、クロスアカウントモデル登録を可能にするために必要なポリシーをまとめたものです。図のように、モデルを Model Registry アカウントに正しく登録するには、モデルトレーニング中これらのポリシーをに有効にする必要があります。

![\[\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/model_registry_cross_account.png)


Amazon ECR、Amazon S3、および AWS KMS ポリシーは、次のコードサンプルで示されています。

**Amazon ECR ポリシーの例**

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AddPerm",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "ecr:BatchGetImage",
                "ecr:Describe*"
            ]
        }
    ]
}
```

------

**Amazon S3 ポリシーの例**

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AddPerm",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "s3:GetObject",
                "s3:GetBucketAcl",
                "s3:GetObjectAcl"
            ],
            "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*"
        }
    ]
}
```

------

**サンプル AWS KMS ポリシー**

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AddPerm",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKey*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

### リソースポリシーをアカウントに適用
<a name="model-registry-version-xaccount-policy-usage"></a>

以下のポリシー設定は、前のセクションで説明したポリシーを適用し、モデルトレーニングアカウントに含める必要があります。

```
import json

# The Model Registry account id of the Model Group 
model_registry_account = "111111111111"

# The model training account id where training happens
model_training_account = "222222222222"

# 1. Create a policy for access to the ECR repository 
# in the model training account for the Model Registry account Model Group
ecr_repository_policy = {"Version": "2012-10-17",		 	 	 
    "Statement": [{"Sid": "AddPerm",
        "Effect": "Allow",
        "Principal": {
          "AWS": f"arn:aws:iam::{model_registry_account}:root"
        },
        "Action": [
          "ecr:BatchGetImage",
          "ecr:Describe*"
        ]
    }]
}

# Convert the ECR policy from JSON dict to string
ecr_repository_policy = json.dumps(ecr_repository_policy)

# Set the new ECR policy
ecr = boto3.client('ecr')
response = ecr.set_repository_policy(
    registryId = model_training_account,
    repositoryName = "decision-trees-sample",
    policyText = ecr_repository_policy
)

# 2. Create a policy in the model training account for access to the S3 bucket 
# where the model is present in the Model Registry account Model Group
bucket_policy = {"Version": "2012-10-17",		 	 	 
    "Statement": [{"Sid": "AddPerm",
        "Effect": "Allow",
        "Principal": {"AWS": f"arn:aws:iam::{model_registry_account}:root"
        },
        "Action": [
          "s3:GetObject",
          "s3:GetBucketAcl",
          "s3:GetObjectAcl"
        ],
        "Resource": [
          "arn:aws:s3:::{bucket}/*",
	  "Resource: arn:aws:s3:::{bucket}"
        ]
    }]
}

# Convert the S3 policy from JSON dict to string
bucket_policy = json.dumps(bucket_policy)

# Set the new bucket policy
s3 = boto3.client("s3")
response = s3.put_bucket_policy(
    Bucket = bucket,
    Policy = bucket_policy)

# 3. Create the KMS grant for the key used during training for encryption
# in the model training account to the Model Registry account Model Group
client = boto3.client("kms")

response = client.create_grant(
    GranteePrincipal=model_registry_account,
    KeyId=kms_key_id
    Operations=[
        "Decrypt",
        "GenerateDataKey",
    ],
)
```

次の設定は、Model Group がある Model Registry アカウントに配置する必要があります。

```
# The Model Registry account id of the Model Group 
model_registry_account = "111111111111"

# 1. Create policy to allow the model training account to access the ModelPackageGroup
model_package_group_policy = {"Version": "2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AddPermModelPackageVersion",
            "Effect": "Allow",
            "Principal": {"AWS": f"arn:aws:iam::{model_training_account}:root"},
            "Action": ["sagemaker:CreateModelPackage"],
            "Resource": f"arn:aws:sagemaker:{region}:{model_registry_account}:model-package/{model_package_group_name}/*"
        }
    ]
}

# Convert the policy from JSON dict to string
model_package_group_policy = json.dumps(model_package_group_policy)

# Set the new policy
response = sm_client.put_model_package_group_policy(
    ModelPackageGroupName = model_package_group_name,
    ResourcePolicy = model_package_group_policy)
```

最後に、モデルトレーニングアカウントの `create_model_package` アクションを使用して、モデルパッケージをクロスアカウントに登録します。

```
# Specify the model source
model_url = "s3://{bucket}/model.tar.gz"

#Set up the parameter dictionary to pass to the create_model_package API operation
modelpackage_inference_specification =  {
    "InferenceSpecification": {
        "Containers": [
            {
                "Image": f"{model_training_account}.dkr.ecr.us-east-2.amazonaws.com/decision-trees-sample:latest",
                "ModelDataUrl": model_url
            }
        ],
        "SupportedContentTypes": [ "text/csv" ],
        "SupportedResponseMIMETypes": [ "text/csv" ],
    }
}

# Alternatively, you can specify the model source like this:
# modelpackage_inference_specification["InferenceSpecification"]["Containers"][0]["ModelDataUrl"]=model_url

create_model_package_input_dict = {
    "ModelPackageGroupName" : model_package_group_arn,
    "ModelPackageDescription" : "Model to detect 3 different types of irises (Setosa, Versicolour, and Virginica)",
    "ModelApprovalStatus" : "PendingManualApproval"
}
create_model_package_input_dict.update(modelpackage_inference_specification)

# Create the model package in the Model Registry account
create_model_package_response = sm_client.create_model_package(**create_model_package_input_dict)
model_package_arn = create_model_package_response["ModelPackageArn"]
print('ModelPackage Version ARN : {}'.format(model_package_arn))
```

# モデルグループとバージョンを表示する
<a name="model-registry-view"></a>

モデルグループとバージョンは、モデルの整理に役立ちます。 AWS SDK for Python (Boto3) (Boto3) または Amazon SageMaker Studio コンソールを使用して、モデルグループのモデルバージョンのリストを表示できます。

## グループ内のモデルバージョンのリストを表示する
<a name="model-registry-view-list"></a>

Model Group に関連付けられたすべてのモデルバージョンを表示できます。特定の機械学習問題に対処するためにトレーニングが行われるモデルがすべて Model Group にある場合、それらの関連モデルをすべて表示できます。

### グループ内のモデルバージョンのリストを表示する (Boto3)
<a name="model-registry-view-list-api"></a>

Boto3 を使用してモデルグループに関連付けられたモデルバージョンを表示するには、`list_model_packages` API オペレーションを呼び出し、モデルグループの名前を `ModelPackageGroupName` パラメータの値として渡します。次のコードは、[モデルグループを作成する (Boto3)](model-registry-model-group.md#model-registry-package-group-api) で作成した Model Group に関連付けられたモデルバージョンをリスト表示します。

```
sm_client.list_model_packages(ModelPackageGroupName=model_package_group_name)
```

### グループ内のモデルバージョンを一覧表示する (Studio または Studio Classic)
<a name="model-registry-view-list-studio"></a>

Amazon SageMaker Studio コンソールでモデルグループ内のモデルバージョンを一覧表示するには、Studio と Studio Classic のどちらを使用しているかに応じて、次の手順を実行します。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、メニューから **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. モデルグループのリストから、表示するモデルグループの左側にある山括弧を選択します。

1. モデルグループ内のモデルバージョンが一覧表示されます。

1. (オプション) 表示されている場合は、**[すべて表示]** をクリックして、追加のモデルバージョンを表示します。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. モデルグループのリストから、表示する Model Group の名前を選択します。

1. 新しいタブが開き、Model Group 内にあるモデルバージョンのリストが表示されます。

------

# モデルバージョンの詳細を更新する
<a name="model-registry-details"></a>

 AWS SDK for Python (Boto3) または Amazon SageMaker Studio コンソールを使用して、特定のモデルバージョンの詳細を表示して更新できます。

**重要**  
Amazon SageMaker AI は、モデルカードをモデルレジストリに統合します。Model Registry に登録されたモデルパッケージには、モデルパッケージのコンポーネントとして簡略化された Model Cards が含まれています。詳細については、「[モデルパッケージのモデルカードのスキーマ (Studio)](#model-card-schema)」を参照してください。

## モデルバージョンの詳細を表示して更新する (Boto3)
<a name="model-registry-details-api"></a>

Boto3 を使用してモデルバージョンの詳細を表示するには、次のステップを実行します。

1. モデルグループ内のモデルバージョンを表示するには、`list_model_packages` API オペレーションを呼び出します。

   ```
   sm_client.list_model_packages(ModelPackageGroupName="ModelGroup1")
   ```

   レスポンスはモデルパッケージの概要のリストです。このリストからモデルバージョンの Amazon リソースネーム (ARN) を取得します。

   ```
   {'ModelPackageSummaryList': [{'ModelPackageGroupName': 'AbaloneMPG-16039329888329896',
      'ModelPackageVersion': 1,
      'ModelPackageArn': 'arn:aws:sagemaker:us-east-2:123456789012:model-package/ModelGroup1/1',
      'ModelPackageDescription': 'TestMe',
      'CreationTime': datetime.datetime(2020, 10, 29, 1, 27, 46, 46000, tzinfo=tzlocal()),
      'ModelPackageStatus': 'Completed',
      'ModelApprovalStatus': 'Approved'}],
    'ResponseMetadata': {'RequestId': '12345678-abcd-1234-abcd-aabbccddeeff',
     'HTTPStatusCode': 200,
     'HTTPHeaders': {'x-amzn-requestid': '12345678-abcd-1234-abcd-aabbccddeeff',
      'content-type': 'application/x-amz-json-1.1',
      'content-length': '349',
      'date': 'Mon, 23 Nov 2020 04:56:50 GMT'},
     'RetryAttempts': 0}}
   ```

1. `describe_model_package` を呼び出してモデルバージョンの詳細を表示します。`list_model_packages` 呼び出しの出力で取得したモデルバージョンの ARN を渡します。

   ```
   sm_client.describe_model_package(ModelPackageName="arn:aws:sagemaker:us-east-2:123456789012:model-package/ModelGroup1/1")
   ```

   この呼び出しの出力は、モデルバージョンの詳細を含む JSON オブジェクトです。

   ```
   {'ModelPackageGroupName': 'ModelGroup1',
    'ModelPackageVersion': 1,
    'ModelPackageArn': 'arn:aws:sagemaker:us-east-2:123456789012:model-package/ModelGroup/1',
    'ModelPackageDescription': 'Test Model',
    'CreationTime': datetime.datetime(2020, 10, 29, 1, 27, 46, 46000, tzinfo=tzlocal()),
    'InferenceSpecification': {'Containers': [{'Image': '257758044811.dkr.ecr.us-east-2.amazonaws.com/sagemaker-xgboost:1.0-1-cpu-py3',
       'ImageDigest': 'sha256:99fa602cff19aee33297a5926f8497ca7bcd2a391b7d600300204eef803bca66',
       'ModelDataUrl': 's3://sagemaker-us-east-2-123456789012/ModelGroup1/pipelines-0gdonccek7o9-AbaloneTrain-stmiylhtIR/output/model.tar.gz'}],
     'SupportedTransformInstanceTypes': ['ml.m5.xlarge'],
     'SupportedRealtimeInferenceInstanceTypes': ['ml.t2.medium', 'ml.m5.xlarge'],
     'SupportedContentTypes': ['text/csv'],
     'SupportedResponseMIMETypes': ['text/csv']},
    'ModelPackageStatus': 'Completed',
    'ModelPackageStatusDetails': {'ValidationStatuses': [],
     'ImageScanStatuses': []},
    'CertifyForMarketplace': False,
    'ModelApprovalStatus': 'PendingManualApproval',
    'LastModifiedTime': datetime.datetime(2020, 10, 29, 1, 28, 0, 438000, tzinfo=tzlocal()),
    'ResponseMetadata': {'RequestId': '12345678-abcd-1234-abcd-aabbccddeeff',
     'HTTPStatusCode': 200,
     'HTTPHeaders': {'x-amzn-requestid': '212345678-abcd-1234-abcd-aabbccddeeff',
      'content-type': 'application/x-amz-json-1.1',
      'content-length': '1038',
      'date': 'Mon, 23 Nov 2020 04:59:38 GMT'},
     'RetryAttempts': 0}}
   ```

### モデルパッケージのモデルカードのスキーマ (Studio)
<a name="model-card-schema"></a>

モデルバージョンに関連するすべての詳細は、モデルパッケージのモデルカードにカプセル化されています。モデルパッケージのモデルカードは、Amazon SageMaker Model Cards の特殊な使用方法であり、そのスキーマは簡略化されています。モデルパッケージのモデルカードのスキーマは、以下の拡張可能なドロップダウンに表示されます。

#### モデルパッケージのモデルカードのスキーマ
<a name="collapsible-section-model-package-model-card-schema"></a>

```
{
  "title": "SageMakerModelCardSchema",
  "description": "Schema of a model package’s model card.",
  "version": "0.1.0",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "model_overview": {
      "description": "Overview about the model.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "model_creator": {
          "description": "Creator of model.",
          "type": "string",
          "maxLength": 1024
        },
        "model_artifact": {
          "description": "Location of the model artifact.",
          "type": "array",
          "maxContains": 15,
          "items": {
            "type": "string",
            "maxLength": 1024
          }
        }
      }
    },
    "intended_uses": {
      "description": "Intended usage of model.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "purpose_of_model": {
          "description": "Reason the model was developed.",
          "type": "string",
          "maxLength": 2048
        },
        "intended_uses": {
          "description": "Intended use cases.",
          "type": "string",
          "maxLength": 2048
        },
        "factors_affecting_model_efficiency": {
          "type": "string",
          "maxLength": 2048
        },
        "risk_rating": {
          "description": "Risk rating for model card.",
          "$ref": "#/definitions/risk_rating"
        },
        "explanations_for_risk_rating": {
          "type": "string",
          "maxLength": 2048
        }
      }
    },
    "business_details": {
      "description": "Business details of model.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "business_problem": {
          "description": "Business problem solved by the model.",
          "type": "string",
          "maxLength": 2048
        },
        "business_stakeholders": {
          "description": "Business stakeholders.",
          "type": "string",
          "maxLength": 2048
        },
        "line_of_business": {
          "type": "string",
          "maxLength": 2048
        }
      }
    },
    "training_details": {
      "description": "Overview about the training.",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "objective_function": {
          "description": "The objective function for which the model is optimized.",
          "function": {
            "$ref": "#/definitions/objective_function"
          },
          "notes": {
            "type": "string",
            "maxLength": 1024
          }
        },
        "training_observations": {
          "type": "string",
          "maxLength": 1024
        },
        "training_job_details": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "training_arn": {
              "description": "SageMaker Training job ARN.",
              "type": "string",
              "maxLength": 1024
            },
            "training_datasets": {
              "description": "Location of the model datasets.",
              "type": "array",
              "maxContains": 15,
              "items": {
                "type": "string",
                "maxLength": 1024
              }
            },
            "training_environment": {
              "type": "object",
              "additionalProperties": false,
              "properties": {
                "container_image": {
                  "description": "SageMaker training image URI.",
                  "type": "array",
                  "maxContains": 15,
                  "items": {
                    "type": "string",
                    "maxLength": 1024
                  }
                }
              }
            },
            "training_metrics": {
              "type": "array",
              "items": {
                "maxItems": 50,
                "$ref": "#/definitions/training_metric"
              }
            },
            "user_provided_training_metrics": {
              "type": "array",
              "items": {
                "maxItems": 50,
                "$ref": "#/definitions/training_metric"
              }
            },
            "hyper_parameters": {
              "type": "array",
              "items": {
                "maxItems": 100,
                "$ref": "#/definitions/training_hyper_parameter"
              }
            },
            "user_provided_hyper_parameters": {
              "type": "array",
              "items": {
                "maxItems": 100,
                "$ref": "#/definitions/training_hyper_parameter"
              }
            }
          }
        }
      }
    },
    "evaluation_details": {
      "type": "array",
      "default": [],
      "items": {
        "type": "object",
        "required": [
          "name"
        ],
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string",
            "pattern": ".{1,63}"
          },
          "evaluation_observation": {
            "type": "string",
            "maxLength": 2096
          },
          "evaluation_job_arn": {
            "type": "string",
            "maxLength": 256
          },
          "datasets": {
            "type": "array",
            "items": {
              "type": "string",
              "maxLength": 1024
            },
            "maxItems": 10
          },
          "metadata": {
            "description": "Additional attributes associated with the evaluation results.",
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "maxLength": 1024
            }
          },
          "metric_groups": {
            "type": "array",
            "default": [],
            "items": {
              "type": "object",
              "required": [
                "name",
                "metric_data"
              ],
              "properties": {
                "name": {
                  "type": "string",
                  "pattern": ".{1,63}"
                },
                "metric_data": {
                  "type": "array",
                  "items": {
                    "anyOf": [
                      {
                        "$ref": "#/definitions/simple_metric"
                      },
                      {
                        "$ref": "#/definitions/linear_graph_metric"
                      },
                      {
                        "$ref": "#/definitions/bar_chart_metric"
                      },
                      {
                        "$ref": "#/definitions/matrix_metric"
                      }
                    ]

                  }
                }
              }
            }
          }
        }
      }
    },
    "additional_information": {
      "additionalProperties": false,
      "type": "object",
      "properties": {
        "ethical_considerations": {
          "description": "Ethical considerations for model users.",
          "type": "string",
          "maxLength": 2048
        },
        "caveats_and_recommendations": {
          "description": "Caveats and recommendations for model users.",
          "type": "string",
          "maxLength": 2048
        },
        "custom_details": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/definitions/custom_property"
          }
        }
      }
    }
  },
  "definitions": {
    "source_algorithms": {
      "type": "array",
      "minContains": 1,
      "maxContains": 1,
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "algorithm_name"
        ],
        "properties": {
          "algorithm_name": {
            "description": "The name of the algorithm used to create the model package. The algorithm must be either an algorithm resource in your SageMaker AI account or an algorithm in AWS Marketplace that you are subscribed to.",
            "type": "string",
            "maxLength": 170
          },
          "model_data_url": {
            "description": "Amazon S3 path where the model artifacts, which result from model training, are stored.",
            "type": "string",
            "maxLength": 1024
          }
        }
      }
    },
    "inference_specification": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "containers"
      ],
      "properties": {
        "containers": {
          "description": "Contains inference related information used to create model package.",
          "type": "array",
          "minContains": 1,
          "maxContains": 15,
          "items": {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "image"
            ],
            "properties": {
              "model_data_url": {
                "description": "Amazon S3 path where the model artifacts, which result from model training, are stored.",
                "type": "string",
                "maxLength": 1024
              },
              "image": {
                "description": "Inference environment path. The Amazon Elastic Container Registry (Amazon ECR) path where inference code is stored.",
                "type": "string",
                "maxLength": 255
              },
              "nearest_model_name": {
                "description": "The name of a pre-trained machine learning benchmarked by an Amazon SageMaker Inference Recommender model that matches your model.",
                "type": "string"
              }
            }
          }
        }
      }
    },
    "risk_rating": {
      "description": "Risk rating of model.",
      "type": "string",
      "enum": [
        "High",
        "Medium",
        "Low",
        "Unknown"
      ]
    },
    "custom_property": {
      "description": "Additional property.",
      "type": "string",
      "maxLength": 1024
    },
    "objective_function": {
      "description": "Objective function for which the training job is optimized.",
      "additionalProperties": false,
      "properties": {
        "function": {
          "type": "string",
          "enum": [
            "Maximize",
            "Minimize"
          ]
        },
        "facet": {
          "type": "string",
          "maxLength": 63
        },
        "condition": {
          "type": "string",
          "maxLength": 63
        }
      }
    },
    "training_metric": {
      "description": "Training metric data.",
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "pattern": ".{1,255}"
        },
        "notes": {
          "type": "string",
          "maxLength": 1024
        },
        "value": {
          "type": "number"
        }
      }
    },
    "training_hyper_parameter": {
      "description": "Training hyperparameter.",
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "pattern": ".{1,255}"
        },
        "value": {
          "type": "string",
          "pattern": ".{1,255}"
        }
      }
    },
    "linear_graph_metric": {
      "type": "object",
      "required": [
        "name",
        "type",
        "value"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "pattern": ".{1,255}"
        },
        "notes": {
          "type": "string",
          "maxLength": 1024
        },
        "type": {
          "type": "string",
          "enum": [
            "linear_graph"
          ]
        },
        "value": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "array",
                "items": {
                  "type": "number"
                },
                "minItems": 2,
                "maxItems": 2
              },
              "minItems": 1
            }
          ]
        },
        "x_axis_name": {
          "$ref": "#/definitions/axis_name_string"
        },
        "y_axis_name": {
          "$ref": "#/definitions/axis_name_string"
        }
      }
    },
    "bar_chart_metric": {
      "type": "object",
      "required": [
        "name",
        "type",
        "value"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "pattern": ".{1,255}"
        },
        "notes": {
          "type": "string",
          "maxLength": 1024
        },
        "type": {
          "type": "string",
          "enum": [
            "bar_chart"
          ]
        },
        "value": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "number"
              },
              "minItems": 1
            }
          ]
        },
        "x_axis_name": {
          "$ref": "#/definitions/axis_name_array"
        },
        "y_axis_name": {
          "$ref": "#/definitions/axis_name_string"
        }
      }
    },
    "matrix_metric": {
      "type": "object",
      "required": [
        "name",
        "type",
        "value"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "pattern": ".{1,255}"
        },
        "notes": {
          "type": "string",
          "maxLength": 1024
        },
        "type": {
          "type": "string",
          "enum": [
            "matrix"
          ]
        },
        "value": {
          "anyOf": [
            {
              "type": "array",
              "items": {
                "type": "array",
                "items": {
                  "type": "number"
                },
                "minItems": 1,
                "maxItems": 20
              },
              "minItems": 1,
              "maxItems": 20
            }
          ]
        },
        "x_axis_name": {
          "$ref": "#/definitions/axis_name_array"
        },
        "y_axis_name": {
          "$ref": "#/definitions/axis_name_array"
        }
      }
    },
    "simple_metric": {
      "description": "Metric data.",
      "type": "object",
      "required": [
        "name",
        "type",
        "value"
      ],
      "additionalProperties": false,
      "properties": {
        "name": {
          "type": "string",
          "pattern": ".{1,255}"
        },
        "notes": {
          "type": "string",
          "maxLength": 1024
        },
        "type": {
          "type": "string",
          "enum": [
            "number",
            "string",
            "boolean"
          ]
        },
        "value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "string",
              "maxLength": 63
            },
            {
              "type": "boolean"
            }
          ]
        },
        "x_axis_name": {
          "$ref": "#/definitions/axis_name_string"
        },
        "y_axis_name": {
          "$ref": "#/definitions/axis_name_string"
        }
      }
    },
    "axis_name_array": {
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 63
      }
    },
    "axis_name_string": {
      "type": "string",
      "maxLength": 63
    }
  }
}
```

## モデルバージョンの詳細を表示して更新する (Studio または Studio Classic)
<a name="model-registry-details-studio"></a>

モデルバージョンの詳細を表示して更新するには、Studio と Studio Classic のどちらを使用するかに応じて、次の手順を実行します。Studio Classic では、モデルバージョンの承認ステータスを更新できます。詳細については、「[モデルの承認ステータスを更新する](model-registry-approve.md)」を参照してください。一方、Studio では、SageMaker AI がモデルパッケージのモデルカードを作成し、モデルバージョン UI にはモデルカードの詳細を更新するオプションが提供されます。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、メニューから **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. 表示するモデルバージョンを含むモデルグループの名前を選択します。

1. モデルバージョンのリストで、表示するモデルバージョンの名前を選択します。

1. 次のいずれかのテーブルを選択します。
   + **トレーニング**: パフォーマンスメトリクス、アーティファクト、IAM ロールと暗号化、コンテナなど、トレーニングジョブに関連する詳細を表示または編集します。詳細については、「[トレーニングジョブを追加する (Studio)](model-registry-details-studio-training.md)」を参照してください。
   + **評価**: パフォーマンスメトリクス、評価データセット、セキュリティなど、トレーニングジョブに関連する詳細を表示または編集します。詳細については、「[評価ジョブを追加する (Studio)](model-registry-details-studio-evaluate.md)」を参照してください。
   + **監査**: モデルのビジネス上の目的、使用状況、リスク、アルゴリズムやパフォーマンスの制限などの技術的詳細に関する高レベルの詳細を表示または編集します。詳細については、「[監査 (ガバナンス) 情報を更新する (Studio)](model-registry-details-studio-audit.md)」を参照してください。
   + **デプロイ**: エンドポイントを構成する推論イメージコンテナとインスタンスの場所を表示または編集します。詳細については、「[デプロイ情報を更新する (Studio)](model-registry-details-studio-deploy.md)」を参照してください。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. モデルグループのリストから、表示する Model Group の名前を選択します。

1. 新しいタブが開き、Model Group 内にあるモデルバージョンのリストが表示されます。

1. モデルバージョンのリストで、詳細を表示するモデルバージョンの名前を選択します。

1. 表示されるモデルバージョンのタブで次のいずれかを選択して、モデルバージョンの詳細を表示します。
   + **Activity** (アクティビティ): 承認ステータスの更新など、モデルバージョンのイベントを表示します。
   + **モデル品質**: Model Monitor のモデル品質チェックに関連するメトリクスをレポートし、モデル予測を Ground Truth と比較します。Model Monitor のモデル品質チェックの詳細については、「[モデルの質](model-monitor-model-quality.md)」を参照してください。
   + **説明可能性**: Model Monitor の機能属性チェックに関連するメトリクスをレポートし、トレーニングデータとライブデータに含まれる特徴量の相対的なランキングを比較します。Model Monitor の説明可能性チェックの詳細については、「[本番稼働用モデルの Feature Attribution ドリフト](clarify-model-monitor-feature-attribution-drift.md)」を参照してください。
   + **バイアス**: Model Monitor のバイアスドリフトチェックに関連するメトリクスをレポートし、ライブデータとトレーニングデータの分布を比較します。Model Monitor のバイアスドリフトチェックの詳細については、「[本番稼働用モデルのバイアスドリフト](clarify-model-monitor-bias-drift.md)」を参照してください。
   + **推論レコメンダー**: モデルとサンプルペイロードに基づいて、最適なパフォーマンスを実現するための初期インスタンスの推奨事項を提供します。
   + **ロードテスト**: レイテンシーやスループットの制約など、特定の本番要件指定した場合に、選択したインスタンスタイプ全体でロードテストを実行します。
   + **推論の仕様**: リアルタイムの推論ジョブと変換ジョブのインスタンスタイプと、Amazon ECR コンテナに関する情報を表示します。
   + **情報**: モデルバージョンが関連付けられているプロジェクト、モデルを生成したパイプライン、Model Group、Amazon S3 内のモデルの場所といった情報を表示します。

------

# トレーニングジョブを追加する (Studio)
<a name="model-registry-details-studio-training"></a>

**重要**  
2023 年 11 月 30 日以降、従来の Amazon SageMaker Studio のエクスペリエンスは Amazon SageMaker Studio Classic と名前が変更されました。以下のセクションは、更新後の Studio のエクスペリエンスに沿った内容になっています。Studio Classic アプリケーションを使用する場合は、「[Amazon SageMaker Studio Classic](studio.md)」を参照してください。

外部で作成された、または SageMaker AI を使用して作成された単一のトレーニングジョブをモデルに追加できます。SageMaker トレーニングジョブを追加すると、SageMaker AI は、**[トレーニング]** タブのすべてのサブページのフィールドに事前入力します。外部で作成されたトレーニングジョブを追加する場合は、トレーニングジョブに関する詳細を手動で追加する必要があります。

**モデルパッケージにトレーニングジョブを追加するには、次の手順を実行します。**

1. **[トレーニング]** タブをクリックします。

1. **[Add]** (追加) を選択します。このオプションが表示されない場合は、トレーニングジョブが既にアタッチされている可能性があります。このトレーニングジョブを削除する場合は、以下の手順を実行してトレーニングジョブを削除します。

1. SageMaker AI で作成したトレーニングジョブ、または外部で作成したトレーニングジョブを追加できます。

   1. SageMaker AI で作成したトレーニングジョブを追加するには、次の手順を実行します。

      1. **[SageMaker AI]** をクリックします。

      1. 追加するトレーニングジョブの横にあるラジオボックスをオンにします。

      1. **[Add]** (追加) を選択します。

   1. 外部で作成したトレーニングジョブを追加するには、次の手順を実行します。

      1. [**Custom**] を選択します。

      1. **[名前]** フィールドに、カスタムトレーニングジョブの名前を挿入します。

      1. **[Add]** (追加) を選択します。

# トレーニングジョブを削除する (Studio)
<a name="model-registry-details-studio-training-remove"></a>

外部で作成された、または SageMaker AI を使用して作成されたトレーニングジョブをモデルから削除するには、次の手順を実行します。

**モデルパッケージからトレーニングジョブを削除するには、次の手順を実行します。**

1. [**Train**] を選択します。

1. **[トレーニング]** タブの下にある **[歯車]** ( ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/icons/Settings_squid.png)) アイコンをクリックします。

1. トレーニングジョブの横にある **[削除]** をクリックします。

1. **[はい、<トレーニングジョブ名> を削除します]** を選択します。

1. **[Done]** (完了) をクリックします。

# トレーニングジョブの詳細を更新する (Studio)
<a name="model-registry-details-studio-training-update"></a>

モデルに関連付けられた、外部または SageMaker AI で作成されたトレーニングジョブの詳細を更新するには、次の手順を実行します。

**トレーニングジョブに関連する詳細を更新 (して表示) するには:**

1. **[トレーニング]** タブで、トレーニングジョブのステータスを表示します。ステータスは、モデルパッケージにトレーニングジョブを追加した場合は `Complete` で、追加されていない場合は `Undefined` です。

1. パフォーマンス、ハイパーパラメータ、識別の詳細など、トレーニングジョブに関連する詳細を表示するには、**[トレーニング]** タブをクリックします。

1. モデルのパフォーマンスに関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[トレーニング]** タブの左側のサイドバーで **[パフォーマンス]** を選択します。

   1. トレーニングジョブに関連する **[メトリクス]** が表示されます。**[パフォーマンス]** ページには、名前、値、メトリクスに関連して追加した備考別にメトリクスが一覧表示されます。

   1. (オプション) 既存のメトリクスに備考を追加するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[削除]** を選択します。

      1. リストされている任意のメトリクスに備考を追加します。

      1. モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

   1. トレーニングジョブに関連する **[カスタムメトリクス]** が表示されます。カスタムメトリクスは、メトリクスと同様の形式です。

   1. (オプション) カスタムメトリクスを追加するには、次の手順を実行します。

      1. **[Add]** (追加) を選択します。

      1. 新しいメトリクスの名前、値、オプションの備考を挿入します。

   1. (オプション) カスタムメトリクスを削除するには、削除するメトリクスの横にある **[ゴミ箱]** アイコンをクリックします。

   1. **[観察結果]** テキストボックスで、トレーニングジョブのパフォーマンスに関連して追加した備考が表示されます。

   1. (オプション) 観察結果を追加または更新するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[削除]** を選択します。

      1. **[観察結果]** テキストボックスに備考を追加または更新します。

      1. モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. モデルアーティファクトに関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[トレーニング]** タブの左側のサイドバーで **[アーティファクト]** を選択します。

   1. **[場所 (S3 URI)]** フィールドで、トレーニングデータセットの Amazon S3 の場所が表示されます。

   1. **[モデル]** フィールドで、トレーニングジョブに含めた他のモデルからのモデルアーティファクトの名前と Amazon S3 の場所が表示されます。

   1. **[アーティファクト]** ページのフィールドを更新するには、次の手順を実行します。

      1. モデルバージョンページの右上にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. 任意のフィールドに新しい値を入力します。

      1. モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. ハイパーパラメータに関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[トレーニング]** タブの左側のサイドバーで **[ハイパーパラメータ]** を選択します。

   1. SageMaker AI が提供するハイパーパラメータと定義済みのカスタムハイパーパラメータを表示します。各ハイパーパラメータが、名前と値とともに一覧表示されます。

   1. 追加したカスタムハイパーパラメータを確認します。

   1. (オプション) カスタムハイパーパラメータをさらに追加するには、次の手順を実行します。

      1. **[カスタムハイパーパラメータ]** テーブルの右上隅の上部にある **[追加]** をクリックします。新しい空白フィールドのペアが表示されます。

      1. 新しいカスタムハイパーパラメータの名前と値を入力します。これらの値は自動的に保存されます。

   1. (オプション) カスタムハイパーパラメータを削除するには、ハイパーパラメータの右側にある **[ゴミ箱]** アイコンをクリックします。

1. トレーニングジョブ環境に関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[トレーニング]** タブの左側のサイドバーで **[環境]** を選択します。

   1. SageMaker AI (SageMaker トレーニングジョブの場合) またはユーザー (カスタムトレーニングジョブの場合) が追加したトレーニングジョブコンテナの Amazon ECR URI の場所を表示します。

   1. (オプション) さらにトレーニングジョブコンテナを追加するには、**[追加]** をクリックして、新しいトレーニングコンテナの URI を入力します。

1. トレーニングジョブ名とトレーニングジョブの Amazon リソースネーム (ARN) を更新して表示するには、次の手順を実行します。

   1. **[トレーニング]** タブの左側のサイドバーで **[詳細]** を選択します。

   1. トレーニングジョブのトレーニングジョブ名と ARN が表示されます。

# 評価ジョブを追加する (Studio)
<a name="model-registry-details-studio-evaluate"></a>

**重要**  
2023 年 11 月 30 日以降、従来の Amazon SageMaker Studio のエクスペリエンスは Amazon SageMaker Studio Classic と名前が変更されました。以下のセクションは、更新後の Studio のエクスペリエンスに沿った内容になっています。Studio Classic アプリケーションを使用する場合は、「[Amazon SageMaker Studio Classic](studio.md)」を参照してください。

モデルを登録したら、単一または複数のデータセットを使用してモデルをテストし、パフォーマンスを評価できます。Amazon S3 から単数または複数の評価ジョブを追加するか、すべての詳細を手動で入力して独自の評価ジョブを定義できます。Amazon S3 からジョブを追加すると、SageMaker AI は、**[評価]** タブのすべてのサブページのフィールドに事前入力します。独自の評価ジョブを定義する場合は、評価ジョブに関連する詳細を手動で追加する必要があります。

**最初の評価ジョブをモデルパッケージに追加するには、次の手順を実行します。**

1. **[評価]** タブをクリックします。

1. **[Add]** (追加) を選択します。

1. Amazon S3 からの評価ジョブまたはカスタム評価ジョブを追加できます。

   1. Amazon S3 からの付帯事項を含む評価ジョブを追加するには、次の手順を実行します。

      1. **[S3]** を選択します。

      1. 評価ジョブの名前を入力します。

      1. 評価ジョブの出力び付帯事項に Amazon S3 の場所を入力します。

      1. **[Add]** (追加) を選択します。

   1. カスタム評価ジョブを追加するには、次の手順を実行します。

      1. [**Custom**] を選択します。

      1. 評価ジョブの名前を入力します。

      1. **[Add]** (追加) を選択します。

**さらに評価ジョブをモデルパッケージに追加するには、次の手順を実行します。**

1. **[評価]** タブをクリックします。

1. **[トレーニング]** タブの下にある **[歯車]** ( ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/icons/Settings_squid.png)) アイコンをクリックします。

1. ダイアログボックスで、**[追加]** をクリックします。

1. Amazon S3 からの評価ジョブまたはカスタム評価ジョブを追加できます。

   1. Amazon S3 からの付帯事項を含む評価ジョブを追加するには、次の手順を実行します。

      1. **[S3]** を選択します。

      1. 評価ジョブの名前を入力します。

      1. 評価ジョブの出力び付帯事項に Amazon S3 の場所を入力します。

      1. **[Add]** (追加) を選択します。

   1. カスタム評価ジョブを追加するには、次の手順を実行します。

      1. [**Custom**] を選択します。

      1. 評価ジョブの名前を入力します。

      1. **[Add]** (追加) を選択します。

# 評価ジョブを削除する (Studio)
<a name="model-registry-details-studio-evaluate-remove"></a>

外部で作成された、または SageMaker AI を使用して作成された評価ジョブをモデルから削除するには、次の手順を実行します。

**モデルパッケージから評価ジョブを削除するには、次の手順を実行します。**

1. **[評価]** タブをクリックします。

1. **[トレーニング]** タブの下にある **[歯車]** ( ![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/icons/Settings_squid.png)) アイコンをクリックします。

1. (オプション) リストから評価ジョブを検索するには、検索ボックスに検索語を入力して選択肢のリストを絞り込みます。

1. 評価ジョブの横にあるラジオボタンをオンにします。

1. **[**を削除] を選択します。

1. **[はい、<評価名> を削除します]** を選択します。

1. **[Done]** (完了) をクリックします。

# 評価ジョブを更新する (Studio)
<a name="model-registry-details-studio-evaluate-update"></a>

モデルに関連付けられた、外部または SageMaker AI で作成された評価ジョブの詳細を更新するには、次の手順を実行します。

**評価ジョブに関連する詳細を更新 (して表示) するには:**

1. **[評価]** タブで、評価ジョブのステータスを表示します。ステータスは、モデルパッケージに評価ジョブを追加した場合は `Complete` で、追加されていない場合は `Undefined` です。

1. パフォーマンスやアーティファクトの場所など、評価ジョブに関連する詳細を表示するには、**[評価]** タブをクリックします。

1. 評価中にモデルのパフォーマンスに関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[評価]** タブのサイドバーで **[パフォーマンス]** を選択します。

   1. **[メトリクス]** リストで、評価ジョブに関連するメトリクスを確認します。**[メトリクス]** リストには、名前、値、メトリクスに関連して追加した備考別に個別のメトリクスが表示されます。

   1. **[観察結果]** テキストボックスで、トレーニングジョブのパフォーマンスに関連して追加した備考が表示されます。

   1. 任意のメトリクスの **[備考]** フィールドまたは **[観察結果]** フィールドを更新するには、次の手順を実行します。

      1. モデルバージョンページの右上にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. 任意のメトリクスの [備考] フィールドまたは **[観察結果]** フィールドを更新するには、次の手順を実行します。

      1. モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. 評価ジョブデータセットに関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[評価]** タブの左側のサイドバーで **[アーティファクト]** を選択します。

   1. 評価ジョブで使用されるデータセットが表示されます。

   1. (オプション) データセットを追加するには、**[追加]** をクリックして、データセットに Amazon S3 URI を入力します。

   1. (オプション) データセットを削除するには、削除するデータセットの横にある **[ゴミ箱]** アイコンをクリックします。

1. ジョブ名と評価ジョブ ARN を表示するには、**[詳細]** をクリックします。

# 監査 (ガバナンス) 情報を更新する (Studio)
<a name="model-registry-details-studio-audit"></a>

**重要**  
2023 年 11 月 30 日以降、従来の Amazon SageMaker Studio のエクスペリエンスは Amazon SageMaker Studio Classic と名前が変更されました。以下のセクションは、更新後の Studio のエクスペリエンスに沿った内容になっています。Studio Classic アプリケーションを使用する場合は、「[Amazon SageMaker Studio Classic](studio.md)」を参照してください。

組織がモデルガバナンスの堅牢なフレームワークを確立できるように、重要なモデルの詳細を文書化する必要があります。このような詳細をチームのメンバーは参照できるため、ユースケースで適切にモデルを使用し、モデルのビジネスドメインと所有者を把握して、モデルのリスクを認識できます。モデルのパフォーマンスの予測方法とパフォーマンス制限の理由に関する詳細を保存することもできます。

**モデルガバナンスに関連する詳細を表示または更新するには、次の手順を実行します。**

1. **[監査]** タブで、モデルカードの承認ステータスを表示します。ステータスは以下のいずれかになります。
   + **下書き**: モデルカードはまだ下書きです。
   + **承認保留中**: モデルカードは承認待ちです。
   + **承認済み**: モデルカードは承認されています。

1. モデルカードの承認ステータスを更新するには、承認ステータスの横にあるプルダウンメニューをクリックして、更新された承認ステータスを選択します。

1. モデルパッケージのリスクに関連する詳細を更新して表示するには、次の手順を実行します。

   1. **[監査]** タブの左側のサイドバーで **[リスク]** を選択します。

   1. 現在のリスク評価とリスク評価の説明を表示します。

   1. 評価または説明を更新するには、次の手順を実行します。

      1. **[監査]** ページの右上隅にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. (オプション) 更新されたリスク評価を選択します。

      1. (オプション) リスク評価の説明を更新します。

      1.  モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. モデルパッケージの使用に関する詳細を更新して表示するには、次の手順を実行します。

   1. **[監査]** タブの左側のサイドバーで **[使用状況]** を選択します。

   1. 次のフィールドに追加したテキストを表示します。
      + **問題のタイプ**: モデルの構築に使用した機械学習アルゴリズムのカテゴリ
      + **アルゴリズムタイプ**: モデルの作成に使用した特定のアルゴリズム
      + **使用目的**: ビジネス上の問題におけるモデルの現在の適用
      + **モデルの有効性に影響を与える要因**: モデルのパフォーマンス制限に関する備考
      + **推奨される使用方法**: モデルを使用して作成できるアプリケーションのタイプ、適切なパフォーマンスが期待できるシナリオ、またはモデルで使用するデータのタイプ
      + **倫理的な考慮事項**: 年齢や性別などの要因に基づいてモデルを区別する方法の説明

   1. 上記のいずれかのフィールドを更新するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. (オプション) 必要に応じて、**[問題のタイプ]** と **[アルゴリズムタイプ]** のドロップダウンメニューを使用して新しい値を選択します。

      1. (オプション) 残りのフィールドのテキストの説明を更新します。

      1.  モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. モデルパッケージのステークホルダーに関する詳細を更新して表示するには、次の手順を実行します。

   1. **[監査]** タブの左側のサイドバーで **[ステークホルダー]** を選択します。

   1. 現在のモデル所有者と作成者がある場合は、それらが表示されます。

   1. モデル所有者または作成者を更新するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. モデル所有者またはモデル作成者のフィールドを更新します。

      1.  モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. モデルパッケージが対処するビジネス上の問題に関連する詳細を更新および表示するには、次の手順を実行します。

   1. **[監査]** タブの左側のサイドバーで **[ビジネス]** を選択します。

   1. モデルが対処するビジネス上の問題、ビジネス上の問題のステークホルダー、基幹業務に関する現在の説明がある場合は、表示されます。

   1. **[ビジネス]** タブのフィールドを更新するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. 任意のフィールドの説明を更新します。

      1.  モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

1. モデルの既存のドキュメント (キー値のペアとして示される) を更新して表示するには、次の手順を実行します。

   1. **[監査]** ページの左側のサイドバーで **[ドキュメント]** を選択します。

   1. 既存のキー値のペアが表示されます。

   1. キー値のペアを追加するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. **[Add]** (追加) を選択します。

      1. 新しいキーと関連する値を入力します。

      1.  モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

   1. キー値のペアを削除するには、次の手順を実行します。

      1. モデルバージョンページの右上隅にある縦三点リーダーをクリックして、**[編集]** を選択します。

      1. 削除するキー値のペアの横にある **[ゴミ箱]** アイコンをクリックします。

      1.  モデルバージョンページの上部にある **[モデルバージョンの編集...]** バナーで**[保存]** を選択します。

# デプロイ情報を更新する (Studio)
<a name="model-registry-details-studio-deploy"></a>

**重要**  
2023 年 11 月 30 日以降、従来の Amazon SageMaker Studio のエクスペリエンスは Amazon SageMaker Studio Classic と名前が変更されました。以下のセクションは、更新後の Studio のエクスペリエンスに沿った内容になっています。Studio Classic アプリケーションを使用する場合は、「[Amazon SageMaker Studio Classic](studio.md)」を参照してください。

モデルのパフォーマンスを評価し、本番環境のワークロードに使用する準備が整っていることを確認したら、モデルの承認ステータスを変更して、CI/CD デプロイを開始できます。承認ステータス定義の詳細については、「[モデルの承認ステータスを更新する](model-registry-approve.md)」を参照してください。

**モデルパッケージのデプロイに関連する詳細を表示または更新するには、次の手順を実行します。**

1. **[デプロイ]** タブで、モデルパッケージの承認ステータスを表示します。可能な値は次のとおりです。
   + **承認保留中**: モデルは登録されており、デプロイがまだ承認または拒否されていません。
   + **承認済み**: モデルは CI/CD デプロイについて承認されています。SageMaker AI プロジェクトテンプレートから構築されたモデルの場合と同様、モデル承認イベント時にモデルのデプロイを開始する EventBridge ルールが設定されている場合は、SageMaker AI もモデルをデプロイします。
   + **却下済み**: モデルのデプロイが拒否されています。

   承認ステータスを変更する必要がある場合は、ステータスの横にあるドロップダウンメニューをクリックして、更新されたステータスを選択します。

1. モデルパッケージの承認ステータスを更新するには、承認ステータスの横にあるドロップダウンをクリックして、更新された承認ステータスを選択します。

1. **[コンテナ]** リストで、推論イメージのコンテナを表示します。

1. **[インスタンス]** リストで、デプロイエンドポイントを構成するインスタンスを表示します。

# モデルバージョンを比較
<a name="model-registry-version-compare"></a>

モデルバージョンを生成するときに、関連するモデル品質メトリクスを並べて表示してモデルバージョンを比較する必要がある場合があります。例えば、平均二乗誤差 (MSE) の値を比較して精度を追跡したい場合や、特定の測定値ではパフォーマンスが低いモデルを削除したい場合があります。次の手順では、Amazon SageMaker Studio Classic コンソールを使用して Model Registry でモデルバージョンの比較を設定する方法を示します。

## モデルバージョンを比較する (Amazon SageMaker Studio Classic)
<a name="model-registry-version-compare-studio"></a>

**注記**  
Amazon SageMaker Studio Classic コンソールではモデルバージョンのみを比較できます。

モデルグループ内でモデルバージョンを比較するには、次の手順を実行します。

1. Studio Classic にサインインします。詳細については、「[Amazon SageMaker AI ドメインの概要](gs-studio-onboard.md)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. モデルグループのリストから、表示する Model Group の名前を選択します。新しいタブが開き、Model Group 内にあるモデルバージョンのリストが表示されます。

1. モデルバージョンのリストで、比較するモデルバージョンの横にあるチェックボックスをオンにします。

1. **[アクション]** ドロップダウンメニューを選択してから、**[比較]** を選択します。選択したモデルのモデル品質メトリクスのリストが表示されます。

# モデルグループタグとモデルバージョンタグを表示して管理する
<a name="model-registry-tags"></a>

Model Registry を使用すると、モデルグループに関連するタグを表示して管理できます。タグを使用し、モデルグループを目的、所有者、環境などの基準別に分類できます。次の手順では、Amazon SageMaker Studio コンソールでタグを表示、追加、削除、編集する方法について説明します。

**注記**  
SageMaker Model Registry のモデルパッケージはタグをサポートしていません。これらはバージョン管理されたモデルパッケージです。代わりに、`CustomerMetadataProperties` を使用してキーと値のペアを追加できます。モデルレジストリ内のモデルパッケージグループはタグ付けをサポートします。

## モデルグループタグを表示して管理する
<a name="model-registry-tags-model-group"></a>

------
#### [ Studio ]

**モデルグループタグを追加するには、次の手順を実行します。**

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. Model Group のリストから、表示する Model Group の名前を選択します。

1. [モデルグループ] ページで、**[タグ]** タブをクリックします。モデルグループに関連付けられているタグが表示されます。

**モデルグループタグを追加するには、次のステップを実行します。**

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. [モデルグループ] ページで、**[タグ]** タブをクリックします。

1. [**タグを追加/編集**] をクリックします。

1. **[\$1 新しいタグを追加]** の上で、空の **[キー]** フィールドに新しいキーを入力します。

1. (オプション) 空の **[値]** フィールドに新しい値を入力します。

1. **[Confirm changes]** (変更の確認) を選択します。

1. **[情報]** ページの **[タグ]** セクションに新しいタグが表示されることを確認します。

**モデルグループタグを削除するには、次のステップを実行します。**

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. [モデルグループ] ページで、**[タグ]** タブをクリックします。

1. [**タグを追加/編集**] をクリックします。

1. 削除するキー値のペアの横にある **[ゴミ箱]** アイコンをクリックします。

1. **[Confirm changes]** (変更の確認) を選択します。

**モデルグループタグを編集するには、次のステップを実行します。**

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. [モデルグループ] ページで、**[タグ]** タブをクリックします。

1. [**タグを追加/編集**] をクリックします。

1. 編集するキーペアの **[値]** フィールドに新しい値を入力します。

1. **[Confirm changes]** (変更の確認) を選択します。

------
#### [ Studio Classic ]

**モデルグループタグを追加するには、次の手順を実行します。**

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. **[情報]** を選択します。

1. **[情報]** ページの **[タグ]** セクションでタグを表示します。

**モデルグループタグを追加するには、次のステップを実行します。**

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Amazon SageMaker AI ドメインの概要](gs-studio-onboard.md)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. **[情報]** を選択します。

1. タグがない場合は、**[タグを追加]** を選択します。

1. 既存のタグがある場合は、**[タグ]** セクションの **[タグの管理]** を選択します。モデルグループのタグのリストは、キーと値のペアとして表示されます。

1. **[新しいタグを追加]** の上にある、空の **[キー]** フィールドに新しいキーを入力します。

1. (オプション) 空の **[値]** フィールドに新しい値を入力します。

1. **[Confirm changes]** (変更の確認) を選択します。

1. **[情報]** ページの **[タグ]** セクションに新しいタグが表示されることを確認します。

**モデルグループタグを削除するには、次のステップを実行します。**

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Amazon SageMaker AI ドメインの概要](gs-studio-onboard.md)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. **[情報]** を選択します。

1. **[タグ]** セクションで、**[タグを管理]** を選択します。モデルグループのタグのリストは、キーと値のペアとして表示されます。

1. 削除するタグの右にある **[ゴミ箱]** アイコンを選択します。

1. **[Confirm changes]** (変更の確認) を選択します。

1. 削除したタグが **[情報]** ページの **[タグ]** セクションに表示されていないことを確認します。

**モデルグループタグを編集するには、次のステップを実行します。**

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Amazon SageMaker AI ドメインの概要](gs-studio-onboard.md)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. Model Group リストから、編集する Model Group の名前を選択します。

1. **[情報]** を選択します。

1. **[タグ]** セクションで、**[タグを管理]** を選択します。モデルグループのタグのリストは、キーと値のペアとして表示されます。

1. 任意のキーまたは値を編集します。

1. **[Confirm changes]** (変更の確認) を選択します。

1. **[情報]** ページの **[タグ]** セクションで、タグに編集内容が含まれていることを確認します。

**モデルグループをプロジェクトに割り当てたり、タグ付けしたりするには、次の手順を実行します。**

1. [ListTags](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListTags.html) API を使用して、SageMaker AI プロジェクトのキー `sagemaker:project-name` と `sagemaker:project-id` を持つタグを取得します。

1. タグをモデルパッケージグループに適用するには、次のいずれかの方法を選択します。
   + 新しいモデルパッケージグループを作成し、タグを追加する場合は、ステップ 1 のタグを [CreateModelPackageGroup](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackageGroup.html) API に渡します。
   + 既存のモデルパッケージグループにタグを追加する場合は、[AddTags](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_AddTags.html) API を使用します。
   + Pipelines を使用してモデルパッケージグループを作成する場合は、`pipeline.create()` メソッドまたは `pipeline.upsert()` メソッドを使用するか、タグを [RegisterModel](https://docs.aws.amazon.com/sagemaker/latest/dg/build-and-manage-steps.html#step-type-register-model) ステップに渡します。

------

# モデルバージョンの削除
<a name="model-registry-delete-model-version"></a>

この手順では、Amazon SageMaker Studio コンソールでモデルグループを削除する方法について説明します。

## モデルのバージョンを削除する (Studio または Studio Classic)
<a name="model-registry-delete-model-version-studio"></a>

Amazon SageMaker Studio コンソールでモデルのバージョンを削除するには、Studio と Studio Classic のどちらを使用しているかに応じて、以下の手順を実行します。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. モデルグループのリストから、表示するモデルグループの左側にある山括弧を選択します。

1. モデルグループ内のモデルバージョンが一覧表示されます。削除するモデルバージョンが表示されていない場合は、**[すべて表示]** を選択します。

1. 削除するモデルバージョンの横にあるチェックボックスをオンにします。

1. テーブルの右上隅にある縦三点リーダーをクリックして、**[削除]** (モデルグループの詳細ページの場合は **[モデルバージョンの削除]**) を選択します。

1. **[モデルバージョンを削除]** ダイアログボックスで、**[はい、モデルバージョンを削除します]** を選択します。

1. **[削除]** を選択します。

1. 削除したモデルバージョンがモデルグループに表示されなくなったことを確認します。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。Model Group のリストが表示されます。

1. モデルグループのリストから、削除するモデルバージョンのモデルグループの名前を選択します。

1. モデルバージョンのリストから、削除するモデルバージョンの名前を選択します。

1. **[アクション]** ドロップダウンメニューから **[削除]** を選択します。

1. 確認ダイアログで、[`REMOVE`] を選択します。

1. **[**を削除] を選択します。

1. 削除したモデルバージョンが、モデルグループのモデルバージョンのリストに表示されていないことを確認します。

------

# モデルライフサイクルのステージング構造
<a name="model-registry-staging-construct"></a>

モデルレジストリのステージング構造を使用すると、モデルのワークフローとライフサイクルで、モデルが進行する一連のステージを定義できます。これにより、開発環境、テスト環境、本番環境の各ステージを移行する際のモデルの追跡と管理が簡素化されます。以下では、ステージング構造と、モデルガバナンスでの活用方法について説明します。

ステージ構造を使用すると、モデルが進行する一連のステージとステータスを定義できます。各ステージでは、関連するアクセス許可を持つ特定のペルソナがステージステータスを更新できます。モデルがステージを進むにつれて、メタデータが引き継がれ、モデルのライフサイクルを包括的に把握できるようになります。このメタデータは、各ステージで承認されたペルソナがアクセスしてレビューできるため、情報に基づいた意思決定が可能になります。これには以下の利点があります。
+ モデルライフサイクルのアクセス許可 - 指定されたペルソナに、モデルステージの状態を更新し、重要な移行ポイントで承認ゲートを適用するためのアクセス許可を設定します。管理者は、API で IAM ポリシーと条件キーを使用してアクセス許可を割り当てることができます。例えば、データサイエンティストがモデルライフサイクルステージの移行を「開発環境」から「本番環境」に更新できないように制限できます。例については「[ステージング構造の設定例](model-registry-staging-construct-set-up.md)」を参照してください。
+ Amazon EventBridge 経由のモデルライフサイクルイベント - EventBridge を使用してライフサイクルステージイベントを利用できます。これにより、モデルが承認されたりステージング状態が変更されたりした場合にイベント通知を受信できるようになり、サードパーティーのガバナンスツールと統合できるようになります。例については、「[ModelLifeCycle のイベント通知を取得する](model-registry-staging-construct-event-bridge.md)」を参照してください。
+ モデルライフサイクルフィールドに基づく検索 - [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Search.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Search.html) API を使用して、ステージとステージのステータスを検索してフィルタリングできます。
+ モデルライフサイクルイベントの監査証跡 - モデルライフサイクルの遷移でのモデル承認イベントとステージングイベントの履歴を表示できます。

以下のトピックでは、管理者側でステージ構造を設定する方法と、ユーザー側からステージステータスを更新する方法について説明します。

**Topics**
+ [ステージング構造の設定例](model-registry-staging-construct-set-up.md)
+ [Studio でモデルパッケージのステージとステータスを更新する](model-registry-staging-construct-update-studio.md)
+ [モデルパッケージのステージとステータスを更新する例 (boto3)](model-registry-staging-construct-update-boto3.md)
+ [AWS CLI サンプルを使用して ModelLifeCycle を呼び出す](model-registry-staging-construct-cli.md)
+ [ModelLifeCycle のイベント通知を取得する](model-registry-staging-construct-event-bridge.md)

# ステージング構造の設定例
<a name="model-registry-staging-construct-set-up"></a>

Amazon SageMaker モデルレジストリのステージ構造を設定するには、管理者が対象ロールに適切なアクセス許可を付与する必要があります。さまざまなロールのステージ構造を設定する方法の例は、以下のとおりです。

**注記**  
Amazon SageMaker AI ドメイン内のユーザーは、ドメイン内で定義されたすべてのステージを表示できますが、使用できるのはアクセス許可が付与されているステージのみです。

ステージは `ModelLifeCycle` パラメータで定義され、次の構造になっています。管理者は、どの`stage`と`stageStatus`にどのロールがアクセスできるかのアクセス許可を設定します。ロールを引き受けるユーザーは、関連する `stage`と`stageStatus`を使用して、独自の`stageDescription`を含めることができます。

```
ModelLifeCycle {
    stage: String # Required (e.g., Development/QA/Production)
    stageStatus: String # Required (e.g., PendingApproval/Approved/Rejected)  
    stageDescription: String # Optional
}
```

モデルレジストリの事前定義されたステージ構造テンプレートは次の表のとおりです。ユースケースに応じて独自のステージ構造を定義できます。関連するアクセス許可は、ユーザーが使用する前に設定する必要があります。


| ステージ | ステージのステータス | 
| --- | --- | 
|  提案  |  PendingApproval  | 
|  開発  |  InProgress  | 
|  QA  |  OnHold  | 
|  PreProd  |  APPROVED  | 
|  本番稼働  |  拒否  | 
|  アーカイブ済み  |  使用停止  | 

`ModelLifeCycle` パラメータは、次の API で呼び出すことができます。
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html)
+ [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeModelPackage.html)

------
#### [ Policy for a data scientist role ]

以下は、モデルライフサイクル条件キーを使用する IAM ポリシーの例です。これらは独自の要件に基づいて変更できます。この例では、ロールのアクセス許可は、モデルライフサイクルステージを次のように設定または定義するように制限されています。
+ `"Development"`ステージと `"Approved"`ステータスでモデルを作成または更新します。
+ `"QA"` ステージ、`"PendingApproval"`ステータスでモデルパッケージを更新します。

```
{
    "Action" : [
        "sagemaker:UpdateModelPackage",
        "sagemaker:CreateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Development"
            "sagemaker:ModelLifeCycle:stageStatus" : "Approved"       
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Staging"
            "sagemaker:ModelLifeCycle:stageStatus" : "PendingApproval"       
        }
    }
}
```

------
#### [ Policy for a quality assurance specialist ]

以下は、モデルライフサイクル条件キーを使用する IAM ポリシーの例です。これらは独自の要件に基づいて変更できます。この例では、ロールのアクセス許可は、モデルライフサイクルステージを次のように設定または定義するように制限されています。
+ 以下を使用してパッケージを更新します。
  + `"QA"` ステージと`"Approved"`ステータスまたは`"Rejected"`ステータス。
  + `"Production"`ステージと`"PendingApproval"`ステータス。

```
{
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Staging",
            "sagemaker:ModelLifeCycle:stageStatus": "Approved"
        }
    }
}, {
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Staging",
            "sagemaker:ModelLifeCycle:stageStatus": "Rejected"
        }
    }
}, {
    "Action": [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage": "Production",
            "sagemaker:ModelLifeCycle:stageStatus": "PendingApproval"
        }
    }
}
```

------
#### [ Policy for lead engineer role ]

以下は、モデルライフサイクル条件キーを使用する IAM ポリシーの例です。これらは独自の要件に基づいて変更できます。この例では、ロールのアクセス許可は、モデルライフサイクルステージを次のように設定または定義するように制限されています。
+ 以下を使用してパッケージを更新します。
  + `"Production"` ステージと`"Approved"`ステータスまたは`"Rejected"`ステータス。
  + `"Development"`ステージと`"PendingApproval"`ステータス。

```
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "ForAnyvalue:StringEquals" : {
            "sagemaker:ModelLifeCycle:stage" : "Production",
            "sagemaker:ModelLifeCycle:stageStatus" : "Approved"
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals:" {
            "sagemaker:ModelLifeCycle:stage" : "Production"
            "sagemaker:ModelLifeCycle:stageStatus" : "Rejected"
        }
    }
},
{
    "Action" : [
        "sagemaker:UpdateModelPackage"
    ],
    "Resource": [
        "*"
    ],
    "Condition": {
        "StringEquals": {
            "sagemaker:ModelLifeCycle:stage" : "Development"
            "sagemaker:ModelLifeCycle:stageStatus" : "PendingApproval"
        }
    }
}
```

------

モデルステータスの更新に関する Amazon EventBridge 通知を取得するには、「[ModelLifeCycle のイベント通知を取得する](model-registry-staging-construct-event-bridge.md)」の例を参照してください。受信する EventBridge ペイロードの例については、「[SageMaker モデルパッケージの状態変更](automating-sagemaker-with-eventbridge.md#eventbridge-model-package)」を参照してください。

# Studio でモデルパッケージのステージとステータスを更新する
<a name="model-registry-staging-construct-update-studio"></a>

モデルパッケージのステージ構造を使用するには、適切なアクセス許可を持つ実行ロールを引き受ける必要があります 次のページでは、Amazon SageMaker Studio を使用してステージのステータスを更新する方法について説明します。

ドメインで定義されたすべてのステージ構造は、すべてのユーザーが表示できます。ステージを更新するには、関連するアクセス許可を管理者が設定する必要があります。方法については、「[ステージング構造の設定例](model-registry-staging-construct-set-up.md)」を参照してください。

次の手順では、Studio UI に移動して、モデルパッケージのステージを更新します。

1. Amazon SageMaker Studio にサインインします。詳細については、「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」を参照してください。

1. 左側のナビゲーションペインで、**[モデル]** を選択します。

1. モデルを探します。
   + タブを使用してモデルを検索できます。例えば、**[登録済みモデル]** タブまたは **[デプロイ可能なモデル]** タブを選択します。
   + **[マイモデル]** オプションや **[自分と共有]** オプションを使用して、作成したモデルまたは共有されているモデルを検索できます。

1. 更新するモデルの横にあるチェックボックスをオンにします。

1. **[その他のオプション]** アイコンをクリックします。

1. **[モデルライフサイクルを更新]** をクリックします。これにより、**[モデルライフサイクルの更新]** セクションに移動します。

1. タスクを完了してステージを更新します。

   ステージを更新できない場合は、エラーが表示されます。これを実行するには、管理者がアクセス許可を設定する必要があります。アクセス許可を設定する方法の詳細については、「[ステージング構造の設定例](model-registry-staging-construct-set-up.md)」を参照してください。

# モデルパッケージのステージとステータスを更新する例 (boto3)
<a name="model-registry-staging-construct-update-boto3"></a>

モデルパッケージのステージとステータスを更新するには、適切なアクセス許可を持つ実行ロールを引き受ける必要があります 以下は、 AWS SDK for Python (Boto3)を使用して [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html) API でステージステータスを更新する方法の例を説明しています。

この例では、[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateModelPackage.html) APIアクションの `ModelLifeCycle` ステージである `"Development"`条件キーとステージステータスである`"Approved"`条件キーが実行ロールに付与されています。`stage-description`に説明を追加することができます。詳細については「[ステージング構造の設定例](model-registry-staging-construct-set-up.md)」を参照してください。

```
from sagemaker import get_execution_role, session 
import boto3 

region = boto3.Session().region_name role = get_execution_role() 
sm_client = boto3.client('sagemaker', region_name=region)

model_package_update_input_dict = {
    "ModelLifeCycle" : { 
        "stage" : "Development",
        "stageStatus" : "Approved",
        "stageDescription" : "stage-description"
    }
} 
model_package_update_response = sm_client.update_model_package(**model_package_update_input_dict)
```

# AWS CLI サンプルを使用して ModelLifeCycle を呼び出す
<a name="model-registry-staging-construct-cli"></a>

ツールを使用して AWS CLI AWS リソースを管理できます。 AWS CLI コマンドには、[search](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudsearchdomain/search.html) や [list-actions](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/fis/list-actions.html) などがあります。次のページでは、これらのコマンドの使用時に `ModelPackage` を使用する方法の例を示します。ステージ構造の設定に関する情報と例については、「[ステージング構造の設定例](model-registry-staging-construct-set-up.md)」を参照してください。

このページの例では、以下の変数を使用しています。
+ `region` は、モデルパッケージが配置されたリージョンです。
+ `stage-name` は、定義済みのステージの名前です。
+ `stage-status` は、定義済みのステージステータスの名前です。

ModelLifeCycle を使用した AWS CLI コマンドの例を次に示します。

定義済みの *[ステージ名]* でモデルパッケージを検索します。

```
aws sagemaker search --region 'region' --resource ModelPackage --search-expression '{"Filters": [{"Name": "ModelLifeCycle.Stage","Value": "stage-name"}]}'
```

`ModelLifeCycle` に関連付けられたアクションのリスト

```
aws sagemaker list-actions --region 'region' --action-type ModelLifeCycle
```

ModelLifeCycle を使用してモデルパッケージを作成する

```
aws sagemaker create-model-package --model-package-group-name 'model-package-group-name' --source-uri 'source-uri' --region 'region' --model-life-cycle '{"Stage":"stage-name", "StageStatus":"stage-status", "StageDescription":"Your Staging Comment"}' 
```

ModelLifeCycle を使用してモデルパッケージを更新します。

```
aws sagemaker update-model-package --model-package 'model-package-arn' --region 'region' --model-life-cycle '{"Stage":"stage-name", "StageStatus":"stage-status"}' 
```

ModelLifeCycle フィールドで検索します。

```
aws sagemaker search --region 'region' --resource ModelPackage --search-expression '{"Filters": [{"Name": "ModelLifeCycle.Stage","Value": "stage-name"}]}'
```

[Amazon SageMaker ML 系統追跡](lineage-tracking.md) API を使用して ModelLifeField 更新の監査レコードを取得します。

```
aws sagemaker list-actions --region 'region' --action-type ModelLifeCycle
```

```
aws sagemaker describe-action --region 'region' --action-name 'action-arn or action-name'
```

# ModelLifeCycle のイベント通知を取得する
<a name="model-registry-staging-construct-event-bridge"></a>

アカウントで EventBridge を使用して ModelLifeCycle 更新通知とイベントを取得できます。以下は、ModelLifeCycle イベント通知を取得するためにアカウントで設定する EventBridge ルールの例です。

```
{
  "source": ["aws.sagemaker"],
  "detail-type": ["SageMaker Model Package State Change"]
}
```

受信する EventBridge ペイロードの例については、「[SageMaker モデルパッケージの状態変更](automating-sagemaker-with-eventbridge.md#eventbridge-model-package)」を参照してください。

# モデルの承認ステータスを更新する
<a name="model-registry-approve"></a>

通常、モデルバージョンを作成したら、本稼働エンドポイントにデプロイする前に、そのパフォーマンスを評価する必要があります。そのパフォーマンスが要件を満たさない場合は、承認ステータスを `Approved` に更新します。`Approved` にステータスを設定すると、モデルの CI/CD デプロイを開始できます。モデルバージョンのパフォーマンスが要件を満たさない場合は、承認ステータスを `Rejected` に更新します。

モデルバージョンの登録後に承認ステータスを手動で更新するか、SageMaker AI パイプラインの作成時にモデルを評価する条件ステップを作成することができます。SageMaker AI パイプラインで条件ステップを作成する方法については、「[Pipelines のステップ](build-and-manage-steps.md)」を参照してください。

SageMaker AI が提供するプロジェクトテンプレートのいずれかを使用し、モデルバージョンの承認ステータスが変更されると、次のアクションが発生します。(有効な遷移のみを表示しています)。
+ `PendingManualApproval` から `Approved` - 承認されたモデルバージョンの CI/CD デプロイを開始する
+ `PendingManualApproval` から `Rejected` — アクションなし
+ `Rejected` から `Approved` - 承認されたモデルバージョンの CI/CD デプロイを開始する
+ `Approved` から `Rejected` — ステータスが `Approved` になっている最新のモデルバージョンの CI/CD デプロイを開始します。

モデルバージョンの承認ステータスを更新するには、 AWS SDK for Python (Boto3) を使用するか、Amazon SageMaker Studio コンソールを使用します。SageMaker AI パイプラインの条件ステップの一部として、モデルバージョンの承認ステータスを更新することもできます。SageMaker AI パイプラインでモデル承認ステップを使用する方法については、「[Pipelines の概要](pipelines-overview.md)」を参照してください。

## モデルの承認ステータスを更新する (Boto3)
<a name="model-registry-approve-api"></a>

[モデルバージョンを登録する](model-registry-version.md) でモデルバージョンを作成した際、`ModelApprovalStatus` は `PendingManualApproval` に設定されます。このモデルの承認ステータスを更新するには、`update_model_package` を呼び出します。このプロセスを自動化するには、モデルのパフォーマンス指標の評価結果に応じてモデルの承認ステータスを設定する、などのようなコードを記述します。また、新しいモデルバージョンが承認されるとそのモデルバージョンを自動的にデプロイするステップをパイプライン内に作成できます。次のコードスニペットは、承認ステータスを `Approved` に手動で変更する方法を示しています。

```
model_package_update_input_dict = {
    "ModelPackageArn" : model_package_arn,
    "ModelApprovalStatus" : "Approved"
}
model_package_update_response = sm_client.update_model_package(**model_package_update_input_dict)
```

## モデルの承認ステータスを更新する (Studio または Studio Classic)
<a name="model-registry-approve-studio"></a>

Amazon SageMaker Studio コンソールで承認ステータスを手動で変更するには、Studio または Studio Classic のどちらを使用しているかに応じて、次の手順を実行します。

------
#### [ Studio ]

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. モデルグループのリストから、表示するモデルグループの左側にある山括弧を選択します。

1. モデルグループ内のモデルバージョンが一覧表示されます。削除するモデルバージョンが表示されていない場合は、**[すべて表示]** を選択して、モデルグループの詳細ページにモデルバージョンの完全なリストを表示します。

1. 更新するモデルバージョンの名前を選択します。

1. **[デプロイ]** タブに、現在の承認ステータスが表示されます。現在の承認ステータスの横にあるドロップダウンメニューをクリックして、更新された承認ステータスを選択します。

------
#### [ Studio Classic ]

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. Model Group のリストから、表示する Model Group の名前を選択します。新しいタブが開き、Model Group 内にあるモデルバージョンのリストが表示されます。

1. モデルバージョンのリストで、更新するモデルバージョンの名前を選択します。

1. **[アクション]** ドロップダウンメニューでは、2 つのメニューオプションのいずれかを選択して、モデルバージョンステータスを更新できます。
   + **[ステータスを更新]** オプションを使用する

     1. **[アクション]** ドロップダウンメニューで **[ステータスを更新]** ドロップダウンメニューを選択し、新しいモデルバージョンステータスを選択します。

     1. (オプション) **[コメント]** フィールドに、さらに詳細を追加します。

     1. **[保存して更新]** を選択します。
   + **[編集]** オプションを使用する

     1. **[アクション]** ドロップダウンメニューから、**[編集]** を選択します。

     1. (オプション) **[コメント]** フィールドに、さらに詳細を追加します。

     1. **[Save changes]** (変更の保存) をクリックします。

1. モデルバージョンページで、モデルバージョンステータスが正しい値に更新されたことを確認します。

------

`us-east-1`、、`us-west-2`、`ap-northeast-1`および `eu-west-1`リージョンの場合、次の手順を使用して、ログに記録されたモデルバージョンと登録されたモデルバージョンの系統の詳細にアクセスできます。

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. ログに記録された**モデル**タブを選択し、まだ選択されていない場合は登録**済みモデル**を選択します。

1. モデルを選択し、**最新バージョンの表示**を選択します。

1. **ガバナンス**タブを選択します。

1. **ガバナンスの概要**の**デプロイ**セクションには、現在の承認ステータスが表示されます。ドロップダウンメニューから更新された承認ステータスを選択します。

# Python を使用してレジストリからモデルをデプロイする
<a name="model-registry-deploy"></a>

モデルバージョンを登録し、デプロイを承認したら、SageMaker AI エンドポイントにデプロイしてリアルタイム推論を実行します。モデルは、SageMaker AI SDK または AWS SDK for Python (Boto3)を使用してデプロイできます。

機械学習オペレーション (MLOps) プロジェクトを作成して、モデルのデプロイを含む MLOps プロジェクトテンプレートを選択すると、Model Registry 内の承認済みのモデルバージョンが自動的に本番環境にデプロイされます。SageMaker AI MLOps プロジェクトの使用方法については、「[SageMaker プロジェクトを使用した MLOps の自動化](sagemaker-projects.md)」を参照してください。

クロスアカウントリソースポリシーを追加することで AWS 、アカウントが別のアカウントで作成されたモデルバージョンをデプロイできるようにすることもできます。例えば、組織のあるチームがモデルのトレーニングを担当し、別のチームがモデルのデプロイと更新を担当する場合があります。

**Topics**
+ [レジストリからモデルをデプロイする (SageMaker SDK)](#model-registry-deploy-smsdk)
+ [レジストリからモデルをデプロイする (Boto3)](#model-registry-deploy-api)
+ [別のアカウントからモデルバージョンをデプロイする](#model-registry-deploy-xaccount)

## レジストリからモデルをデプロイする (SageMaker SDK)
<a name="model-registry-deploy-smsdk"></a>

[Amazon SageMaker Python SDK](https://sagemaker.readthedocs.io/en/stable) を使用してモデルバージョンをデプロイするには、次のコードスニペットを使います。

```
from sagemaker import ModelPackage
from time import gmtime, strftime

model_package_arn = 'arn:aws:sagemaker:us-east-2:12345678901:model-package/modeltest/1'
model = ModelPackage(role=role, 
                     model_package_arn=model_package_arn, 
                     sagemaker_session=sagemaker_session)
model.deploy(initial_instance_count=1, instance_type='ml.m5.xlarge')
```

## レジストリからモデルをデプロイする (Boto3)
<a name="model-registry-deploy-api"></a>

を使用してモデルバージョンをデプロイするには AWS SDK for Python (Boto3)、次の手順を実行します。

1. 次のコードスニペットは、SageMaker AI Boto3 クライアント `sm_client` と、`model_version_arn` 変数に ARN が保存されているモデルバージョンが既に作成されていることを前提としています。

   [create\$1model](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker.html#SageMaker.Client.create_model) API オペレーションを呼び出して、モデルバージョンからモデルオブジェクトを作成します。モデルバージョンの Amazon リソースネーム (ARN) をモデルオブジェクトの `Containers` の一部として渡します。

   ```
   model_name = 'DEMO-modelregistry-model-' + strftime("%Y-%m-%d-%H-%M-%S", gmtime())
   print("Model name : {}".format(model_name))
   container_list = [{'ModelPackageName': model_version_arn}]
   
   create_model_response = sm_client.create_model(
       ModelName = model_name,
       ExecutionRoleArn = role,
       Containers = container_list
   )
   print("Model arn : {}".format(create_model_response["ModelArn"]))
   ```

1. `create_endpoint_config` を呼び出して、エンドポイント設定を作成します。このエンドポイント設定は、エンドポイントに使用する Amazon EC2 インスタンスの数とタイプを指定します。

   ```
   endpoint_config_name = 'DEMO-modelregistry-EndpointConfig-' + strftime("%Y-%m-%d-%H-%M-%S", gmtime())
   print(endpoint_config_name)
   create_endpoint_config_response = sm_client.create_endpoint_config(
       EndpointConfigName = endpoint_config_name,
       ProductionVariants=[{
           'InstanceType':'ml.m4.xlarge',
           'InitialVariantWeight':1,
           'InitialInstanceCount':1,
           'ModelName':model_name,
           'VariantName':'AllTraffic'}])
   ```

1. `create_endpoint` を呼び出してエンドポイントを作成します。

   ```
   endpoint_name = 'DEMO-modelregistry-endpoint-' + strftime("%Y-%m-%d-%H-%M-%S", gmtime())
   print("EndpointName={}".format(endpoint_name))
   
   create_endpoint_response = sm_client.create_endpoint(
       EndpointName=endpoint_name,
       EndpointConfigName=endpoint_config_name)
   print(create_endpoint_response['EndpointArn'])
   ```

## 別のアカウントからモデルバージョンをデプロイする
<a name="model-registry-deploy-xaccount"></a>

クロスアカウントリソースポリシーを追加することで、アカウントが別のアカウントで作成されたモデルバージョンをデプロイ AWS することを許可できます。例えば、組織のあるチームがモデルのトレーニングを担当し、別のチームがモデルのデプロイと更新を担当する場合があります。このようなリソースポリシーを作成するときは、アクセスを許可する特定のリソースにポリシーを適用します。のクロスアカウントリソースポリシーの詳細については AWS、*AWS Identity and Access Management 「 ユーザーガイド*」の[「クロスアカウントポリシーの評価ロジック](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_evaluation-logic-cross-account.html)」を参照してください。

**注記**  
アカウントをまたいだモデルデプロイメントのトレーニング中には、KMS キーを使用して[出力データ設定](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_OutputDataConfig.html)アクションを暗号化する必要があります。

SageMaker AI でクロスアカウントモデルのデプロイを有効にするには、Model Group のクロスアカウントリソースポリシーを指定する必要があります。このポリシーには、デプロイするモデルバージョン、Model Group の推論イメージが存在する Amazon ECR リポジトリ、モデルバージョンが保存されている Amazon S3 バケットが含まれている必要があります。

別のアカウントで作成されたモデルをデプロイするには、`AmazonSageMakerFullAccess` マネージドポリシーがあるロールなど、SageMaker AI アクションへのアクセスを持つロールが必要です。SageMaker AI のマネージドポリシーの詳細については、「[AWS Amazon SageMaker AI の マネージドポリシー](security-iam-awsmanpol.md)」を参照してください。

次の例では、これらの 3 つのリソースすべてに対してクロスアカウントポリシーを作成し、そのポリシーをリソースに適用します。この例では、次の変数が既に定義済みであることも前提としています。
+ `bucket` – モデルバージョンが保存される Amazon S3 バケット
+ `kms_key_id` – トレーニング出力の暗号化に使用される KMS キー
+ `sm_client` – SageMaker AI Boto3 クライアント
+ `model_package_group_name` – クロスアカウントアクセスを許可するモデルグループ
+ `model_package_group_arn` – クロスアカウントアクセスを付与するモデルグループの ARN

```
import json

# The cross-account id to grant access to
cross_account_id = "123456789012"

# Create the policy for access to the ECR repository
ecr_repository_policy = {
    'Version': '2012-10-17		 	 	 ',
    'Statement': [{
        'Sid': 'AddPerm',
        'Effect': 'Allow',
        'Principal': {
            'AWS': f'arn:aws:iam::{cross_account_id}:root'
        },
        'Action': ['ecr:*']
    }]
}

# Convert the ECR policy from JSON dict to string
ecr_repository_policy = json.dumps(ecr_repository_policy)

# Set the new ECR policy
ecr = boto3.client('ecr')
response = ecr.set_repository_policy(
    registryId = account,
    repositoryName = 'decision-trees-sample',
    policyText = ecr_repository_policy
)

# Create a policy for accessing the S3 bucket
bucket_policy = {
    'Version': '2012-10-17		 	 	 ',
    'Statement': [{
        'Sid': 'AddPerm',
        'Effect': 'Allow',
        'Principal': {
            'AWS': f'arn:aws:iam::{cross_account_id}:root'
        },
        'Action': 's3:*',
        'Resource': f'arn:aws:s3:::{bucket}/*'
    }]
}

# Convert the policy from JSON dict to string
bucket_policy = json.dumps(bucket_policy)

# Set the new policy
s3 = boto3.client('s3')
response = s3.put_bucket_policy(
    Bucket = bucket,
    Policy = bucket_policy)

# Create the KMS grant for encryption in the source account to the
# Model Registry account Model Group
client = boto3.client('kms')

response = client.create_grant(
    GranteePrincipal=cross_account_id,
    KeyId=kms_key_id
    Operations=[
        'Decrypt',
        'GenerateDataKey',
    ],
)

# 3. Create a policy for access to the Model Group.
model_package_group_policy = {
    'Version': '2012-10-17		 	 	 ',
    'Statement': [{
        'Sid': 'AddPermModelPackageGroup',
        'Effect': 'Allow',
        'Principal': {
            'AWS': f'arn:aws:iam::{cross_account_id}:root'
        },
        'Action': ['sagemaker:DescribeModelPackageGroup'],
        'Resource': f'arn:aws:sagemaker:{region}:{account}:model-package-group/{model_package_group_name}'
    },{
        'Sid': 'AddPermModelPackageVersion',
        'Effect': 'Allow',
        'Principal': {
            'AWS': f'arn:aws:iam::{cross_account_id}:root'
        },
        'Action': ["sagemaker:DescribeModelPackage",
                   "sagemaker:ListModelPackages",
                   "sagemaker:UpdateModelPackage",
                   "sagemaker:CreateModel"],
        'Resource': f'arn:aws:sagemaker:{region}:{account}:model-package/{model_package_group_name}/*'
    }]
}

# Convert the policy from JSON dict to string
model_package_group_policy = json.dumps(model_package_group_policy)

# Set the policy to the Model Group
response = sm_client.put_model_package_group_policy(
    ModelPackageGroupName = model_package_group_name,
    ResourcePolicy = model_package_group_policy)

print('ModelPackageGroupArn : {}'.format(create_model_package_group_response['ModelPackageGroupArn']))
print("First Versioned ModelPackageArn: " + model_package_arn)
print("Second Versioned ModelPackageArn: " + model_package_arn2)

print("Success! You are all set to proceed for cross-account deployment.")
```

# Studio でモデルをデプロイする
<a name="model-registry-deploy-studio"></a>

モデルバージョンを登録し、デプロイを承認したら、Amazon SageMaker AI エンドポイントにデプロイしてリアルタイム推論を実行します。[Python を使用してレジストリからモデルをデプロイする](model-registry-deploy.md) を使用してレジストリからモデルをデプロイすることも、Amazon SageMaker Studio でモデルをデプロイすることもできます。Studio でモデルをデプロイする手順は、次のとおりです。

この機能は、Amazon SageMaker Studio Classic では利用できません。
+ Studio がデフォルトエクスペリエンスである場合、UI は「[Amazon SageMaker Studio の UI の概要](studio-updated-ui.md)」の画像のようになります。
+ Studio Classic がデフォルトのエクスペリエンスである場合、UI は「[Amazon SageMaker Studio Classic の UI の概要](studio-ui.md)」の画像のようになります。

モデルパッケージをデプロイする前に、モデルパッケージで次の要件を満たす必要があります。
+ 有効な推論仕様が利用できるようになっています。詳細については、「[InferenceSpecification](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html#sagemaker-CreateModelPackage-request-InferenceSpecification)」を参照してください。
+ 承認済みステータスのモデルです。詳細については「[モデルの承認ステータスを更新する](model-registry-approve.md)」を参照してください。

Studio でモデルをデプロイする手順は、次のとおりです。

**Studio でモデルをデプロイするには**

1. 「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」の手順に従って、Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. (オプション) 共有されているモデルがある場合は、**[自分のモデル]** または **[自分と共有]** を選択できます。

1. 登録済みモデルのチェックボックスをオンにします。上記の要件が満たされると、**[デプロイ]** ボタンがクリックできるようになります。

1. **[デプロイ]** をクリックして、**[モデルをエンドポイントにデプロイ]** ページを開きます。

1. **[エンドポイント設定]** でデプロイリソースを設定します。

1. 設定内容を検証したら、**[デプロイ]** をクリックします。これで、モデルは **[実行中]** ステータスとなり、エンドポイントにデプロイされます。

`us-east-1`、`us-west-2`、、`ap-northeast-1`および `eu-west-1`リージョンでは、以下の手順に従ってモデルをデプロイできます。

**Studio でモデルをデプロイするには**

1. 「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」の手順に従って、Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. **マイモデル**タブを選択します。

1. まだ選択されていない場合は、ログに記録された**モデル**タブを選択します。

1. モデルを選択し、**最新バージョンの表示**を選択します。

1. **デプロイ**を選択し、SageMaker AI または Amazon Bedrock を選択します。

1. 設定内容を検証したら、**[デプロイ]** をクリックします。これで、モデルは **[実行中]** ステータスとなり、エンドポイントにデプロイされます。

# クロスアカウントの検出可能性
<a name="model-registry-ram"></a>

データサイエンティストとデータエンジニアは、他のアカウントに登録されているモデルパッケージグループを探索してアクセスすることで、データ整合性の促進、コラボレーションの効率化、作業の重複の低減につなげることができます。Amazon SageMaker Model Registry を使用すると、アカウント間でモデルパッケージグループを共有できます。リソースの共有に関連するアクセス許可には、次の 2 つのカテゴリがあります。
+ **検出可能性**: *検出可能性*とは、リソースコンシューマーアカウントが、単一または複数のリソース所有者アカウントによって共有されているモデルパッケージグループを表示できることを指します。検出可能性は、リソース所有者が共有されているモデルパッケージグループに必要なリソースポリシーをアタッチした場合にのみ実現します。リソースコンシューマーは、UI および AWS RAM ですべての共有モデルパッケージグループを表示できます AWS CLI。
+ **アクセシビリティ**: *アクセシビリティ*とは、リソースコンシューマーアカウントが共有されたモデルパッケージグループを使用できることを指します。例えば、必要なアクセス許可が付与されていると、リソースコンシューマーは別のアカウントからモデルパッケージを登録したりデプロイしたりできます。

**Topics**
+ [Studio でモデルグループを共有する](model-registry-ram-studio-share.md)
+ [Studio で共有モデルグループを表示する](model-registry-ram-studio-view.md)
+ [Accessibility](model-registry-ram-accessibility.md)
+ [検出可能性を設定する](model-registry-ram-discover.md)
+ [共有モデルパッケージグループを表示する](model-registry-ram-view-shared.md)
+ [リソース共有からプリンシパルの関連付けを解除してリソース共有を削除する](model-registry-ram-dissociate.md)
+ [アクセス許可とリソース共有を昇格する](model-registry-ram-promote.md)

# Studio でモデルグループを共有する
<a name="model-registry-ram-studio-share"></a>

Studio UI を使用して、モデルグループを他の AWS プリンシパル (AWS アカウント または AWS Organizations) と共有できます。この合理化された共有プロセスは、チーム間のコラボレーションの実現、ベストプラクティスの促進、チーム全体での容易なモデルの再利用につながります。Studio でモデルをデプロイする手順は、次のとおりです。

この機能は、Amazon SageMaker Studio Classic では利用できません。
+ Studio がデフォルトエクスペリエンスである場合、UI は「[Amazon SageMaker Studio の UI の概要](studio-updated-ui.md)」の画像のようになります。
+ Studio Classic がデフォルトのエクスペリエンスである場合、UI は「[Amazon SageMaker Studio Classic の UI の概要](studio-ui.md)」の画像のようになります。

モデルグループを共有するには、まずリソースを共有する実行ロールに以下のアクセス許可が追加されていることを確認する必要があります。

1. [実行ロールを取得](sagemaker-roles.md#sagemaker-roles-get-execution-role)します。

1. 以下を使用して、[ロールのアクセス許可を更新](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-permissions.html)します。

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ram:ListPermissions",
                   "ram:GetPermission",
                   "ram:GetResourceShareAssociations",
                   "ram:ListResourceSharePermissions",
                   "ram:DeleteResourceShare",
                   "ram:GetResourceShareInvitations",
                   "ram:AcceptResourceShareInvitation"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

モデルグループを他の AWS プリンシパルと共有する手順は、次のとおりです。

**モデルグループを他の AWS プリンシパルと共有するには**

1. 「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」の手順に従って、Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. 登録済みのモデルを選択します。

1. 右上隅の **[共有]** をクリックします。これにより、**[モデルグループの共有]** セクションが開きます。

   画面の下部にエラーメッセージが表示された場合は、実行ロールに適切なアクセス許可を追加する必要があります。詳細については、上記のアクセス許可を参照してください。

1. **[リソース共有]** で、リソース共有を選択して、新しいリソース共有を更新または作成します。

1. **[管理アクセス許可]** で、管理アクセス許可を選択して、モデルのアクセスレベルを制御します。

   表示可能なオプションには、作成済みのアクセス許可や、 AWS RAMでカスタム作成したアクセス許可などがあります。「*AWS Resource Access Manager* ユーザーガイド」の「[Creating and using customer managed permissions](https://docs.aws.amazon.com/ram/latest/userguide/create-customer-managed-permissions.html)」を参照してください。

1. **AWS プリンシパル**で、共有する AWS Organizations ARN AWS アカウント IDs を入力し、**追加**を選択します。この方法で複数の AWS プリンシパルを追加できます。

1. 最小要件が満たされると、**[共有]** ボタンが利用できるようになります。設定内容を検証したら、**[共有]** をクリックします。

   共有が正常に完了すると、画面下部に緑色のバナーメッセージが表示されます。

# Studio で共有モデルグループを表示する
<a name="model-registry-ram-studio-view"></a>

自分または同じ AWS Organizationsに属するアカウントと共有されているモデルグループを表示できます。モデルグループが同じ に属するアカウントと共有されている場合 AWS Organizations、共有モデルグループは自動的に承認され、Studio で表示できます。これ以外の場合は、Studio で共有モデルグループを表示するには、保留中の招待を承認する必要があります。Studio で共有モデルグループを表示し、モデルグループの共有招待を受け入れる手順は、次のとおりです。

この機能は、Amazon SageMaker Studio Classic では利用できません。
+ Studio がデフォルトエクスペリエンスである場合、UI は「[Amazon SageMaker Studio の UI の概要](studio-updated-ui.md)」の画像のようになります。
+ Studio Classic がデフォルトのエクスペリエンスである場合、UI は「[Amazon SageMaker Studio Classic の UI の概要](studio-ui.md)」の画像のようになります。

以下では、共有されているモデルグループを表示して受け入れる方法について説明します。

**共有されているモデルグループを表示して受け入れる**

1. 「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」の手順に従って、Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. **[自分と共有]** をクリックして、共有されているモデルグループを表示します。

1. 保留中のモデルグループの招待を受け入れるには:

   1. **[保留中の承認を表示]** をクリックして、**[保留中の招待]** リストを開きます。

   1. 招待を受け入れる場合は、**[受け入れる]** を選択します。

# Accessibility
<a name="model-registry-ram-accessibility"></a>

リソースコンシューマーに共有モデルパッケージグループを使用するためのアクセス許可が付与されている場合は、モデルパッケージグループのバージョンを登録したりデプロイしたりできます。リソースコンシューマーが共有モデルパッケージグループを登録する方法の詳細については、「[別のアカウントからモデルバージョンを登録する](model-registry-version.md#model-registry-version-xaccount)」を参照してください。リソースコンシューマーが共有モデルパッケージグループをデプロイする方法の詳細については、「[別のアカウントからモデルバージョンをデプロイする](model-registry-deploy.md#model-registry-deploy-xaccount)」を参照してください。

# 検出可能性を設定する
<a name="model-registry-ram-discover"></a>

リソース所有者は、リソース共有を作成し、エンティティにリソースポリシーをアタッチすることで、モデルパッケージグループの検出可能性を設定できます。で一般的なリソース共有を作成する方法の詳細については AWS RAM、 [AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html)ドキュメントの[「リソース共有の作成](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create)」を参照してください。

 AWS RAM コンソールまたは Model Registry リソースポリシー APIs を使用してモデルパッケージグループの検出可能性を設定するには、次の手順を実行します。

------
#### [ AWS CLI ]

1. モデル所有者アカウントでリソース共有を作成します。

   1. モデル所有者は、次のコマンドに示されるとおり、SageMaker AI リソースポリシー API [put-model-package-group-policy](https://docs.aws.amazon.com/cli/latest/reference/sagemaker/put-model-package-group-policy.html) を使用して、モデルパッケージグループにリソースポリシーをアタッチします。

      ```
      aws sagemaker put-model-package-group-policy
      --model-package-group-name <model-package-group-name>
      --resource-policy "{\"Version\":\"2012-10-17\",		 	 	 \"Statement\":[{\"Sid\":
      \"ExampleResourcePolicy\",\"Effect\":\"Allow\",\"Principal\":<principal>,
      \"Action\":[\"sagemaker:DescribeModelPackage\",
      \"sagemaker:ListModelPackages\",\"sagemaker:DescribeModelPackageGroup\"],
      \"Resource\":[\"<model-package-group-arn>,\"
      \"arn:aws:sagemaker:<region>:<owner-account-id>:model-package/
      <model-package-group-name>/*\"]}]}"
      ```
**注記**  
リソースポリシーには、さまざまなアクションの組み合わせをアタッチできます。カスタムポリシーの場合、作成されたアクセス許可はモデルパッケージグループの所有者が昇格する必要があります。昇格されたアクセス許可がアタッチされたエンティティのみが検出可能となります。昇格不可能なリソース共有は、 AWS RAMを使用して検出したり管理したりすることはできません。

   1. がリソース共有 ARN を AWS RAM 作成したことを確認するには、次のコマンドを使用します。

      ```
      aws ram get-resource-share-associations --association-type resource --resource-arn <model-package-group-arn>
      ```

      応答には、エンティティの *resource-share-arn* が含まれます。

   1. アタッチされたポリシーアクセス許可がマネージドポリシーかカスタムポリシーかを確認するには、次のコマンドを使用します。

      ```
      aws ram list-resource-share-permissions --resource-share-arn <resource-share-arn>
      ```

      `featureSet` フィールドは、次のように定義される値 `CREATED_FROM_POLICY` または `STANDARD` となる可能性があります。
      + `STANDARD`: このアクセス許可は既に存在します。
      + `CREATED_FROM_POLICY`: このエンティティを検出できるようにするには、アクセス許可を昇格させる必要があります。詳細については、「[アクセス許可とリソース共有を昇格する](model-registry-ram-promote.md)」を参照してください。

1. モデルコンシューマーアカウントでリソース共有の招待を受け入れます。

   1. モデルパッケージグループのコンシューマーは、リソース共有の招待を受け入れます。すべてのリソース招待を表示するには、以下のコマンドを実行します。

      ```
      aws ram get-resource-share-invitations
      ```

      ステータスが `PENDING` のリクエストを特定し、所有者アカウントのアカウント ID を含めます。

   1. 次のコマンドを使用して、モデル所有者からのリソース共有の招待を受け入れます。

      ```
      aws ram accept-resource-share-invitation --resource-share-invitation-arn <resource-share-invitation-arn>
      ```

------
#### [ AWS RAM console ]

1. [AWS RAM コンソール](https://console.aws.amazon.com/ram/home) にログインします。

1. モデルパッケージグループの所有者アカウントからリソース共有を作成するには、次の手順を実行します。

   1. リソース共有の詳細を指定するには、次の手順を実行します。

      1. **[名前]** フィールドに、リソースの一意の名前を追加します。

      1. **[リソース]** カードで、ドロップダウンメニューをクリックして、**[SageMaker モデルパッケージグループ]** を選択します。

      1. モデルパッケージグループのリソース共有の ARN のチェックボックスをオンにします。

      1. **[リソースの選択]** カードで、モデルパッケージグループのリソース共有のチェックボックスをオンにします。

      1. **[タグ]** カードで、リソース共有に追加するタグのキー値のペアを追加します。

      1. [**次へ**] を選択します。

   1. リソース共有にマネージドアクセス許可を関連付けるには、次の手順を実行します。

      1. マネージドアクセス許可を使用する場合は、**[マネージドアクセス許可]** ドロップダウンメニューでマネージドアクセス許可を選択します。

      1. カスタムアクセス許可を使用する場合は、**[カスタマーマネージドアクセス許可]** を選択します。この場合、直ちにモデルパッケージグループを検出するこすることはできません。リソース共有を作成したら、アクセス許可とリソースポリシーを昇格する必要があります。アクセス許可とリソース共有を昇格させる方法については、「[アクセス許可とリソース共有を昇格する](model-registry-ram-promote.md)」を参照してください。カスタムアクセス許可をアタッチする方法の詳細については、「[Creating and using customer managed permissions in AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/create-customer-managed-permissions.html)」を参照してください。

      1. [**次へ**] を選択します。

   1. プリンシパルにアクセス権を付与するには、次の手順を実行します。

      1. 組織外のアカウントとの共有を許可するには、**[すべてのユーザーとの共有を許可]** を選択します。それ以外の場合は、**[自分の組織内でのみ共有を許可]** を選択します。

      1. **[プリンシパルタイプの選択]** ドロップダウンメニューで、追加するプリンシパルのプリンシパルタイプと ID を追加します。

      1. 共有のために選択したプリンシパルを追加して選択します。

      1. [**次へ**] を選択します。

   1. 表示された共有設定を確認してから、**[リソース共有の作成]** をクリックします。

1. コンシューマーアカウントからのリソース共有の招待を受け入れます。モデル所有者がリソース共有とプリンシパルの関連付けを作成すると、指定されたリソースコンシューマーアカウントは、リソース共有に参加するための招待を受け取ります。リソースコンシューマーアカウントは、 AWS RAM コンソールの [[自分と共有: リソース共有]](https://console.aws.amazon.com/ram/home#SharedResourceShares:) ページで、招待を表示して受け入れることができます。でのリソースの受け入れと表示の詳細については AWS RAM、[「共有されている AWS リソースへのアクセス](https://docs.aws.amazon.com//ram/latest/userguide/working-with-shared.html)」を参照してください。

------

# 共有モデルパッケージグループを表示する
<a name="model-registry-ram-view-shared"></a>

リソース所有者が前のステップを完了してリソース共有を作成し、コンシューマーが共有の招待を受け入れると、コンシューマーは AWS CLI または AWS RAM コンソールで共有モデルパッケージグループを表示できます。

## AWS CLI
<a name="model-registry-ram-view-shared-cli"></a>

共有されたモデルパッケージグループを表示するには、モデルコンシューマーアカウントで次のコマンドを使用します。

```
aws sagemaker list-model-package-groups --cross-account-filter-option CrossAccount
```

## AWS RAM コンソール
<a name="model-registry-ram-view-shared-ram"></a>

 AWS RAM コンソールでは、リソース所有者とコンシューマーが共有モデルパッケージグループを表示できます。リソース所有者は、「[Viewing resource shares you created in AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-view-rs.html)」の手順に従って、コンシューマーと共有されているモデルパッケージグループを表示できます。リソースコンシューマーは、「[Viewing resource shares shared with you](https://docs.aws.amazon.com/ram/latest/userguide/working-with-shared-view-rs.html)」の手順に従って、所有者が共有しているモデルパッケージグループを表示できます。

# リソース共有からプリンシパルの関連付けを解除してリソース共有を削除する
<a name="model-registry-ram-dissociate"></a>

リソース所有者は、 または AWS CLI コンソールを使用して AWS RAM 、一連のアクセス許可のプリンシパルとリソース共有の関連付けを解除したり、リソース共有全体を削除したりできます。リソース共有からプリンシパルの関連付けを解除する方法の詳細については、「[AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) ドキュメント」の「[Update a Resource Share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-update.html)」を参照してください リソース共有を削除する方法の詳細については、「[AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) ドキュメント」の「[Deleting a resource share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-delete.html)」を参照してください。

## AWS CLI
<a name="model-registry-ram-dissociate-cli"></a>

リソース共有からプリンシパルの関連付けを解除するには、次のとおり、コマンド [dissociate-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/disassociate-resource-share.html) を使用します。

```
aws ram disassociate-resource-share --resource-share-arn <resource-share-arn> --principals <principal>
```

リソース共有を削除するには、次のとおり、コマンド [delete-resource-share](https://docs.aws.amazon.com/cli/latest/reference/ram/delete-resource-share.html) を使用します。

```
aws ram delete-resource-share --resource-share-arn <resource-share-arn>
```

## AWS RAM コンソール
<a name="model-registry-ram-dissociate-ram"></a>

リソース共有からプリンシパルの関連付けを解除する方法の詳細については、「[AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) ドキュメント」の「[Update a Resource Share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-update.html)」を参照してください リソース共有を削除する方法の詳細については、「[AWS RAM](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) ドキュメント」の「[Deleting a resource share](https://docs.aws.amazon.com/ram/latest/userguide/working-with-sharing-delete.html)」を参照してください。

# アクセス許可とリソース共有を昇格する
<a name="model-registry-ram-promote"></a>

カスタマイズされた (カスタマーマネージド) アクセス許可を使用する場合にモデルパッケージグループを検出できるようにするには、アクセス許可と、関連付けられたリソース共有を昇格させる必要があります。アクセス許可とリソース共有を昇格するには、次の手順を実行します。

1. カスタマイズしたアクセス許可が によってアクセス可能になるように昇格するには AWS RAM、次のコマンドを使用します。

   ```
   aws ram promote-permission-created-from-policy —permission-arn <permission-arn>
   ```

1. 次のコマンドを使用して、リソース共有を昇格します。

   ```
   aws ram promote-resource-share-created-from-policy --resource-share-arn <resource-share-arn>
   ```

前のステップの実行中に `OperationNotPermittedException` エラーが表示された場合、そのエンティティは検出できなかったとはいえ、アクセスはできます。例えば、リソース所有者が `“Principal”: {“AWS”: “arn:aws:iam::3333333333:role/Role-1”}` などのロールを引き受けるプリンシパルでリソースポリシーをアタッチした場合、またはリソースポリシーが `“Action”: “*”` を許可する場合、関連付けられたモデルパッケージグループは昇格も検出もできません。

# モデルのデプロイ履歴を表示する
<a name="model-registry-deploy-history"></a>

Amazon SageMaker Studio コンソールでモデルのバージョンのデプロイを表示するには、Studio と Studio Classic のどちらを使用しているかに応じて、以下の手順を実行します。

------
#### [ Studio ]

**モデルバージョンのデプロイ履歴を表示する**

1. 「[Launch Amazon SageMaker Studio](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-updated-launch.html)」の手順に従って、SageMaker Studio コンソールを開きます。

1. 左側のナビゲーションペインで、**[モデル]** を選択してモデルグループのリストを表示します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. モデルグループのリストから、表示するモデルグループの左側にある山括弧を選択します。

1. モデルグループ内のモデルバージョンが一覧表示されます。削除するモデルバージョンが表示されていない場合は、**[すべて表示]** を選択します。

1. 表示するモデルバージョンの名前を選択します。

1. **[アクティビティ]** タブをクリックします。モデルバージョンのデプロイは、**[Event type]** (イベントタイプ) が **[ModelDeployment]** のイベントとしてアクティビティリストに表示されます。

------
#### [ Studio Classic ]

**モデルバージョンのデプロイ履歴を表示する**

1. Amazon SageMaker Studio Classic にサインインします。詳細については、「[Launch Amazon SageMaker Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-launch.html)」を参照してください。

1. 左側のナビゲーションペインで **[ホーム]** アイコン(![\[Black square icon representing a placeholder or empty image.\]](http://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/images/studio/icons/house.png)) を選択します。

1. **[モデル]** を選択し、**[モデルレジストリ]** を選択します。

1. Model Group のリストから、表示する Model Group の名前を選択します。

1. 新しいタブが開き、Model Group 内にあるモデルバージョンのリストが表示されます。

1. モデルバージョンのリストで、詳細を表示するモデルバージョンの名前を選択します。

1. 表示されるモデルのバージョンのタブで、**[Activity]** (アクティビティ) を選択します。モデルバージョンのデプロイは、**[Event type]** (イベントタイプ) が **[ModelDeployment]** のイベントとしてアクティビティリストに表示されます。

------

# Studio でモデルリネージの詳細を表示する
<a name="model-registry-lineage-view-studio"></a>

登録されたモデルのリネージの詳細は、Amazon SageMaker Studio で表示できます。Studio でリネージビューにアクセスする手順は、次のとおりです。Amazon SageMaker Studio でのリネージ追跡の詳細については、「[Amazon SageMaker ML 系統追跡](lineage-tracking.md)」を参照してください。

この機能は、Amazon SageMaker Studio Classic では利用できません。
+ Studio がデフォルトエクスペリエンスである場合、UI は「[Amazon SageMaker Studio の UI の概要](studio-updated-ui.md)」の画像のようになります。
+ Studio Classic がデフォルトのエクスペリエンスである場合、UI は「[Amazon SageMaker Studio Classic の UI の概要](studio-ui.md)」の画像のようになります。

リネージビューは、登録済みモデルに関連付けられたリソースをインタラクティブに可視化したものです。このようなリソースには、データセット、トレーニングジョブ、承認、モデル、エンドポイントなどがあります。リネージでは、ソース URI、作成タイムスタンプ、その他のメタデータなど、関連するリソースの詳細も表示できます。

、`us-east-1`、`us-west-2`、および `eu-west-1`リージョンでは`ap-northeast-1`、次の機能を使用できます。

ログに記録されたモデルと登録されたモデルの系統を追跡できます。さらに、モデルリソースの系統には、データセット、評価者、トレーニングジョブ、承認、モデル、推論コンポーネント、エンドポイントが含まれます。リネージでは、ソース URI、作成タイムスタンプ、その他のメタデータなど、関連するリソースの詳細も表示できます。

登録済みモデルバージョンのリネージの詳細にアクセスする手順は、次のとおりです。

**登録済みモデルバージョンのリネージの詳細にアクセスするには**

1. 「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」の手順に従って、Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. まだ選択されていない場合は、**[登録済みモデル]** タブをクリックします。

1. **[登録済みモデル]** タブラベルのすぐ下にある **[モデルグループ]** をまだ選択していない場合は、選択します。

1. (オプション) 共有されているモデルがある場合は、**[自分のモデル]** または **[自分と共有]** を選択できます。

1. 登録済みのモデルを選択します。

1. まだ選択されていない場合は、**[バージョン]** タブをクリックします。

1. **[バージョン]** リストから特定のモデルバージョンを選択します。

1. **[リネージ]** タブを選択します。

**[リネージ]** タブでは、モデルバージョンに関連付けられたリソースをナビゲートできます。リソースを選択して、リソースの詳細を表示することもできます。

リネージビューは可視化のみを目的としていることに注意が必要です。このビューのコンポーネントを再配置または移動しても、実際の登録済みモデルリソースには影響しません。

`us-east-1`、、`us-west-2`、`ap-northeast-1`および `eu-west-1`リージョンの場合、次の手順を使用して、ログに記録されたモデルバージョンと登録されたモデルバージョンの系統の詳細にアクセスできます。

1. 「[Amazon SageMaker Studio を起動する](studio-updated-launch.md)」の手順に従って、Studio コンソールを開きます。

1. 左側のナビゲーションペインで **[モデル]** を選択します。

1. **マイモデル**タブを選択します。

1. (オプション) 共有されているモデルがある場合は、**「作成者**」または**「共有**」を選択できます。

1. モデルを選択し、**最新バージョンの表示**を選択します。

1. **[リネージ]** タブを選択します。