

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

# 限制和考量事項
<a name="notebook-auto-run-constraints"></a>

檢閱下列限制條件，確保您的筆記本工作順利完成。Studio 使用 Papermill 執行筆記本。您可能需要更新 Jupyter 筆記本以符合 Papermill 的要求。也有針對 LCC 指令碼內容的限制，並且您需要了解與 VPC 組態相關的重要詳細資料。

## JupyterLab 版本
<a name="notebook-auto-run-constraints-jpt"></a>

支援 JupyterLab 4.0 版。

## 安裝需要重新啟動核心的套件
<a name="notebook-auto-run-constraints-pmill-pkg"></a>

Papermill 不支援調用 `pip install` 來安裝需要重新啟動內核的軟體套件。在此情況下，請在初始化指令碼中使用 `pip install`。對於不需要重新啟動核心的套件安裝，您仍然可以在筆記本中包含 `pip install`。

## 使用 Jupyter 註冊的核心和語言名稱
<a name="notebook-auto-run-constraints-pmill-names"></a>

Papermill 會為特定內核和語言註冊翻譯器。如果您使用自帶執行個體 (BYOI)，請使用下列程式碼片段所示的標準核心名稱：

```
papermill_translators.register("python", PythonTranslator)
papermill_translators.register("R", RTranslator)
papermill_translators.register("scala", ScalaTranslator)
papermill_translators.register("julia", JuliaTranslator)
papermill_translators.register("matlab", MatlabTranslator)
papermill_translators.register(".net-csharp", CSharpTranslator)
papermill_translators.register(".net-fsharp", FSharpTranslator)
papermill_translators.register(".net-powershell", PowershellTranslator)
papermill_translators.register("pysparkkernel", PythonTranslator)
papermill_translators.register("sparkkernel", ScalaTranslator)
papermill_translators.register("sparkrkernel", RTranslator)
papermill_translators.register("bash", BashTranslator)
```

## 參數和環境變數限制
<a name="notebook-auto-run-constraints-var-limits"></a>

**參數和環境變數限制。**您建立筆記本工作時，該工作會接收您指定的參數和環境變數。您最多可以傳遞 100 個參數。每個參數名稱最多可以有 256 個字元，相關聯的值最多可以有 2500 個字元。如果傳遞環境變數，您最多可以傳遞 28 個變數。變數名稱和相關聯值的最多可以有 512 個字元。如果您需要的環境變數數量超過 28 個，請在對您可以使用的環境變數沒有數量限制的初始化指令碼中使用其他環境變數。

## 檢視任務和任務定義
<a name="notebook-auto-run-constraints-view-job"></a>

**檢視任務和任務定義。**如果您在 JupyterLab 筆記本的 Studio UI 中排程筆記本任務，則可以在 Studio UI 中[檢視您的筆記本任務](https://docs.aws.amazon.com/sagemaker/latest/dg/view-notebook-jobs.html)和您的[筆記本任務定義](https://docs.aws.amazon.com/sagemaker/latest/dg/view-def-detail-notebook-auto-run.html)。如果您已使用 SageMaker Python SDK 排程筆記本任務，您只能檢視任務 - SageMaker Python SDK 筆記本任務步驟不會建立任務定義。若要檢視您的任務，您也需要將額外的標籤提供給筆記本任務步驟執行個體。如需詳細資訊，請參閱[在 Studio UI 儀表板中檢視您的筆記本任務](create-notebook-auto-run-sdk.md#create-notebook-auto-run-dash)。

## 影像
<a name="notebook-auto-run-constraints-image"></a>

您需要管理映像限制條件，這取決於您在 Studio 中執行筆記本任務，還是在管道中執行 SageMaker Python SDK 筆記本任務步驟。

### SageMaker AI 筆記本任務的映像限制條件 (Studio)
<a name="notebook-auto-run-constraints-image-studio"></a>

**映像和內核支援。**啟動筆記本工作的驅動程式假設存在下列事實：
+ 在 Studio 或自帶(BYO)映像中安全了基本 Python 執行期環境，並且這是 Shell 中的預設設置。
+ 基本 Python 執行期環境包括 Jupyter 用戶端，其中包含正確設定的核心核規格。
+ 基本 Python 執行期環境包括 `pip` 函式，因此筆記本工作可以安裝系統依賴項。
+ 對於具有多個環境的映像，您的初始化指令碼應該在安裝特定於筆記本的套件之前，切換到適當的核心特定環境。在設定核心 Python 執行期環境之後，您應該切換回預設的 Python 執行期環境 (如果與核心執行期環境不同)。

啟動筆記本作業的驅動程式是 bash 指令碼，Bash v4 必須在 /bin/bash 中可用。

**自帶映像 (BYOI) 的 root 權限。**您必須擁有自己 Studio 映像的 root 權限，無論是具有 root 使用者身分還是擁有 `sudo` 存取權。如果您不是 root 使用者，而是能夠透過 `sudo` 存取 root 權限，請使用 **1000/100** 作為 `UID/GID`。

### SageMaker AI Python SDK 筆記本任務的映像限制條件
<a name="notebook-auto-run-constraints-image-sdk"></a>

筆記本任務步驟支援下列映像：
+ [Amazon SageMaker 映像可與 Studio Classic 筆記本搭配使用](notebooks-available-images.md) 中列出的 SageMaker Distribution 映像。
+ 上一個清單中基於 SageMaker Distribution 映像的自訂映像。使用 [SageMaker Distribution 映像](https://github.com/aws/sagemaker-distribution)作為基礎。
+ 預先安裝筆記本任務相依性的自訂映像 (BYOI)，即 [sagemaker-headless-execution-driver](https://pypi.org/project/sagemaker-headless-execution-driver/)。您的映像必須符合以下要求：
  + 映像已預先安裝筆記本任務相依性。
  + 基本 Python 執行時期環境已安裝，且是 shell 環境中的預設值。
  + 基本 Python 執行期環境包括 Jupyter 用戶端，其中包含正確設定的核心核規格。
  + 您必須具有根權限，無論是以根使用者身分還是透過 `sudo` 存取。如果您不是 root 使用者，而是能夠透過 `sudo` 存取 root 權限，請使用 **1000/100** 作為 `UID/GID`。

## 工作建立期間使用的 VPC 子網路
<a name="notebook-auto-run-constraints-vpc"></a>

如果您使用 VPC，Studio 會使用您的私有子網路來建立工作。指定一到五個私有子網路 (和 1-15 個安全群組)。

如果您使用具有私有子網路的 VPC，則必須選擇下列其中一個選項，以確保筆記本工作可以連線至相依服務或資源：
+ 如果任務需要存取支援介面 VPC 端點的 AWS 服務，請建立端點以連線至服務。如需支援介面端點的服務清單，請參閱[AWS 與 整合的 服務 AWS PrivateLink](https://docs.aws.amazon.com/vpc/latest/privatelink/aws-services-privatelink-support.html)。如需建立介面 VPC 端點的資訊，請參閱[使用介面 VPC 端點存取 AWS 服務](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html)。至少必須提供 Amazon S3 VPC 端點閘道。
+ 如果筆記本任務需要存取不支援介面 VPC 端點 AWS 的服務，或存取外部的資源 AWS，請建立 NAT 閘道並設定安全群組以允許傳出連線。如需替 VPC 設定 NAT 閘道的相關資訊，請參閱 [Amazon Virtual Private Cloud 使用者指南](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html)中的* VPC 搭配公有與私有子網路 (NAT)* 的相關文章。

## 服務限制
<a name="notebook-auto-run-constraints-service-limit"></a>

由於筆記本工作排程器是從 Pipelines、SageMaker 訓練和 Amazon EventBridge 服務建置的，因此您的筆記本任務會受到其服務特定配額的限制。如果超出這些配額，您可能會看到與這些服務相關的錯誤訊息。例如，與一次可以執行的管道數量，以及單一事件匯流排可以設定的規則數量相關的限制。如需 SageMaker AI 配額的詳細資訊，請參閱 [Amazon SageMaker AI 端點與配額](https://docs.aws.amazon.com/general/latest/gr/sagemaker.html)。如需與 EventBridge 配額相關的詳細資訊，請參閱 [Amazon EventBridge 配額](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-quota.html)。