Anda dapat menentukan apakah tugas pipeline harus dijalankan ulang jika gagal, dengan mengonfigurasi percobaan ulang untuk tugas tersebut. Anda dapat menetapkan jumlah upaya untuk menjalankan ulang tugas saat gagal dan penundaan antar-percobaan ulang berikutnya.
Gunakan contoh kode berikut untuk mengonfigurasi kebijakan kegagalan tugas pipeline
yang bernama train_op
menggunakan metode
set_retry
di Kubeflow Pipelines SDK:
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'
)
Ganti kode berikut:
NUMBER_OF_RETRIES: Frekuensi percobaan ulang tugas setelah gagal.
BACKOFF_DURATION: Opsional. Durasi waktu tunggu setelah tugas gagal sebelum mencoba lagi. Jika Anda tidak menetapkan parameter ini, durasi akan ditetapkan ke
0s
secara default.BACKOFF_FACTOR: Opsional. Faktor yang digunakan untuk mengalikan durasi backoff untuk setiap percobaan ulang berikutnya. Jika Anda tidak menetapkan parameter ini, faktor backoff akan ditetapkan ke
2.0
secara default.BACKOFF_MAX_DURATION: Opsional. Durasi backoff maksimum di antara percobaan ulang berikutnya. Jika Anda tidak menetapkan parameter ini, durasi maksimum akan ditetapkan ke
3600s
secara default.