本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
讓 Amazon SageMaker Clarify 任務存取 Amazon 中的資源 VPC
若要控制對資料和 SageMaker Clarify 任務的存取,建議您建立私有 Amazon VPC並進行設定,以便無法透過公有網際網路存取您的任務。如需建立和設定 Amazon VPC 以處理任務的資訊,請參閱在您的 Amazon 中將 SageMaker 處理任務存取權授予 資源VPC。
本文件說明如何新增符合 SageMaker Clarify 任務需求的其他 Amazon VPC組態。
設定 Amazon VPC Access 的 SageMaker Clarify 任務
您需要在設定私有 Amazon VPC for SageMaker Clarify 任務時指定子網路和安全群組,並在計算訓練後偏差指標和特徵貢獻時,讓任務從 SageMaker 模型取得推論,以協助解釋模型預測。
SageMaker 釐清任務 Amazon VPC 子網路和安全群組
根據您的建立任務的方式,VPC可以將私有 Amazon 中的子網路和安全群組以各種方式指派給 SageMaker Clarify 任務。
-
SageMaker 主控台 :在SageMaker儀表板 中建立任務時提供此資訊。從處理功能表中選擇處理工作,然後選擇建立處理工作。在網路面板中選取 VPC選項,並使用下拉式清單提供子網路和安全群組。確定此面板中提供的網路隔離選項已關閉。
-
SageMaker API:使用
CreateProcessingJob
的NetworkConfig.VpcConfig
請求參數API,如下列範例所示:"NetworkConfig": { "VpcConfig": { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] } }
-
SageMaker Python SDK:使用
SageMakerClarifyProcessor
API或 Processor
的 NetworkConfig
參數API,如下列範例所示:from sagemaker.network import NetworkConfig network_config = NetworkConfig( subnets=[ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2", ], security_group_ids=[ "sg-0123456789abcdef0", ], )
SageMaker 使用 資訊建立網路介面,並將其連接至 SageMaker Clarify 任務。網路介面提供 SageMaker Clarify 任務,在您的 Amazon 中具有VPC未連線至公有網際網路的網路連線。它們也讓 SageMaker Clarify 任務能夠連線至私有 Amazon 中的資源VPC。
注意
SageMaker Clarify 任務的網路隔離選項必須關閉 (預設為關閉選項),以便 SageMaker Clarify 任務可以與影子端點通訊。
設定模型 Amazon VPC for Inference
為了計算訓練後偏差指標和可解釋性, SageMaker Clarify 任務需要從 SageMaker Clarify 處理任務分析組態model_name
參數指定的 SageMaker 模型取得推論。或者,如果您在 SageMaker Python SageMakerClarifyProcessor
API中使用 SDK,任務需要取得 ModelConfigmodel_name
指定的 。為了達成此目標, SageMaker Clarify 任務會使用 模型建立暫時端點,稱為影子端點 ,然後將模型的 Amazon VPC組態套用至影子端點。
若要將私有 Amazon 中的子網路和安全群組指定VPC給 SageMaker模型,請使用 的VpcConfig
請求參數,CreateModel
API或使用主控台中的 SageMaker 儀表板建立模型時提供此資訊。以下為您包含在對 VpcConfig
的呼叫內的 CreateModel
參數的範例:
"VpcConfig": { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] }
您可以使用 SageMaker Clarify 處理任務的分析組態initial_instance_count
參數,指定要啟動的影子端點執行個體數目。或者,如果您在 SageMaker Python SageMakerClarifyProcessor
API中使用 SDK,任務需要取得 ModelConfiginstance_count
指定的 。
注意
即使您在建立影子端點時只請求一個執行個體,您也需要在模型ModelConfig
ClientError:託管端點時發生錯誤 sagemaker-clarify-endpoint-XXX:失敗。原因:找不到至少 2 個與 SageMaker 子網路YYY重疊之請求執行個體類型的可用區域 (含)。
如果您的模型在 Amazon S3 中需要模型檔案,則模型 Amazon VPC 需要具有 Amazon S3 VPC端點。如需建立和設定 SageMaker 模型 VPC Amazon 的詳細資訊,請參閱 讓 SageMaker 託管端點存取 Amazon 中的資源 VPC。
設定私有 Amazon VPC for SageMaker Clarify 任務
一般而言,您可以依照設定私有VPC進行處理中的步驟 SageMaker ,設定私有 Amazon VPC for SageMaker Clarify 任務。以下是 SageMaker Clarify 任務的一些重點和特殊要求。
連線至 Amazon 外部的資源 VPC
如果您設定 Amazon VPC使其沒有公有網際網路存取,則需要一些額外的設定,才能授予 SageMaker Clarify 任務存取 Amazon 外部的資源和服務VPC。例如,Amazon S3 VPC端點是必要的,因為 SageMaker Clarify 任務需要從 S3 儲存貯體載入資料集,並將分析結果儲存至 S3 儲存貯體。如需詳細資訊,請參閱建立指南的建立 Amazon S3 VPC端點。此外,如果 SageMaker Clarify 任務需要從影子端點取得推論,則需要呼叫其他數個 AWS 服務。
-
建立 Amazon SageMaker API 服務VPC端點 : SageMaker Clarify 任務需要呼叫 Amazon SageMaker API 服務來操作影子端點,或描述 Amazon VPC 驗證的 SageMaker 模型。您可以遵循使用 AWS 部落格保護所有 Amazon SageMaker API 呼叫 PrivateLink
中提供的指引,以建立允許 SageMaker Clarify 任務進行服務呼叫的 Amazon SageMaker API VPC端點。請注意,Amazon SageMaker API 服務的服務名稱為 com.amazonaws.
,其中region
.sagemaker.apiregion
是 Amazon VPC所在的區域名稱。 -
建立 Amazon SageMaker Runtime VPC端點 : SageMaker Clarify 任務需要呼叫 Amazon SageMaker Runtime 服務,將調用路由至影子端點。設定步驟與 Amazon SageMaker API 服務的步驟類似。請注意,Amazon SageMaker Runtime 服務的服務名稱為
com.amazonaws.
,其中region
.sagemaker.runtimeregion
是 Amazon VPC所在的區域名稱。
設定 Amazon VPC Security Group
SageMaker 當以下列其中一種方式指定兩個或多個處理執行個體時,說明任務支援分散式處理:
-
SageMaker 主控台 :執行個體計數是在建立處理任務頁面上任務設定面板的資源組態部分中指定。
-
SageMaker API:當您使用 建立任務時,會
InstanceCount
指定CreateProcessingJob
API。 -
SageMaker Python SDK:使用 SageMakerClarifyProcessor
API或 處理器 instance_count
時指定 API。
在分散式處理中,必須允許同一處理任務內不同執行個體之間的通訊。若要執行此操作,請為安全群組設定規則,允許相同安全群組成員彼此間的傳入連線。如需資訊,請參閱安全群組規則。