Puoi specificare se un'attività della pipeline deve essere eseguita nuovamente in caso di errore configurando i tentativi per l'attività. Puoi impostare il numero di tentativi per eseguire di nuovo l'attività in caso di errore e il ritardo tra i tentativi successivi.
Utilizza il seguente esempio di codice per configurare la policy di errore di un'attività della pipeline
denominata train_op
utilizzando il metodo
set_retry
nell'SDK Kubeflow Pipelines:
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'
)
Sostituisci quanto segue:
NUMBER_OF_RETRIES: il numero di tentativi di ripetizione dell'attività in caso di errore.
BACKOFF_DURATION: (Facoltativo). La durata del tempo di attesa dopo l'errore dell'attività prima di riprovare. Se non imposti questo parametro, la durata è impostata su
0s
per impostazione predefinita.BACKOFF_FACTOR: (Facoltativo). Il fattore per cui la durata del backoff viene moltiplicata per ogni nuovo tentativo. Se non imposti questo parametro, il fattore di backoff è impostato su
2.0
per impostazione predefinita.BACKOFF_MAX_DURATION: (Facoltativo). La durata massima del backoff tra i tentativi successivi. Se non imposti questo parametro, la durata massima è impostata su
3600s
per impostazione predefinita.