選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

對 Amazon SageMaker 管道進行故障診斷

焦點模式
對 Amazon SageMaker 管道進行故障診斷 - Amazon SageMaker AI

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

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

使用 Amazon SageMaker Pipelines 時,您可能會因為各種原因而遇到問題。本主題提供與常見錯誤及解決方法相關的資訊。

管道定義問題

您的管道定義可能未正確格式化。這可能會導致 執行失敗或工作不正確。建立或執行管道時,可能會發現這些錯誤。如果您的定義未驗證,管道會傳回錯誤訊息,指出 JSON 檔案格式不正確的字元。若要修正此問題,請檢閱使用 SageMaker AI Python SDK 建立的步驟,以確保準確性。

您只能在管道定義中包含一次步驟。因此,在同一管道中,步驟不能同時作為條件步驟管道的一部分存在。

檢查管道日誌

您可以使用下列命令來檢視步驟的狀態:

execution.list_steps()

每個步驟都包含下列資訊:

  • 管道啟動的實體 ARN,例如 SageMaker AI 任務 ARN、模型 ARN 或模型套件 ARN。

  • 失敗原因包括步驟失敗的簡要說明。

  • 如果步驟是條件步驟,則會包含條件是否評估為真或假。 

  • 如果執行作業重複使用先前的任務執行,則 CacheHit 會列出來源執行項目。 

您也可以在 Amazon SageMaker Studio 介面中檢視錯誤訊息和日誌。如需有關如何在 Studio 中查看日誌的資訊,請參閱檢視管道執行的詳細資訊

缺少許可

建立管道執行的角色以及在管道執行中建立每個作業的步驟都需要正確的權限。如果沒有這些許可,您可能無法提交管道執行或如預期執行 SageMaker AI 任務。要確保正確設定許可,請參閱IAM 存取管理

工作執行錯誤

執行步驟時,您可能會遇到問題,因為指令碼中定義 SageMaker AI 任務功能的問題。每個工作都有一組 CloudWatch 日誌。要在 Studio 中檢視這些日誌,請參閱檢視管道執行的詳細資訊。如需有關搭配 SageMaker AI 使用 CloudWatch 日誌的資訊,請參閱 Amazon SageMaker AI 傳送至 Amazon CloudWatch Logs 的日誌群組和串流

屬性檔錯誤

如果在管道中錯誤地實作屬性檔,您可能會遇到問題。要確保屬性檔按預期實作,請參閱在步驟之間傳遞資料

將指令碼複製到 Dockerfile 中容器的問題

您可以將指令碼複製到容器,或透過 entry_point引數 (估算器實體的) 或 code引數 (處理器實體的) 傳遞,如下列程式碼範例所示。

step_process = ProcessingStep( name="PreprocessAbaloneData", processor=sklearn_processor, inputs = [ ProcessingInput( input_name='dataset', source=..., destination="/opt/ml/processing/code", ) ], outputs=[ ProcessingOutput(output_name="train", source="/opt/ml/processing/train", destination = processed_data_path), ProcessingOutput(output_name="validation", source="/opt/ml/processing/validation", destination = processed_data_path), ProcessingOutput(output_name="test", source="/opt/ml/processing/test", destination = processed_data_path), ], code=os.path.join(BASE_DIR, "process.py"), ## Code is passed through an argument cache_config = cache_config, job_arguments = ['--input', 'arg1'] ) sklearn_estimator = SKLearn( entry_point=os.path.join(BASE_DIR, "train.py"), ## Code is passed through the entry_point framework_version="0.23-1", instance_type=training_instance_type, role=role, output_path=model_path, # New sagemaker_session=sagemaker_session, # New instance_count=1, # New base_job_name=f"{base_job_prefix}/pilot-train", metric_definitions=[ {'Name': 'train:accuracy', 'Regex': 'accuracy_train=(.*?);'}, {'Name': 'validation:accuracy', 'Regex': 'accuracy_validation=(.*?);'} ], )
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。