Enregistrement d'un modèle - Amazon SageMaker

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 sur sagemaker.

  • --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 est endpoint et l'identifiant unique est le nom de la variante de production. Par exemple, endpoint/MyEndpoint/variant/MyVariant.

  • --scalable-dimension—Définissez cette valeur sur sagemaker:variant:DesiredInstanceCount.

  • --min-capacity- Le nombre minimal d'instances pour ce modèle. Définissez min-capacity sur au moins 1. La valeur doit être inférieure ou égale à celle spécifiée pour max-capacity.

  • --max-capacity- Le nombre maximal d'instances que Application Auto Scaling doit gérer. Définissez max-capacity avec la valeur minimale de 1. La valeur il doit être supérieure ou égale à la valeur spécifiée pour min-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 sur sagemaker.

  • ResourceID- L'identifiant de la ressource pour la variante de production. Pour ce paramètre, le type de ressource est endpoint et l'identifiant unique est le nom de la variante, par exemple endpoint/MyEndPoint/variant/MyVariant.

  • ScalableDimension—Définissez cette valeur sur sagemaker: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 pour MaxCapacity.

  • 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 pour MinCapacity.

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 }