Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
SageMaker La modalità locale di Pipelines è un modo semplice per testare gli script di addestramento, elaborazione e inferenza, nonché la compatibilità in fase di runtime dei parametri della pipeline prima di eseguire la pipeline
La modalità locale di Pipeline sfrutta la modalità locale di SageMaker AI jobs
La modalità locale pipeline attualmente supporta i seguenti tipi di fasi:
-
Fase del modello (solo con argomenti Crea modello)
A differenza del servizio Pipeline gestito che consente l'esecuzione di più fasi in parallelo utilizzando la configurazione del parallelismo
Nota
La modalità locale di Pipelines non è compatibile con algoritmi SageMaker AI come. XGBoost Se si desidera utilizzare questi algoritmi, è necessario utilizzarli in modalità script.
Per eseguire una pipeline a livello locale, i campi sagemaker_session
associati alle fasi della pipeline e alla pipeline stessa devono essere di tipo LocalPipelineSession
. L'esempio seguente mostra come definire una pipeline SageMaker AI da eseguire localmente.
from sagemaker.workflow.pipeline_context import LocalPipelineSession
from sagemaker.pytorch import PyTorch
from sagemaker.workflow.steps import TrainingStep
from sagemaker.workflow.pipeline import Pipeline
local_pipeline_session = LocalPipelineSession()
pytorch_estimator = PyTorch(
sagemaker_session=local_pipeline_session,
role=sagemaker.get_execution_role(),
instance_type="ml.c5.xlarge",
instance_count=1,
framework_version="1.8.0",
py_version="py36",
entry_point="./entry_point.py",
)
step = TrainingStep(
name="MyTrainingStep",
step_args=pytorch_estimator.fit(
inputs=TrainingInput(s3_data="s3://amzn-s3-demo-bucket/my-data/train
"),
)
)
pipeline = Pipeline(
name="MyPipeline",
steps=[step],
sagemaker_session=local_pipeline_session
)
pipeline.create(
role_arn=sagemaker.get_execution_role(),
description="local pipeline example"
)
// pipeline will execute locally
execution = pipeline.start()
steps = execution.list_steps()
training_job_name = steps['PipelineExecutionSteps'][0]['Metadata']['TrainingJob']['Arn']
step_outputs = pipeline_session.sagemaker_client.describe_training_job(TrainingJobName = training_job_name)
Quando siete pronti per eseguire la pipeline sul servizio SageMaker Pipelines gestito, potete farlo sostituendo il frammento di codice precedente con PipelineSession
(come illustrato LocalPipelineSession
nell'esempio di codice seguente) ed eseguendo nuovamente il codice.
from sagemaker.workflow.pipeline_context import PipelineSession
pipeline_session = PipelineSession()