Test de modèles avec des variantes shadow - Amazon SageMaker AI

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Test de modèles avec des variantes shadow

Vous pouvez utiliser des déploiements SageMaker AI Model Shadow pour créer des variantes shadow de longue durée afin de valider tout nouveau composant candidat de votre pile de serveurs de modèles avant de le lancer en production. Le diagramme suivant montre de façon détaillée comment les variantes shadow fonctionnent.

Détails d'une variante shadow.

Déployer des variantes shadow

L'exemple de code suivant montre comment vous pouvez déployer par programmation des variantes shadow. Remplacez user placeholder text dans l'exemple par vos propres informations.

  1. Créez deux modèles SageMaker AI : l’un pour votre variante de production et l’autre pour votre variante shadow.

    import boto3 from sagemaker import get_execution_role, Session aws_region = "aws-region" boto_session = boto3.Session(region_name=aws_region) sagemaker_client = boto_session.client("sagemaker") role = get_execution_role() bucket = Session(boto_session).default_bucket() model_name1 = "name-of-your-first-model" model_name2 = "name-of-your-second-model" sagemaker_client.create_model( ModelName = model_name1, ExecutionRoleArn = role, Containers=[ { "Image": "ecr-image-uri-for-first-model", "ModelDataUrl": "s3-location-of-trained-first-model" } ] ) sagemaker_client.create_model( ModelName = model_name2, ExecutionRoleArn = role, Containers=[ { "Image": "ecr-image-uri-for-second-model", "ModelDataUrl": "s3-location-of-trained-second-model" } ] )
  2. Créez une configuration de point de terminaison. Spécifiez à la fois vos variantes de production et shadow dans la configuration.

    endpoint_config_name = name-of-your-endpoint-config create_endpoint_config_response = sagemaker_client.create_endpoint_config( EndpointConfigName=endpoint_config_name, ProductionVariants=[ { "VariantName": name-of-your-production-variant, "ModelName": model_name1, "InstanceType": "ml.m5.xlarge", "InitialInstanceCount": 1, "InitialVariantWeight": 1, } ], ShadowProductionVariants=[ { "VariantName": name-of-your-shadow-variant, "ModelName": model_name2, "InstanceType": "ml.m5.xlarge", "InitialInstanceCount": 1, "InitialVariantWeight": 1, } ] )
  3. Créez un point de terminaison .

    create_endpoint_response = sm.create_endpoint( EndpointName=name-of-your-endpoint, EndpointConfigName=endpoint_config_name, )