您可以為管道工作設定重試次數,指定工作失敗時是否必須重新執行。您可以設定工作失敗時的重試次數,以及後續重試之間的延遲時間。
使用下列程式碼範例,透過 Kubeflow Pipelines SDK 中的 set_retry
方法,設定名為 train_op
的管道工作失敗政策:
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'
)
更改下列內容:
NUMBER_OF_RETRIES:工作失敗時的重試次數。
BACKOFF_DURATION:選用。工作失敗後等待重試的時間長度。如果未設定此參數,系統預設會將時間長度設為
0s
。BACKOFF_FACTOR:選用。每次後續重試時,退避時間會乘上的係數。如未設定這項參數,預設的退避因數為
2.0
。BACKOFF_MAX_DURATION:選用。後續重試之間的輪詢持續時間上限。 如果未設定此參數,預設最長時限為
3600s
。