View a markdown version of this page

Utiliser une SageMaker IA ModelTrainer pour exécuter un travail 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 une SageMaker IA ModelTrainer pour exécuter un travail de formation

Vous pouvez également utiliser un SageMaker outil ModelTrainer du SDK Python pour gérer la configuration et l'exécution de votre tâche de SageMaker formation. Les exemples de code suivants montrent comment configurer et exécuter un à ModelTrainer 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.train import ModelTrainer from sagemaker.train.configs import Compute from sagemaker.core.helper.session_helper import get_execution_role, Session session = Session() role = 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 ModelTrainers section du SDK SageMaker Python.

    Note

    SageMaker AI 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 à SageMaker AI. 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 ModelTrainer, 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" model_trainer = ModelTrainer( training_image=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 compute=Compute(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 model_trainer.train 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" model_trainer.train( input_data_config=input_path, job_name=job_name )