

# カスタムモデルをデプロイする
<a name="deploying-custom-model"></a>

Amazon Bedrock コンソール、AWS Command Line Interface、または AWS SDK を使用してカスタムモデルをデプロイできます。推論にデプロイを使用する方法については、「[オンデマンド推論にデプロイを使用する](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html)」を参照してください。

**Topics**
+ [カスタムモデルのデプロイ (コンソール)](#deploy-custom-model-console)
+ [カスタムモデルをデプロイする (AWS Command Line Interface）](#deploy-custom-model-cli)
+ [カスタムモデルをデプロイする (AWS SDK)](#deploy-custom-model-sdk)

## カスタムモデルのデプロイ (コンソール)
<a name="deploy-custom-model-console"></a>

カスタムモデルは、**[カスタムモデル]** ページから次のようにデプロイします。**[オンデマンドのカスタムモデル]** ページからでも、同じフィールドを使用してモデルをデプロイできます。このページにアクセスするには、ナビゲーションペインの **[推論と評価]** で、**[オンデマンドのカスタムモデル]** を選択します。

**カスタムモデルをデプロイするには**

1. [Amazon Bedrock アクセス許可を持つ IAM ロール](https://docs.aws.amazon.com//bedrock/latest/userguide/getting-started.html)を使用して AWS マネジメントコンソールにサインインし、Amazon Bedrock コンソール ([https://console.aws.amazon.com/nova/](https://console.aws.amazon.com/nova/)) を開きます。

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

1. **[モデル]** タブで、デプロイするモデルのラジオボタンを選択します。

1. **[推論を設定]** を選択し、**[オンデマンドのデプロイ]** を選択します。

1. **[デプロイの詳細]** で、次の情報を入力します。
   + **デプロイ名** (必須) – デプロイの一意の名前を入力します。
   + **説明** (オプション) – デプロイの説明を入力します。
   + **タグ** (オプション) – コスト配分とリソース管理用のタグを追加します。

1. **[作成]** を選択します。カスタムモデルでオンデマンド推論の準備が整うと、ステータスが「`Completed`」と表示されます。カスタムモデル使用の詳細については、「[オンデマンド推論にデプロイを使用する](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html)」を参照してください。

## カスタムモデルをデプロイする (AWS Command Line Interface）
<a name="deploy-custom-model-cli"></a>

AWS Command Line Interface を使用してオンデマンド推論用のカスタムモデルをデプロイするには、カスタムモデルの Amazon リソースネーム (ARN) で `create-custom-model-deployment` コマンドを使用します。このコマンドは [CreateCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateCustomModelDeployment.html) API オペレーションを使用します。推論リクエストを行うときに `modelId` として使用できるデプロイの ARN が返ってきます。推論にデプロイを使用する方法については、「[オンデマンド推論にデプロイを使用する](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html)」を参照してください。

```
aws bedrock create-custom-model-deployment \
--model-deployment-name "Unique name" \
--model-arn "Custom Model ARN" \
--description "Deployment description" \
--tags '[
    {
        "key": "Environment",
        "value": "Production"
    },
    {
        "key": "Team",
        "value": "ML-Engineering"
    },
    {
        "key": "Project",
        "value": "CustomerSupport"
    }
]' \
--client-request-token "unique-deployment-token" \
--region region
```

## カスタムモデルをデプロイする (AWS SDK)
<a name="deploy-custom-model-sdk"></a>

オンデマンド推論用のカスタムモデルをデプロイするには、カスタムモデルの Amazon リソースネーム (ARN) で [CreateCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateCustomModelDeployment.html) API オペレーションを使用します。レスポンスとして、推論リクエストを行うときに `modelId` として使用できるデプロイの ARN が返ってきます。推論にデプロイを使用する方法については、「[オンデマンド推論にデプロイを使用する](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html)」を参照してください。

次のコードは、SDK for Python (Boto3) を使用してカスタムモデルをデプロイする方法を示しています。

```
def create_custom_model_deployment(bedrock_client):
    """Create a custom model deployment
    Args:
        bedrock_client: A boto3 Bedrock client for making API calls
 
    Returns:
        str: The ARN of the created custom model deployment
 
    Raises:
        Exception: If there is an error creating the deployment
    """
 
    try:
        response = bedrock_client.create_custom_model_deployment(
            modelDeploymentName="Unique deployment name",
            modelArn="Custom Model ARN",
            description="Deployment description",
            tags=[
                {'key': 'Environment', 'value': 'Production'},
                {'key': 'Team', 'value': 'ML-Engineering'},
                {'key': 'Project', 'value': 'CustomerSupport'}
            ],
            clientRequestToken=f"deployment-{uuid.uuid4()}"
        )
 
        deployment_arn = response['customModelDeploymentArn']
        print(f"Deployment created: {deployment_arn}")
        return deployment_arn
 
    except Exception as e:
        print(f"Error creating deployment: {str(e)}")
        raise
```