기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
재시도 정책 구성
SageMaker 파이프라인은 기계 학습 워크플로를 오케스트레이션하는 강력하고 자동화된 방법을 제공하지만, 기계 학습 워크플로를 실행할 때 오류가 발생할 수 있습니다. 이러한 시나리오를 원활하게 처리하고 파이프라인의 신뢰성을 높이려면 예외가 발생한 후 특정 단계를 자동으로 재시도하는 방법과 시기를 정의하는 재시도 정책을 구성할 수 있습니다. 재시도 정책을 사용하면 재시도할 예외 유형, 최대 재시도 횟수, 재시도 간격 및 재시도 간격을 늘리기 위한 백오프 속도를 지정할 수 있습니다. 다음 섹션에서는 SageMaker Python를 JSON 사용하여 파이프라인의 훈련 단계에 대한 재시도 정책을 구성하는 방법의 예를 제공합니다SDK.
다음은 재시도 정책이 포함된 훈련 단계의 예제입니다.
{ "Steps": [ { "Name": "
MyTrainingStep
", "Type": "Training", "RetryPolicies": [ { "ExceptionType": [ "SageMaker.JOB_INTERNAL_ERROR
", "SageMaker.CAPACITY_ERROR
" ], "IntervalSeconds":1
, "BackoffRate":2
, "MaxAttempts":5
} ] } ] }
다음은 재시도 정책을 사용하여 SDK for Python(Boto3)TrainingStep
을 빌드하는 방법의 예입니다.
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
) ] )
특정 단계 유형에 대한 재시도 동작 구성에 대한 자세한 내용은 Amazon Python 설명서의 Amazon SageMaker Pipelines - 재시도 정책을