파이프라인 태스크의 재시도 구성

파이프라인 태스크가 실패할 경우 해당 태스크의 재시도를 구성하여 재실행해야 하는지 여부를 지정할 수 있습니다. 실패 시 태스크를 재실행하는 시도 횟수와 후속 재시도 사이의 지연을 설정할 수 있습니다.

Kubeflow Pipelines SDK의 set_retry 메서드를 사용하여 train_op라는 파이프라인 태스크의 실패 정책을 구성하려면 다음 코드 샘플을 사용합니다.

from kfp import dsl

@dsl.pipeline(name='custom-container-pipeline')
def pipeline():
  generate = generate_op()
  train = (
    train_op(
      training_data=generate.outputs['training_data'],
      test_data=generate.outputs['test_data'],
      config_file=generate.outputs['config_file'])
    .set_retry(
      num_retries=NUMBER_OF_RETRIES,
      backoff_duration='BACKOFF_DURATION',
      backoff_factor=BACKOFF_FACTOR,
      backoff_maxk_duration='BACKOFF_MAX_DURATION'
    )

다음을 바꿉니다.

  • NUMBER_OF_RETRIES: 실패 시 태스크를 재시도할 횟수입니다.

  • BACKOFF_DURATION: (선택사항) 태스크가 실패한 후 재시도하기 전에 대기하는 기간입니다. 이 매개변수를 설정하지 않으면 기간은 기본적으로 0s로 설정됩니다.

  • BACKOFF_FACTOR: (선택사항) 후속 재시도마다 백오프 기간에 곱하는 계수입니다. 이 매개변수를 설정하지 않으면 백오프 계수는 기본적으로 2.0으로 설정됩니다.

  • BACKOFF_MAX_DURATION: (선택사항) 후속 재시도 사이의 최대 백오프 시간입니다. 이 매개변수를 설정하지 않으면 최대 기간은 기본적으로 3600s로 설정됩니다.