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