Wiederholungsversuche für eine Pipeline-Aufgabe konfigurieren

Sie können angeben, ob eine Pipeline-Aufgabe bei einem Fehler noch einmal ausgeführt werden muss, indem Sie die Wiederholungsversuche für diese Aufgabe konfigurieren. Sie können die Anzahl der Versuche zum erneuten Ausführen der Aufgabe bei einem Fehler und die Verzögerung zwischen den einzelnen Wiederholungen festlegen.

Mit dem folgenden Codebeispiel können Sie die Fehlerrichtlinie einer Pipelineaufgabe mit dem Namen train_op mit 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: Die Anzahl der Wiederholungen, die bei einem Fehler versucht werden sollen.

  • BACKOFF_DURATION: Optional. Die Wartezeit nach dem Fehlschlagen der Aufgabe, bevor sie 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 Wiederholungsversuch 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.