Wiederholungsversuche für eine Pipeline-Aufgabe konfigurieren

Sie können angeben, ob eine Pipeline-Aufgabe bei einem Fehler noch einmal ausgeführt werden muss. Dazu konfigurieren Sie die Wiederholungen für diese Aufgabe. Sie können die Anzahl der Versuche festlegen, mit denen die Aufgabe bei einem Fehler noch einmal ausgeführt wird, und die Verzögerung zwischen den nachfolgenden Wiederholungen.

Mit dem folgenden Codebeispiel können Sie die Fehlerrichtlinie für eine Pipelineaufgabe namens train_op mithilfe der Methode set_retry im Kubeflow Pipelines SDK konfigurieren:

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'
    )

Ersetzen Sie Folgendes:

  • NUMBER_OF_RETRIES: Gibt an, wie oft die Aufgabe bei einem Fehler wiederholt werden soll.

  • BACKOFF_DURATION: Optional. Die Wartezeit nach dem Fehlschlagen der Aufgabe, bevor der Vorgang wiederholt wird. Wenn Sie diesen Parameter nicht festlegen, wird die Dauer standardmäßig auf 0s gesetzt.

  • BACKOFF_FACTOR: Optional. Der Faktor, mit dem die Backoff-Dauer für jeden nachfolgenden Versuch multipliziert wird. Wenn Sie diesen Parameter nicht festlegen, wird der Backoff-Faktor standardmäßig auf 2.0 gesetzt.

  • BACKOFF_MAX_DURATION: Optional. Die maximale Backoff-Dauer zwischen aufeinanderfolgenden Wiederholungen. Wenn Sie diesen Parameter nicht festlegen, wird die maximale Dauer standardmäßig auf 3600s gesetzt.