View a markdown version of this page

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 SageMaker AI Model Shadow Deployments pour créer des variantes fantômes à long terme afin de valider tout nouveau composant candidat de votre pile de serveurs de modèles avant de le promouvoir 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 les informations de l'exemple par vos propres informations.

  1. Créez deux modèles d' SageMaker IA : l'un pour votre variante de production et l'autre pour votre variante fantôme.

    import boto3 from sagemaker.core.helper.session_helper 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, )