Enregistrement d'un modèle
Vous pouvez ajouter la scalabilité automatique pour un modèle avec la AWS CLI ou l'API Application Auto Scaling. Vous devez d'abord enregistrer le modèle, puis définir une stratégie de mise à l'échelle automatique.
Enregistrement d'un modèle avec l'interface AWS CLI
Avec l'interface AWS CLI, vous pouvez configurer la mise à l'échelle automatique en fonction d'une métrique prédéfinie ou personnalisée.
Pour enregistrer votre point de terminaison, utilisez la commande register-scalable-target
AWS CLI avec les paramètres suivants :
-
--service-namespace
-Définissez cette valeur sursagemaker
. -
--resource-id
- L’identifiant de la ressource pour le modèle (plus précisément, la variante de production). Pour ce paramètre, le type de ressource estendpoint
et l'identifiant unique est le nom de la variante de production. Par exemple,endpoint/MyEndpoint/variant/MyVariant
. -
--scalable-dimension
-Définissez cette valeur sursagemaker:variant:DesiredInstanceCount
. -
--min-capacity
- Le nombre minimal d'instances pour ce modèle. Définissezmin-capacity
sur au moins 1. La valeur doit être inférieure ou égale à celle spécifiée pourmax-capacity
. -
--max-capacity
- Le nombre maximal d'instances que Application Auto Scaling doit gérer. Définissezmax-capacity
avec la valeur minimale de 1. La valeur il doit être supérieure ou égale à la valeur spécifiée pourmin-capacity
.
L'exemple suivant montre comment enregistrer un modèle nommé MyVariant
qui est mis à l'échelle de façon dynamique pour avoir de 1 à 8 instances :
aws application-autoscaling register-scalable-target \ --service-namespace sagemaker \ --resource-id endpoint/MyEndPoint/variant/MyVariant \ --scalable-dimension sagemaker:variant:DesiredInstanceCount \ --min-capacity 1 \ --max-capacity 8
Enregistrement d'un modèle avec l'API Application Auto Scaling
Pour définir les limites de mise à l'échelle du modèle, enregistrez votre modèle avec Application Auto Scaling. Application Auto Scaling met à l'échelle dynamiquement le nombre d'instances de variante de production.
Pour enregistrer votre modèle avec Application Auto Scaling, utilisez l'opération d'API Application Auto Scaling RegisterScalableTarget
avec les paramètres suivants :
-
ServiceNamespace
-Définissez cette valeur sursagemaker
. -
ResourceID
- L'identifiant de la ressource pour la variante de production. Pour ce paramètre, le type de ressource estendpoint
et l'identifiant unique est le nom de la variante, par exempleendpoint/MyEndPoint/variant/MyVariant
. -
ScalableDimension
-Définissez cette valeur sursagemaker:variant:DesiredInstanceCount
. -
MinCapacity
– Le nombre minimal d'instances devant être gérées par Application Auto Scaling. Cette valeur doit être au moins égale à 1 et être inférieure ou égale à celle spécifiée pourMaxCapacity
. -
MaxCapacity
– Le nombre maximal d'instances devant être gérées par Application Auto Scaling. Cette valeur doit être au moins égale à 1 et être supérieure ou égale à celle spécifiée pourMinCapacity
.
L'exemple suivant montre comment enregistrer une variante de production SageMaker dimensionnée de façon dynamique pour utiliser de 1 à 8 instances :
POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "ServiceNamespace": "sagemaker", "ResourceId": "endpoint/MyEndPoint/variant/MyVariant", "ScalableDimension": "sagemaker:variant:DesiredInstanceCount", "MinCapacity": 1, "MaxCapacity": 8 }