Configurare i tentativi di ripetizione per un'attività della pipeline

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 nuovamente l'attività in caso di errore e il ritardo tra i tentativi successivi.

Utilizza il seguente esempio di codice per configurare il criterio di errore di un'attività della pipeline chiamata 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 volte per cui ripetere l'attività in caso di errore.

  • BACKOFF_DURATION: facoltativo. La durata del tempo di attesa dopo il fallimento dell'attività prima di riprovare. Se non imposti questo parametro, per impostazione predefinita la durata è impostata su 0s.

  • BACKOFF_FACTOR: facoltativo. Il fattore per cui viene moltiplicata la durata del backoff per ogni nuovo tentativo. Se non imposti questo parametro, per impostazione predefinita il coefficiente di backoff è impostato su 2.0.

  • 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.