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.