Application d'une stratégie de mise à l'échelle - Amazon SageMaker

Application d'une stratégie de mise à l'échelle

Après avoir enregistré votre modèle et défini une stratégie de mise à l'échelle, appliquez cette stratégie au modèle enregistré. Pour appliquer une stratégie de mise à l'échelle, vous pouvez utiliser la AWS CLI ou l'API Application Auto Scaling.

Application d'une stratégie de mise à l'échelle (AWS CLI)

Pour appliquer une stratégie de mise à l'échelle à votre modèle, utilisez la commande put-scaling-policy de laAWS CLI avec les paramètres suivants :

  • --policy-nameNom de la stratégie de mise à l'échelle.

  • --policy-type—Définissez cette valeur sur TargetTrackingScaling.

  • --resource-id- L'identifiant de la ressource pour la variante. 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.

  • --service-namespace—Définissez cette valeur sur sagemaker.

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

  • --target-tracking-scaling-policy-configuration- La configuration de la stratégie de mise à l'échelle avec suivi de cible à utiliser pour le modèle.

L'exemple suivant utilise Application Auto Scaling pour appliquer une stratégie de mise à l'échelle avec suivi de cible nommée myscalablepolicy à un modèle (variante) nommé myscalablevariant. La configuration de stratégie est enregistrée dans un fichier nommé config.json.

aws application-autoscaling put-scaling-policy \ --policy-name myscalablepolicy \ --policy-type TargetTrackingScaling \ --resource-id endpoint/MyEndpoint/variant/MyVariant \ --service-namespace sagemaker \ --scalable-dimension sagemaker:variant:DesiredInstanceCount \ --target-tracking-scaling-policy-configuration file://config.json

Application d'une stratégie de mise à l'échelle (API Application Auto Scaling)

Pour appliquer une stratégie de mise à l'échelle à une variante à l'aide de l'API Application Auto Scaling, utilisez l'opération d'API Application Auto Scaling PutScalingPolicy avec les paramètres suivants :

  • PolicyName- Le nom de la stratégie de mise à l'échelle.

  • ServiceNamespace—Définissez cette valeur sur sagemaker.

  • ResourceID- L'identifiant de la ressource pour la variante. 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.

  • PolicyType—Définissez cette valeur sur TargetTrackingScaling.

  • TargetTrackingScalingPolicyConfiguration-La configuration de la stratégie de mise à l'échelle avec suivi de cible à utiliser pour la variante.

L'exemple suivant utilise Application Auto Scaling pour appliquer une stratégie de mise à l'échelle avec suivi de cible nommée myscalablepolicy à une variante nommée myscalablevariant. Il utilise une configuration de stratégie basée sur la métrique prédéfinie SageMakerVariantInvocationsPerInstance.

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity X-Amz-Target: AnyScaleFrontendService. 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 { "PolicyName": "myscalablepolicy", "ServiceNamespace": "sagemaker", "ResourceId": "endpoint/MyEndpoint/variant/MyVariant", "ScalableDimension": "sagemaker:variant:DesiredInstanceCount", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 70.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "SageMakerVariantInvocationsPerInstance" } } }