

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

# 建立 Amazon SageMaker AI 資源
<a name="ml-creating-your-amazon-sagemaker-resource"></a>

 若要發佈模型套件或演算法產品，您必須在 Amazon SageMaker AI 中建立個別[的模型套件資源](https://docs.aws.amazon.com/marketplace/latest/userguide/ml-creating-your-amazon-sagemaker-resource.html#ml-creating-your-model-package-product)或[演算法資源](https://docs.aws.amazon.com/marketplace/latest/userguide/ml-creating-your-amazon-sagemaker-resource.html#ml-creating-your-algorithm-product)。當您為 AWS Marketplace 產品建立資源時，必須透過驗證步驟進行認證。驗證步驟需要您提供資料來測試模型套件或演算法資源，才能發佈。下列各節說明如何建立 SageMaker AI 資源，可以是模型套件資源或演算法資源。這包括設定驗證規格，告知 SageMaker AI 如何執行驗證。

**注意**  
如果您尚未為產品建立映像並將其上傳至 Amazon Elastic Container Registry (Amazon ECR)，請參閱 [將您的程式碼封裝到 中機器學習產品的映像中 AWS Marketplace](ml-packaging-your-code-into-images.md)和 [將映像上傳至 Amazon Elastic Container Registry](ml-uploading-your-images.md) 以取得如何執行此操作的資訊。

**Topics**
+ [建立模型套件](#ml-creating-your-model-package-product)
+ [建立您的演算法](#ml-creating-your-algorithm-product)

## 建立模型套件
<a name="ml-creating-your-model-package-product"></a>

 以下是為 建立模型套件的要求 AWS Marketplace：
+  儲存在 [Amazon ECR](https://aws.amazon.com/ecr/) 中的推論映像 
+  （選用） 模型成品，分別存放在 [Amazon S3](https://aws.amazon.com/s3/) 中 
+ 用於推論的測試資料，存放在 Amazon Simple Storage Service 中 

**注意**  
 以下是關於建立模型套件產品。如需 SageMaker AI 中模型套件的詳細資訊，請參閱[建立模型套件資源](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-mkt-create-model-package.html)。

### 建立模型套件資源
<a name="ml-create-model-package"></a>

下列程序會逐步引導您建立模型套件資源。

**步驟 1：建立模型套件資源**

1. 開啟 [Amazon SageMaker AI 主控台](https://us-east-2.console.aws.amazon.com/sagemaker/home)。

1. 查看頁面右上角 AWS ，確保您位於要從中發佈的區域。如需發佈，請參閱 [支援 AWS 區域 發佈](ml-service-restrictions-and-limits.md#ml-supported-aws-regions-for-publishing)一節。您在先前步驟中上傳至 Amazon ECR 的推論映像必須位於相同的區域。

1. 在左側導覽功能表中，選擇**模型套件**。

1. 選擇 **Create model package (建立模型套件)**。

建立套件之後，您需要設定推論套件的規格。

**步驟 2：設定推論規格**

1.  為您的模型套件提供**名稱** （例如 {{my-model-package}})。

1.  針對**推論影像的位置**，輸入已上傳至 Amazon ECR 的 推論影像的 URI。您可以在 [Amazon ECR 主控台](https://us-east-2.console.aws.amazon.com/ecr/repositories)中放置映像來擷取 URI。

1.  如果您的訓練模型成品與推論映像中的邏輯綁定在一起，請將**模型資料成品的位置**保留空白。否則，請指定模型成品壓縮檔案 (.tar.gz) 的完整 Amazon S3 位置。

1.  使用下拉式清單，為即時推論 （也稱為*端點*) 和批次轉換任務選擇支援的推論映像執行個體類型。

1.  選擇**下一步**。

 在建立和發佈模型套件之前，需要驗證以確保其如預期般運作。這需要您使用測試資料來執行批次轉換任務，以進行您提供的推論。驗證規格會告知 SageMaker AI 如何執行驗證。

**步驟 3：設定驗證規格**

1.  將 **中的發佈此模型套件 AWS Marketplace**設定為**是**。如果您將此設定為**否**，您稍後就無法發佈此模型套件。選擇**是**[可驗證](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateModelPackage.html#sagemaker-CreateModelPackage-request-CertifyForMarketplace) 的模型套件 AWS Marketplace ，且需要驗證步驟。

1.  如果這是第一次完成此程序，請選擇為 IAM **角色建立新**角色。 ****Amazon SageMaker AI 會在部署模型套件時使用此角色。這包括動作，例如從 Amazon ECR 提取影像，以及從 Amazon S3 提取成品。檢閱設定，然後選擇**建立角色**。在此 建立角色會將 [ AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess) IAM 政策所述的許可授予您建立的角色。

1.  在驗證設定檔中編輯 **JSON**。 如需允許值的詳細資訊，請參閱 [TransformJobDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformJobDefinition.html)。

   1.  `TransformInput.DataSource.S3Uri`：將 設定為存放推論測試資料的位置。

   1.  `TransformInput.ContentType`：指定您的測試資料內容類型 （例如 `application/json`、`image/png `、 `text/plain`或任何其他值）。SageMaker AI 不會驗證實際的輸入資料。此值會傳遞至 `Content-type`標頭值中的容器 HTTP 端點。

   1.  `TransformInput.CompressionType`：`None`如果 Amazon S3 中的推論測試資料未壓縮，請將 設定為 。

   1.  `TransformInput.SplitType`：設定為 `None`以將 Amazon S3 中的每個物件整體傳遞以進行推論。

   1.  `TransformOutput.S3OutputPath`：將 設定為存放推論輸出的位置。

   1.  `TransformOutput.AssembleWith`：將 設定為 `None`，將每個推論輸出為 Amazon S3 中的個別物件。

1.  選擇 **Create model package (建立模型套件)**。

 SageMaker AI 從 Amazon ECR 提取推論映像、將任何成品複製到推論容器，並使用測試資料執行批次轉換任務以進行推論。驗證成功後，狀態會變更為**已完成**。

**注意**  
 驗證步驟不會使用您的測試資料評估模型的準確性。驗證步驟會檢查容器是否如預期執行和回應。

 您已完成建立模型產品資源。繼續進行[在 中列出您的產品 AWS Marketplace](ml-publishing-your-product-in-aws-marketplace.md)。

## 建立您的演算法
<a name="ml-creating-your-algorithm-product"></a>

 以下是為 建立演算法的要求 AWS Marketplace：
+ 儲存在 Amazon ECR 中的推論映像 
+ 存放在 Amazon ECR 的訓練映像 
+  您的訓練測試資料，存放在 Amazon S3 中 
+ 您的推論測試資料，存放在 Amazon S3 中 

**注意**  
 下列逐步解說會建立演算法產品。如需詳細資訊，請參閱[建立演算法資源](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-mkt-create-algo.html)。

### 建立演算法資源
<a name="ml-create-algorithm"></a>

下列程序會逐步引導您在演算法套件中建立資源。

**步驟 1：建立演算法資源**

1.  開啟 [Amazon SageMaker AI 主控台](https://us-east-2.console.aws.amazon.com/sagemaker/home)。

1.  查看頁面右上角 AWS ，確保您位於要從中發佈的區域 （請參閱 [支援 AWS 區域 發佈](ml-service-restrictions-and-limits.md#ml-supported-aws-regions-for-publishing))。您在先前步驟中上傳至 Amazon ECR 的訓練和推論映像必須位於相同的區域。

1.  在左側導覽功能表中，選擇**演算法**。

1.  選擇**建立演算法**。

建立演算法套件之後，您必須設定模型訓練和調校的規格。

**步驟 2：設定訓練和調校規格**

1.  輸入演算法**的名稱** （例如 {{my-algorithm}})。

1.  對於**訓練映像**，請貼上 已上傳至 Amazon ECR 的訓練映像的完整 URI 位置。您可以在 [Amazon ECR 主控台](https://us-east-2.console.aws.amazon.com/ecr/repositories)中放置映像來擷取 URI。

1.  使用下拉式方塊，選擇訓練映像支援的訓練**執行個體類型**。

1.  在**頻道規格**區段下，為您的演算法支援的每個輸入資料集新增頻道，最多 20 個頻道的輸入來源。如需詳細資訊，請參閱[輸入資料組態](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-training-algo-running-container.html#your-algorithms-training-algo-running-container-inputdataconfig)。

1.  選擇**下一步**。

1. 如果您的演算法支援超參數和超參數調校，您必須指定調校參數。

1.  選擇**下一步**。

**注意**  
 我們強烈建議您的演算法支援超參數調校，並讓適當的參數可調校。這可讓資料科學家調校模型，以取得最佳結果。

設定調校參數之後，如果有，您必須設定推論映像的規格。

**步驟 3：設定推論影像規格**

1.  針對**推論映像的位置**，貼上上傳至 Amazon ECR 的 推論映像的 URI。您可以在 [Amazon ECR 主控台](https://us-east-2.console.aws.amazon.com/ecr/repositories)中放置映像來擷取 URI。

1.  使用下拉式清單，為您的即時推論 （也稱為*端點*) 和批次轉換任務的推論映像選擇支援的執行個體類型。

1.  選擇**下一步**。

 在建立和發佈您的演算法之前，需要驗證以確保其如預期般運作。這需要您使用訓練的測試資料執行訓練任務，並使用測試資料執行批次轉換任務，以進行您提供的推論。驗證規格會告知 SageMaker AI 如何執行驗證。

**步驟 4：設定驗證規格**

1.  將 **中的發佈此演算法 AWS Marketplace**設定為**是**。如果您將此設定為**否**，您稍後就無法發佈此演算法。選擇**是**[可驗證](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateAlgorithm.html#sagemaker-CreateAlgorithm-request-CertifyForMarketplace)您的演算法， AWS Marketplace 且需要驗證規格。

1.  如果這是您第一次為 建立機器學習套件 AWS Marketplace，請選擇為 IAM **角色建立新**角色。 ****Amazon SageMaker AI 會在訓練您的演算法和部署後續模型套件時使用此角色。這包括從 Amazon ECR 提取映像、在 Amazon S3 中存放成品，以及從 Amazon S3 複製訓練資料等動作。檢閱設定，然後選擇**建立角色**。在此 建立角色會將 [ AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess) IAM 政策所述的許可授予您建立的角色。

1.  在**訓練任務定義的**驗證設定檔中編輯 **JSON** 檔案。如需允許值的詳細資訊，請參閱 [ TrainingJobDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TrainingJobDefinition.html)。

   1.  `InputDataConfig`：在此 JSON 陣列中，為您在訓練規格步驟中指定的每個頻道新增[頻道物件](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_Channel.html)。針對每個頻道，指定訓練的測試資料存放 位置。

   1.  `OutputDataConfig`：訓練完成後，訓練容器目錄路徑中的模型成品`/opt/ml/model/`會壓縮並複製到 Amazon S3。指定存放壓縮檔案 (.tar.gz) 的 Amazon S3 位置。

1.  在**轉換 任務定義的**驗證設定檔中編輯 JSON 檔案。如需允許值的詳細資訊，請參閱 [ TransformJobDefinition](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformJobDefinition.html)。

   1.  `TransformInput.DataSource.S3Uri`：將 設定為存放推論測試資料的位置。

   1.  `TransformInput.ContentType`：指定您的測試資料內容類型。例如，`application/json`、`image/png`、 `text/plain`或任何其他值。Amazon SageMaker AI 不會驗證實際輸入資料。此值會傳遞至 `Content-type`標頭值中的容器 HTTP 端點。

   1.  `TransformInput.CompressionType`：`None`如果 Amazon S3 中的推論測試資料未壓縮，請將 設定為 。

   1.  `TransformInput.SplitType`：選擇您希望 S3 分割中物件的方式。例如， 會將 Amazon S3 中的每個物件整體`None`傳遞以進行推論。如需詳細資訊，請參閱《Amazon SageMaker AI API 參考》中的 [ SplitType](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_TransformInput.html#sagemaker-Type-TransformInput-SplitType)。

   1.  `TransformOutput.S3OutputPath`：將 設定為存放推論輸出的位置。

   1.  `TransformOutput.AssembleWith`：將 設定為 `None`，將每個推論輸出為 Amazon S3 中的個別物件。

1. 選擇**建立演算法套件**。

 SageMaker AI 從 Amazon ECR 提取訓練映像，使用您的資料執行測試訓練任務，並將模型成品存放在 Amazon S3 中。然後，它會從 Amazon ECR 提取推論映像、將成品從 Amazon S3 複製到推論容器中，並使用測試資料執行批次轉換任務以進行推論。驗證成功後，狀態會變更為**已完成**。

**注意**  
 驗證步驟不會使用您的測試資料評估訓練或模型的準確性。驗證步驟會檢查容器是否如預期執行和回應。  
驗證步驟只會驗證批次處理。您可以自行驗證即時處理是否適用於您的產品。

 您已完成建立演算法產品資源。繼續進行[在 中列出您的產品 AWS Marketplace](ml-publishing-your-product-in-aws-marketplace.md)。