

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Establecer políticas de escalado automático para implementaciones de puntos de conexión multimodelo
<a name="multi-model-endpoints-autoscaling"></a>

SageMaker Los puntos finales multimodelo de IA son totalmente compatibles con el escalado automático, que gestiona las réplicas de los modelos para garantizar que los modelos escalen en función de los patrones de tráfico. Se recomienda configurar el punto de conexión multimodelo y el tamaño de las instancias teniendo en cuenta [Recomendaciones de instancia para implementaciones de puntos de conexión multimodelo](multi-model-endpoint-instance.md) y también configurar la instancia en función del escalado automático para el punto de conexión. Las tasas de invocación utilizadas para desencadenar un evento de escalado automático se basan en el conjunto agregado de predicciones a través del conjunto completo de modelos atendidos por el punto de conexión. Para obtener más información sobre cómo configurar el escalado automático de puntos finales, consulte [Escalar automáticamente los modelos de Amazon SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/endpoint-auto-scaling.html).

Puede configurar políticas de escalado automático con métricas predefinidas y personalizadas en puntos de conexión multimodelo respaldados por CPU y GPU.

**nota**  
SageMaker Las métricas de puntos finales multimodelo de IA están disponibles con un nivel de detalle de un minuto.

## Definir una política de escalado
<a name="multi-model-endpoints-autoscaling-define"></a>

Para especificar las métricas y los valores de destino para una política de escalado, puede configurar una política de escalado de seguimiento de destino. Puede utilizar una métrica predefinida o una métrica personalizada.

La configuración de la política de escalado está representada por un bloque JSON. Puede guardar su configuración de la política de escalado como bloque JSON en un archivo de texto. Este archivo de texto se utiliza al invocar la API Application Auto Scaling AWS CLI o la API. Para obtener más información acerca de la sintaxis de configuración de la política, consulte `[TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html)` en la *referencia de la API de Auto Scaling de aplicaciones*.

Las siguientes opciones están disponibles para definir una configuración de la política de escalado de seguimiento de destino.

### Uso de una métrica predefinida
<a name="multi-model-endpoints-autoscaling-predefined"></a>

Para definir rápidamente una política de escalado de seguimiento de destino para una variante, utilice la métrica predefinida `SageMakerVariantInvocationsPerInstance`. `SageMakerVariantInvocationsPerInstance` es el número medio de veces por minuto que cada instancia de una variante se invoca. Le recomendamos fehacientemente el uso de esta métrica.

Para usar una métrica predefinida en una política de escalado, cree una configuración de seguimiento de destino para su política. En la configuración de seguimiento de destino, incluya `PredefinedMetricSpecification` para la métrica predefinida y `TargetValue` para el valor de destino de esa métrica.

El siguiente ejemplo es una configuración de política típica para el escalado de seguimiento de destino para una variante. En esta configuración, utilizamos la métrica predefinida `SageMakerVariantInvocationsPerInstance` para ajustar el número de las instancias de variantes de manera que cada instancia disponga de una métrica `InvocationsPerInstance` de `70`.

```
{"TargetValue": 70.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "InvocationsPerInstance"
    }
}
```

**nota**  
Le recomendamos que utilice `InvocationsPerInstance` mientras utilice puntos de conexión multimodelo. El `TargetValue` de esta métrica depende de los requisitos de latencia de la aplicación. También le recomendamos que realice una prueba de carga de sus puntos de conexión para configurar los valores de los parámetros de escalado adecuados. Para obtener más información sobre las pruebas de carga y la configuración del escalado automático para sus puntos de enlace, consulte el blog [Configuración de puntos de enlace de inferencia de escalado automático en Amazon AI](https://aws.amazon.com/blogs/machine-learning/configuring-autoscaling-inference-endpoints-in-amazon-sagemaker/). SageMaker 

### Uso de una métrica personalizada
<a name="multi-model-endpoints-autoscaling-custom"></a>

Si tiene que definir una política de escalado de seguimiento de destino que cumpla sus requisitos personalizados, defina una métrica personalizada. Puede definir una métrica personalizada en función de cualquier métrica de variante de producción que cambie en proporción al escalado.

No todas las métricas de SageMaker IA funcionan para el seguimiento de objetivos. La métrica debe ser una métrica de utilización válida y debe describir el nivel de actividad de una instancia. El valor de la métrica debe aumentar o reducirse en proporción inversa al número de instancias de variantes. Es decir, el valor de la métrica debe disminuir cuando el número de instancias aumenta.

**importante**  
Antes de implementar el escalado automático en producción, debe realizar la prueba del escalado automático con su métrica personalizada.

#### Ejemplo de métrica personalizada para un punto de conexión multimodelo respaldado por CPU
<a name="multi-model-endpoints-autoscaling-custom-cpu"></a>

En el siguiente ejemplo aparece una configuración de seguimiento de destino para una política de escalado. En esta configuración, para una variante llamada `my-model`, la métrica personalizada de `CPUUtilization` ajusta el número de instancias del punto de conexión en función de la utilización media de la CPU del 50 por ciento en todas las instancias.

```
{"TargetValue": 50,
    "CustomizedMetricSpecification":
    {"MetricName": "CPUUtilization",
        "Namespace": "/aws/sagemaker/Endpoints",
        "Dimensions": [
            {"Name": "EndpointName", "Value": "my-endpoint" },
            {"Name": "ModelName","Value": "my-model"}
        ],
        "Statistic": "Average",
        "Unit": "Percent"
    }
}
```

#### Ejemplo de métrica personalizada para un punto de conexión multimodelo respaldado por GPU
<a name="multi-model-endpoints-autoscaling-custom-gpu"></a>

En el siguiente ejemplo aparece una configuración de seguimiento de destino para una política de escalado. En esta configuración, para una variante llamada `my-model`, la métrica personalizada de `GPUUtilization` ajusta el número de instancias del punto de conexión en función de la utilización media de la GPU del 50 por ciento en todas las instancias.

```
{"TargetValue": 50,
    "CustomizedMetricSpecification":
    {"MetricName": "GPUUtilization",
        "Namespace": "/aws/sagemaker/Endpoints",
        "Dimensions": [
            {"Name": "EndpointName", "Value": "my-endpoint" },
            {"Name": "ModelName","Value": "my-model"}
        ],
        "Statistic": "Average",
        "Unit": "Percent"
    }
}
```

## Incorporación de un periodo de recuperación
<a name="multi-model-endpoints-autoscaling-cooldown"></a>

Para agregar un periodo de recuperación para el escalado horizontal de su modelo, especifique un valor, en segundos, para `ScaleOutCooldown`. De forma similar, para agregar un periodo de recuperación para reducir horizontalmente su modelo, agregue un valor, en segundos, para `ScaleInCooldown`. Para obtener más información acerca de `ScaleInCooldown` y `ScaleOutCooldown`, consulte `[TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html)` en la *referencia de la API de Application Auto Scaling*.

A continuación se muestra un ejemplo de la configuración de seguimiento de destino para una política de escalado. En esta configuración, la métrica predefinida `SageMakerVariantInvocationsPerInstance` se utiliza para ajustar el escalado según una media de `70` en todas las instancias de esa variante. La configuración proporciona un periodo de recuperación de escalado descendente de 10 minutos y un periodo de recuperación de escalado ascendente de 5 minutos.

```
{"TargetValue": 70.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "SageMakerVariantInvocationsPerInstance"
    },
    "ScaleInCooldown": 600,
    "ScaleOutCooldown": 300
}
```