

# Implementar un modelo personalizado
<a name="deploying-custom-model"></a>

Puede implementar un modelo personalizado con la consola de Amazon Bedrock, la AWS Command Line Interface o SDK de AWS. Para obtener información sobre el uso de la implementación para la inferencia, consulte Usar una implementación para la inferencia bajo demanda. 

**Topics**
+ [Implementación de un modelo personalizado (consola)](#deploy-custom-model-console)
+ [Implementar un modelo personalizado (AWS Command Line Interface)](#deploy-custom-model-cli)
+ [Implemente un modelo personalizado (SDK de AWS)](#deploy-custom-model-sdk)

## Implementación de un modelo personalizado (consola)
<a name="deploy-custom-model-console"></a>

Puede implementar un modelo personalizado en la página **Modelos personalizados** de la siguiente manera. También puede implementar un modelo en la página **Modelos personalizados bajo demanda** con los mismos campos. Para encontrar esta página, en **Inferencia y evaluación**, en el panel de navegación, seleccione **Modelo personalizado bajo demanda**.

**Para implementar un modelo**

1. Inicie sesión en la Consola de administración de AWS con un [rol de IAM con los permisos de Amazon Bedrock](https://docs.aws.amazon.com//bedrock/latest/userguide/getting-started.html) y abra la consola de Amazon Bedrock en [https://console.aws.amazon.com/nova/](https://console.aws.amazon.com/nova/).

1. En el panel de navegación de la izquierda, seleccione **Modelos personalizados** en **Modelos fundacionales**.

1. En la pestaña **Modelos**, elija el botón de opción correspondiente al modelo que desea implementar.

1. Elija **Configurar inferencia** y seleccione **Implementar bajo demanda**.

1. En **Detalles de la implementación**, indique la siguiente información.
   + **Nombre de la implementación** (obligatorio): introduzca un nombre único para la implementación.
   + **Descripción** (opcional): ingrese una descripción para la implementación.
   + **Etiquetas** (opcional): agregue etiquetas para la asignación de costos y la administración de recursos.

1. Seleccione **Crear**. Cuando se muestre el estado `Completed`, el modelo personalizado estará listo para la inferencia bajo demanda. Para obtener más información sobre el uso del modelo personalizado, consulte [Usar una implementación para una inferencia bajo demanda](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html).

## Implementar un modelo personalizado (AWS Command Line Interface)
<a name="deploy-custom-model-cli"></a>

Para implementar un modelo personalizado para la inferencia bajo demanda mediante la AWS Command Line Interface, utilice el comando `create-custom-model-deployment` con el nombre de recurso de Amazon (ARN) del modelo personalizado. Este comando usa la operación de la API de [CreateCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateCustomModelDeployment.html). Devuelve el ARN de la implementación que puede usar como el `modelId` al realizar solicitudes de inferencia. Para obtener información sobre el uso de la implementación para la inferencia, consulte Usar una implementación para la inferencia bajo demanda.

```
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
```

## Implemente un modelo personalizado (SDK de AWS)
<a name="deploy-custom-model-sdk"></a>

Para implementar un modelo personalizado para la inferencia bajo demanda, utilice la operación de API de [CreateCustomModelDeployment](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_CreateCustomModelDeployment.html) con el nombre de recurso de Amazon (ARN) del modelo personalizado. La respuesta devuelve el ARN de la implementación que puede usar como el `modelId` al realizar solicitudes de inferencia. Para obtener información sobre el uso de la implementación para la inferencia, consulte [Usar una implementación para la inferencia bajo demanda](https://docs.aws.amazon.com/bedrock/latest/userguide/use-custom-model-on-demand.html).

El código siguiente muestra cómo utilizar el SDK para Python (Boto3) para implementar un modelo personalizado. 

```
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
```