Utiliser un estimateur basé sur l' SageMaker IA pour exécuter une tâche de formation - 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.

Utiliser un estimateur basé sur l' SageMaker IA pour exécuter une tâche de formation

Vous pouvez également utiliser un estimateur du SDK SageMaker Python pour gérer la configuration et l'exécution de votre SageMaker tâche de formation. Les exemples de code suivants montrent comment configurer et exécuter un estimateur à l'aide d'images provenant d'un registre Docker privé.

  1. Importez les bibliothèques et dépendances requises, comme indiqué dans l'exemple de code suivant.

    import boto3 import sagemaker from sagemaker.estimator import Estimator session = sagemaker.Session() role = sagemaker.get_execution_role()
  2. Fournissez un identifiant de ressource uniforme (URI) à votre image d'entraînement, à vos groupes de sécurité et à vos sous-réseaux dans la configuration du VPC pour votre tâche d'entraînement, comme indiqué dans l'exemple de code suivant.

    image_uri = "myteam.myorg.com/docker-local/my-training-image:<IMAGE-TAG>" security_groups = ["sg-0123456789abcdef0"] subnets = ["subnet-0123456789abcdef0", "subnet-0123456789abcdef0"]

    Pour plus d'informations sur security_group_ids etsubnets, consultez la description des paramètres appropriés dans la section Estimateurs du SDK SageMaker Python.

    Note

    SageMaker L'IA utilise une connexion réseau au sein de votre VPC pour accéder aux images de votre registre Docker. Pour utiliser ces images dans votre registre Docker à des fins d'entraînement, le registre doit être accessible à partir d'un Amazon VPC dans votre compte.

  3. Facultativement, si votre registre Docker nécessite une authentification, vous devez également spécifier l'Amazon Resource Name (ARN) d'une AWS Lambda fonction qui fournit des informations d'accès à l' SageMaker IA. L'exemple de code suivant montre comment spécifier l'ARN.

    training_repository_credentials_provider_arn = "arn:aws:lambda:us-west-2:1234567890:function:test"

    Pour plus d'informations sur l'utilisation d'images dans un registre Docker nécessitant une authentification, consultez Utilisation d'un registre Docker nécessitant une authentification pour l'entraînement ci-dessous.

  4. Utilisez les exemples de code des étapes précédentes pour configurer un estimateur, comme indiqué dans l'exemple de code suivant.

    # The training repository access mode must be 'Vpc' for private docker registry jobs training_repository_access_mode = "Vpc" # Specify the instance type, instance count you want to use instance_type="ml.m5.xlarge" instance_count=1 # Specify the maximum number of seconds that a model training job can run max_run_time = 1800 # Specify the output path for the model artifacts output_path = "s3://your-output-bucket/your-output-path" estimator = Estimator( image_uri=image_uri, role=role, subnets=subnets, security_group_ids=security_groups, training_repository_access_mode=training_repository_access_mode, training_repository_credentials_provider_arn=training_repository_credentials_provider_arn, # remove this line if auth is not needed instance_type=instance_type, instance_count=instance_count, output_path=output_path, max_run=max_run_time )
  5. Commencez votre tâche d'entraînement en appelant estimator.fit avec votre nom de tâche et le chemin d'entrée comme paramètres, comme indiqué dans l'exemple de code suivant.

    input_path = "s3://your-input-bucket/your-input-path" job_name = "your-job-name" estimator.fit( inputs=input_path, job_name=job_name )