使用 Boto3 部署已编译的模型 - Amazon SageMaker
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Boto3 部署已编译的模型

如果模型是使用 、 或 控制台编译的适用于 Python (Boto3) 的 AWS 软件开发工具包,则必须满足AWS CLI先决条件Amazon SageMaker部分。按照以下步骤,使用 创建和部署 SageMaker Neo Amazon Web Services 适用于 Python (Boto3) 的开发工具包 编译的模型。

主题

部署模型

在满足先决条件后,请使用 create_modelcreate_enpoint_configcreate_endpoint APIs。

以下示例说明如何使用这些 APIs 部署使用 Neo 编译的模型:

import boto3 client = boto3.client('sagemaker') # create sagemaker model create_model_api_response = client.create_model( ModelName='my-sagemaker-model', PrimaryContainer={ 'Image': <insert the ECR Image URI>, 'ModelDataUrl': 's3://path/to/model/artifact/model.tar.gz', 'Environment': {} }, ExecutionRoleArn='ARN for AmazonSageMaker-ExecutionRole' ) print ("create_model API response", create_model_api_response) # create sagemaker endpoint config create_endpoint_config_api_response = client.create_endpoint_config( EndpointConfigName='sagemaker-neomxnet-endpoint-configuration', ProductionVariants=[ { 'VariantName': <provide your variant name>, 'ModelName': 'my-sagemaker-model', 'InitialInstanceCount': 1, 'InstanceType': <provide your instance type here> }, ] ) print ("create_endpoint_config API response", create_endpoint_config_api_response) # create sagemaker endpoint create_endpoint_api_response = client.create_endpoint( EndpointName='provide your endpoint name', EndpointConfigName=<insert your endpoint config name>, ) print ("create_endpoint API response", create_endpoint_api_response)
注意

AmazonSageMakerFullAccessAmazonS3ReadOnlyAccess 策略必须附加到AmazonSageMaker-ExecutionRoleIAM角色。

有关 create_modelcreate_endpoint_configcreate_endpoint APIs 的完整语法,请分别参阅 create_model create_endpoint_config create_endpoint

如果您未使用 训练模型SageMaker,请指定以下环境变量:

MXNet and PyTorch
"Environment": { "SAGEMAKER_PROGRAM": "inference.py", "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code", "SAGEMAKER_CONTAINER_LOG_LEVEL": "20", "SAGEMAKER_REGION": "insert your region", "MMS_DEFAULT_RESPONSE_TIMEOUT": "500" }
TensorFlow
"Environment": { "SAGEMAKER_PROGRAM": "inference.py", "SAGEMAKER_SUBMIT_DIRECTORY": "/opt/ml/model/code", "SAGEMAKER_CONTAINER_LOG_LEVEL": "20", "SAGEMAKER_REGION": "insert your region" }

如果您使用 训练了模型SageMaker,请将 环境变量指定为包含训练脚本SAGEMAKER_SUBMIT_DIRECTORY的完整Amazon S3存储桶 URI。