本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
管道步驟的重試政策
重試政策可協助您在發生錯誤後自動重試管道步驟。任何管道步驟都可能會遇到例外狀況,而發生例外狀況的原因有很多。在某些情況下,重試可以解決這些問題。透過管道步驟的重試政策,您可以選擇是否重試特定管道步驟。
重試政策僅支援下列管道步驟:
注意
在調校和 AutoML 步驟中執行的任務會在內部執行重試,而且不會重試 SageMaker.JOB_INTERNAL_ERROR
例外狀況類型,即使已設定重試政策也是如此。您可以使用 編寫自己的重試策略 SageMaker API。
重試政策支援的例外狀況類型
管道步驟的重試政策支援下列例外狀況類型:
-
Step.SERVICE_FAULT
:如果呼叫下游服務時發生內部伺服器錯誤或暫時性錯誤,就會發生這些例外狀況。管道會自動重試此類錯誤。憑藉重試政策,您可以覆寫此例外狀況類型的預設重試操作。 -
Step.THROTTLING
:呼叫下游服務時可能會發生限流例外狀況。管道會自動重試此類錯誤。憑藉重試政策,您可以覆寫此例外狀況類型的預設重試操作。 -
SageMaker.JOB_INTERNAL_ERROR
:當 SageMaker 任務傳回 時,會發生這些例外狀況InternalServerError
。在此情況下,啟動新任務可能會修正暫時性問題。 -
SageMaker.CAPACITY_ERROR
: SageMaker 任務可能會遇到 Amazon EC2InsufficientCapacityErrors
,這會導致 SageMaker 任務失敗。您可以啟動新 SageMaker 任務來重試,以避免問題發生。 -
SageMaker.RESOURCE_LIMIT
:您可以在執行 SageMaker 任務時超過資源限制配額。您可以在短時間內等待並重試執行 SageMaker 任務,並查看資源是否已釋出。
重試政策的JSON結構描述
管道的重試政策具有下列JSON結構描述:
"RetryPolicy": { "ExceptionType": [String] "IntervalSeconds": Integer "BackoffRate": Double "MaxAttempts": Integer "ExpireAfterMin": Integer }
-
ExceptionType
:此欄位需要字串陣列格式的下列例外狀況類型。-
Step.SERVICE_FAULT
-
Step.THROTTLING
-
SageMaker.JOB_INTERNAL_ERROR
-
SageMaker.CAPACITY_ERROR
-
SageMaker.RESOURCE_LIMIT
-
-
IntervalSeconds
(可選):第一次重試嘗試之前的秒數 (預設值為 1)。IntervalSeconds
的最大值為 43200 秒 (12 小時)。 -
BackoffRate
(可選):乘數,重試間隔會在每次嘗試時隨之增加 (預設值為 2.0)。 -
MaxAttempts
(可選):正整數,代表重試次數上限 (預設值為 5)。如果出現錯誤的次數超過MaxAttempts
指定的次數,則重試會停止且一般錯誤處理會繼續執行。值為 0 表示永遠不會重試錯誤。MaxAttempts
最大值為 20。 -
ExpireAfterMin
(可選):正整數,代表重試的最大時間範圍。如果從步驟開始計數ExpireAfterMin
分鐘後再次發生錯誤,則重試會停止且一般錯誤處理會繼續執行。值為 0 表示永遠不會重試錯誤。ExpireAfterMin
的最大值為 14,400 分鐘 (10 天)。注意
只能指定
MaxAttempts
或ExpireAfterMin
中的一個,但不能同時指定兩者;如果未指定兩者,則MaxAttempts
會變成預設值。如果在一項政策中識別了兩個屬性,則重試政策會產生驗證錯誤。