Exécuter un pipeline - 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.

Exécuter un pipeline

La page suivante décrit comment exécuter un pipeline avec Amazon SageMaker Pipelines, avec des ressources d' SageMaker IA ou localement.

Démarrez une nouvelle exécution de pipeline avec cette pipeline.start() fonction, comme vous le feriez pour une exécution de pipeline d' SageMaker IA traditionnelle. Pour en savoir plus sur la fonction start(), consultez sagemaker.workflow.pipeline.Pipeline.start.

Note

Une étape définie à l’aide du décorateur @step s’exécute comme tâche d’entraînement. Par conséquent, tenez compte des limitations suivantes :

  • Limites d’instances et limites de tâches d’entraînement dans vos comptes. Mettez à jour vos limites en conséquence pour éviter tout problème de limitation ou de limite de ressources.

  • Les coûts monétaires associés à chaque exécution d’une étape d’entraînement dans le pipeline. Pour plus de détails, consultez les SageMaker tarifs Amazon.

Extraction des résultats d’un pipeline exécuté localement

Pour afficher le résultat de n’importe quelle étape d’une exécution de pipeline, utilisez execution.result(), comme indiqué dans l’extrait suivant :

execution = pipeline.start() execution.result(step_name="train")
Note

Pipelines ne prend pas en charge execution.result() en mode local.

Vous ne pouvez récupérer les résultats que pour une seule étape à la fois. Si le nom de l'étape a été généré par l' SageMaker IA, vous pouvez le récupérer en appelant list_steps comme suit :

execution.list_step()

Exécution d’un pipeline localement

Vous pouvez exécuter un pipeline avec des étapes décorées avec @step localement, comme vous le feriez pour des étapes de pipeline traditionnelles. Pour plus de détails sur les exécutions de pipelines en mode local, consultez Exécution de pipelines en mode local. Pour utiliser le mode local, fournissez un élément LocalPipelineSession à la place d’un élément SageMakerSession dans la définition de votre pipeline, comme illustré dans l’exemple suivant :

from sagemaker.workflow.function_step import step from sagemaker.workflow.pipeline import Pipeline from sagemaker.workflow.pipeline_context import LocalPipelineSession @step def train(): training_data = s3.download(....) ... return trained_model step_train_result = train() local_pipeline_session = LocalPipelineSession() local_pipeline = Pipeline( name="<pipeline-name>", steps=[step_train_result], sagemaker_session=local_pipeline_session # needed for local mode ) local_pipeline.create(role_arn="role_arn") # pipeline runs locally execution = local_pipeline.start()