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.
Bien que les SageMaker pipelines constituent un moyen robuste et automatisé d'orchestrer les flux de travail de machine learning, il est possible que vous rencontriez des défaillances lors de leur exécution. Pour gérer ces scénarios avec élégance et améliorer la fiabilité de vos pipelines, vous pouvez configurer des politiques de relance qui définissent comment et quand réessayer automatiquement des étapes spécifiques en cas d'exception. La politique de nouvelles tentatives vous permet de spécifier les types d'exceptions à réessayer, le nombre maximal de tentatives, l'intervalle entre les tentatives et le taux d'attente pour augmenter les intervalles de nouvelle tentative. La section suivante fournit des exemples de configuration d'une politique de nouvelle tentative pour une étape d'entraînement de votre pipeline, à la fois en JSON et à l'aide du SDK SageMaker Python.
Voici un exemple d'étape d'entraînement avec une poltiique de nouvelle tentative.
{
"Steps": [
{
"Name": "MyTrainingStep
",
"Type": "Training",
"RetryPolicies": [
{
"ExceptionType": [
"SageMaker.JOB_INTERNAL_ERROR
",
"SageMaker.CAPACITY_ERROR
"
],
"IntervalSeconds": 1
,
"BackoffRate": 2
,
"MaxAttempts": 5
}
]
}
]
}
Voici un exemple de création d'une étape TrainingStep
dans le kit SDK pour Python (Boto3) avec une politique de nouvelle tentative.
from sagemaker.workflow.retry import (
StepRetryPolicy,
StepExceptionTypeEnum,
SageMakerJobExceptionTypeEnum,
SageMakerJobStepRetryPolicy
)
step_train = TrainingStep(
name="MyTrainingStep
",
xxx,
retry_policies=[
// override the default
StepRetryPolicy(
exception_types=[
StepExceptionTypeEnum.SERVICE_FAULT
,
StepExceptionTypeEnum.THROTTLING
],
expire_after_mins=5
,
interval_seconds=10
,
backoff_rate=2.0
),
// retry when resource limit quota gets exceeded
SageMakerJobStepRetryPolicy(
exception_types=[SageMakerJobExceptionTypeEnum.RESOURCE_LIMIT
],
expire_after_mins=120
,
interval_seconds=60
,
backoff_rate=2.0
),
// retry when job failed due to transient error or EC2 ICE.
SageMakerJobStepRetryPolicy(
failure_reason_types=[
SageMakerJobExceptionTypeEnum.INTERNAL_ERROR
,
SageMakerJobExceptionTypeEnum.CAPACITY_ERROR
,
],
max_attempts=10
,
interval_seconds=30
,
backoff_rate=2.0
)
]
)
Pour plus d'informations sur la configuration du comportement des nouvelles tentatives pour certains types d'étapes, consultez Amazon SageMaker Pipelines - Politique de réessai