故障診斷 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

故障診斷

如果您在 Amazon SageMaker Batch Transform 中發生錯誤,請參閱下列疑難排解提示。

最大逾時錯誤

如果您在執行批次轉換工作時收到最大逾時錯誤,請嘗試下列方式:

  • 從單一記錄 BatchStrategy 開始,您在 MaxPayloadInMB 參數中指定的預設值 (6 MB) 或更小的批次大小,以及一個小範例資料集。調整最大逾時參數 InvocationsTimeoutInSeconds (最多 1 小時),直到您收到成功的調用回應為止。

  • 收到成功的調用回應之後,請增加 MaxPayloadInMB (上限 100 MB) 和 InvocationsTimeoutInSeconds 參數,找出可支援所需模型逾時的批次大小上限。您可以在此步驟使用單一記錄或多重記錄 BatchStrategy

    注意

    超過 MaxPayloadInMB 限制會導致錯誤。大型資料集無法分割、SplitType 參數設為無,或資料集的個別記錄超出限制時,都可能會發生這個問題。

  • (選用) 調整 MaxConcurrentTransforms 參數;此參數會指定批次轉換工作中,可以傳送至每個執行個體的平行請求數量上限。然而,MaxConcurrentTransforms * MaxPayloadInMB 的值不得超過 100 MB。

輸出不完整

SageMaker 使用 Amazon S3 分段上傳API,將批次轉換工作的結果上傳至 Amazon S3。如果發生錯誤,則會將上傳結果從 Amazon S3 移除。在某些情況下,例如網路中斷時,未完成的分段上傳可能會留在 Amazon S3。如果您有多個輸入檔案,但部分檔案無法由 SageMaker 批次轉換處理,則可能會發生不完整的上傳。無法處理的輸入檔案在 Amazon S3 中不會有對應的輸出檔案。

為了避免產生儲存費用,我們建議您將 S3 儲存貯體政策新增到 S3 儲存貯體的生命週期規則。此政策會刪除可能存放在 S3 儲存貯體中的不完整分段上傳。如需詳細資訊,請參閱物件生命週期管理

工作顯示為 failed

如果批次轉換任務因為資料集問題而無法處理輸入檔案, 會將任務 SageMaker 標記為 failed。如果輸入檔包含錯誤的記錄,轉換任務不會為該輸入檔建立輸出檔,因為這樣做會阻止它在轉換資料中維持與輸入檔相同的順序。當您的資料集有多個輸入檔,即使轉換任務無法處理其中一個檔案,仍會持續處理。處理檔案仍會產生可用的結果。

如果您使用的是自己的演算法,當演算法在輸入檔中找到錯誤記錄時,您可以使用預留位置文字,例如 ERROR。例如,如果資料集中的最後一個記錄是錯誤的,演算法會將該記錄的預留位置文字放在輸出檔中。