如何針對將自訂容器帶到 Amazon SageMaker Studio 時的問題進行故障排除?

上次更新日期:2022 年 11 月 11 日

我想在構置自訂 Amazon SageMaker Studio 時對問題進行故障排除。

解決方案

SageMaker 映像檔是一個檔案,可識別在 SageMaker Studio 中執行 Jupyter 筆記本所需的核心、語言套件和其他相依性。這些映像檔用於建立一個環境,您可以在其中執行 Jupyter 筆記本。如果 SageMaker 提供的內建映像檔不支援您的使用案例,您可以將自訂映像檔帶入 SageMaker Studio 中使用。

在 SageMaker Studio 中使用客戶映像檔時,您可能會收到錯誤訊息。這些錯誤可能主要是因為您在容器映像檔建置程序期間設定的不正確組態所導致。因此,請確定自訂映像檔與 SageMaker Studio 相容。

為此,請在構置 Docker 文件時檢查以下內容:

  • 您已準確設定預設 UID預設 GID 值。SageMaker Studio 僅支援預設 UID預設 GID 的特定組合。對於非特權使用者,請確定預設 UID 和預設 GID 分別設定為 1000100。請確定根使用者的值都設定為 0
  • 不使用「opt/.sagemakerinternal 」和「opt/ml」目錄。這些目錄是保留的。
  • 當您建立組態檔案 app-image-config-input.json 時,請確定此檔案中 KernelSpec名稱值與關聯映像檔的名稱值相符。

安裝 Python 套件並將範圍設置為非特權使用者的範例 Dockerfile:

FROM public.ecr.aws/amazonlinux/amazonlinux:2

ARG NB_USER="sagemaker-user"
ARG NB_UID="1000"
ARG NB_GID="100"

RUN \
    yum install --assumeyes python3 shadow-utils && \
    useradd --create-home --shell /bin/bash --gid "${NB_GID}" --uid ${NB_UID} ${NB_USER} && \
    yum clean all && \
    python3 -m pip install ipykernel && \
    python3 -m ipykernel install

USER ${NB_UID}

當發生下列任一情況時,您可以在 Amazon CloudWatch Logs 中檢視錯誤訊息:

  • 映像檔版本建立失敗。
  • 您在 SageMaker Studio 中啟動映像檔時收到錯誤訊息。

您可以在日誌群組 /aws/sagemaker/studio 和日誌串流 $domainID/$userProfileName/KernelGateway/$appName 中找到這些訊息。

注意:本文假設 AWS Identity 和存取管理 (IAM) 使用者或角色已連接至 AmazonSageMakerFullAccess 政策。


此文章是否有幫助?


您是否需要帳單或技術支援?