使用 Boto3 部署编译的模型 - 亚马逊 SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 Boto3 部署编译的模型

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

部署模型

满足先决条件后,使用create_modelcreate_enpoint_config、和create_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-ExecutionRole IAM 角色。

有关、和create_modelcreate_endpoint_config、的完整语法 create_endpoint APIs create_model,请分别参见create_endpoint_configcreate_endpoint、和。

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

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 AI 训练模型,请将环境变量指定SAGEMAKER_SUBMIT_DIRECTORY为包含训练脚本的完整 Amazon S3 存储桶 URI。