Exécuter un pipeline - Amazon SageMaker

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 SageMaker des ressources ou localement.

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

Note

Une étape définie à l'aide du @step décorateur s'exécute comme une tâche de formation. Par conséquent, soyez conscient des limites suivantes :

  • Limites d'instances et limites de tâches de formation 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 cycle d'une étape de formation du pipeline. Pour plus de détails, consultez les SageMaker tarifs Amazon.

Récupérer les résultats d'un pipeline exécuté localement

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

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

Les pipelines ne sont pas pris execution.result() en charge en mode local.

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

execution.list_step()

Exécuter un pipeline localement

Vous pouvez exécuter un pipeline avec des marches @step décorées localement, comme vous le feriez pour les étapes de pipeline traditionnelles. Pour plus de détails sur les exécutions de pipeline en mode local, consultezExécuter des pipelines en mode local. Pour utiliser le mode local, fournissez un LocalPipelineSession au lieu de a SageMakerSession à 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()