

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 部署自訂模型以進行隨需推論


透過模型自訂任務 (微調、蒸餾或持續預先訓練) 成功建立自訂模型後，您可以為模型設定隨需推論。

若要設定自訂模型的隨需推論，請使用自訂模型部署來部署模型。部署自訂模型之後，使用部署的 Amazon Resource Name (ARN) 作為 `InvokeModel` 或 `Converse` API 操作中的 `modelId` 參數。您可以使用部署的模型搭配 Amazon Bedrock 功能，例如實驗場、代理程式和知識庫，進行隨需推論。

**Topics**
+ [

## 支援的模型
](#custom-model-inference-supported-models)
+ [

# 部署自訂模型
](deploying-custom-model.md)
+ [

# 使用部署進行隨需推論
](use-custom-model-on-demand.md)
+ [

# 刪除自訂模型部署
](delete-custom-model-deployment.md)

## 支援的模型


您可以為下列模型設定隨需推論：
+ Amazon Nova Canvas
+ Amazon Nova Lite
+ Amazon Nova Micro
+ Amazon Nova Pro

# 部署自訂模型


您可以使用 Amazon Bedrock 主控台 AWS Command Line Interface或 AWS SDKs 部署自訂模型。如需使用部署進行推論的相關資訊，請參閱[使用部署進行隨需推論](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 SDKs)
](#deploy-custom-model-sdk)

## 部署自訂模型 (主控台)


您可以如下所示從**自訂模型**頁面部署自訂模型。您也可以從具有相同欄位的**隨需自訂模型**頁面部署模型。若要尋找此頁面，請在導覽窗格的**推論和評估**中選擇**隨需自訂模型**。

**部署自訂模型**

1.  AWS 管理主控台 使用[具有 Amazon Bedrock 許可的 IAM 角色](https://docs.aws.amazon.com//bedrock/latest/userguide/getting-started.html)登入 ，然後開啟位於 https：//[https://console.aws.amazon.com/nova/](https://console.aws.amazon.com/nova/) 的 Amazon Bedrock 主控台。

1. 從左側導覽窗格中，選擇**基礎模型**下的**自訂模型**。

1. 在**模型**索引標籤中，選擇您要部署之模型的選項按鈕。

1. 選擇**設定推論**，然後選擇**隨需部署**。

1. 在**部署詳細資訊**中，提供下列資訊：
   + **部署名稱** (必要)：輸入部署的唯一名稱。
   + **描述** (選用)：輸入部署描述。
   + **標籤 ** (選用)：新增成本分配和資源管理的標籤。

1. 選擇**建立**。當狀態顯示 `Completed` 時，自訂模型已準備好進行隨需推論。如需使用自訂模型的詳細資訊，請參閱[使用部署進行隨需推論](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html)。

## 部署自訂模型 (AWS Command Line Interface)


若要使用 部署用於隨需推論的自訂模型 AWS Command Line Interface，請使用 `create-custom-model-deployment`命令搭配自訂模型的 Amazon Resource Name (ARN)。此命令使用 [CreateCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateCustomModelDeployment.html) API 操作。它會傳回部署的 ARN，您可以在提出推論請求時將其用作 `modelId`。如需使用部署進行推論的相關資訊，請參閱[使用部署進行隨需推論](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 SDKs)


若要部署用於隨需推論的自訂模型，請搭配自訂模型的 Amazon Resource Name (ARN) 使用 [CreateCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateCustomModelDeployment.html) API 操作。回應會傳回部署的 ARN，您可以在提出推論請求時將其用作 `modelId`。如需使用部署進行推論的相關資訊，請參閱[使用部署進行隨需推論](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html)。

下列程式碼說明如何使用適用於 Python 的 SDK (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
```

# 使用部署進行隨需推論


部署用於隨需推論的自訂模型後，您可以使用它，透過提出推論請求來產生回應。對於 `InvokeModel` 或 `Converse` 作業，您可以使用部署的 Amazon Resource Name (ARN) 作為 `modelId`。

如需提出推論請求的資訊，請參閱下列主題：
+ [提交提示詞並使用模型推論產生回應](https://docs.aws.amazon.com/bedrock/latest/userguide/inference.html)
+ [執行模型推論的必要條件](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-prereq.html)
+ [使用 API 提交提示詞並產生回應](https://docs.aws.amazon.com/bedrock/latest/userguide/inference-api.html)

# 刪除自訂模型部署


使用模型完成隨需推論後，您可以刪除部署。刪除部署後，您便無法將其用於隨需推論，但不會刪除基礎自訂模型。

您可以使用 Amazon Bedrock 主控台 AWS Command Line Interface或 AWS SDKs 刪除自訂模型部署。

**重要**  
刪除自訂模型部署是不可復原的。在繼續刪除之前，請確定您不再需要部署。如果您需要再次使用自訂模型進行隨需推論，則必須建立新的部署。

**Topics**
+ [

## 刪除自訂模型部署 (主控台)
](#delete-deployment-console)
+ [

## 刪除自訂模型部署 (AWS Command Line Interface)
](#delete-deployment-cli)
+ [

## 刪除自訂模型部署AWS SDKs)
](#delete-deployment-sdk)

## 刪除自訂模型部署 (主控台)


**刪除自訂模型部署**

1. 在導覽窗格的**推論和評估**下，選擇**隨需自訂模型**。

1. 選擇您要刪除的自訂模型部署。

1. 選擇**刪除**。

1. 在確認對話方塊中，輸入部署名稱以確認刪除。

1. 選擇**刪除**以確認刪除。

當刪除正在進行時，部署狀態會變更為 `Deleting`。完成後，部署將從清單中移除。

## 刪除自訂模型部署 (AWS Command Line Interface)


若要使用 刪除自訂模型部署 AWS Command Line Interface，請使用 `delete-custom-model-deployment`命令搭配您的部署識別符。

```
aws bedrock delete-custom-model-deployment \
--custom-model-deployment-identifier "deployment-arn-or-name" \
--region region
```

## 刪除自訂模型部署AWS SDKs)


若要以程式設計方式刪除自訂模型部署，請使用 [DeleteCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_DeleteCustomModelDeployment.html) API 操作搭配部署的 Amazon Resource Name (ARN) 或名稱。下列程式碼說明如何使用適用於 Python (Boto3) 的 SDK 來刪除自訂模型部署。

```
def delete_custom_model_deployment(bedrock_client):
    """Delete a custom model deployment
 
    Args:
        bedrock_client: A boto3 Bedrock client for making API calls
 
    Returns:
        dict: The response from the delete operation
 
    Raises:
        Exception: If there is an error deleting the deployment
    """
 
    try:
        response = bedrock_client.delete_custom_model_deployment(
            customModelDeploymentIdentifier="Deployment identifier"
        )
 
        print(f"Deployment deletion initiated")
        return response
 
    except Exception as e:
        print(f"Error deleting deployment: {str(e)}")
        raise
```