Distribuzione di un modello compilato utilizzando Boto3 - Amazon SageMaker

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Distribuzione di un modello compilato utilizzando Boto3

È necessario soddisfare la sezione dei prerequisiti se il modello è stato compilato utilizzando AWS SDK for Python (Boto3) o la SageMaker console Amazon. AWS CLI Segui i passaggi seguenti per creare e distribuire un modello SageMaker NEO-compilato utilizzando Amazon Web Services SDK for Python (Boto3).

Implementazione del modello

Dopo aver soddisfatto i prerequisiti, utilizza le APIcreate_model, create_enpoint_config e create_endpoint.

L'esempio seguente mostra come utilizzare queste API per distribuire un modello compilato con 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)
Nota

Le policy AmazonSageMakerFullAccess e AmazonS3ReadOnlyAccessdevono essere associate al ruolo IAM di AmazonSageMaker-ExecutionRole.

Per la sintassi completa delle API create_model, create_endpoint_config e create_endpoint API, vedi create_model, create_endpoint_config e create_endpoint, rispettivamente.

Se non hai addestrato il tuo modello utilizzando SageMaker, specifica le seguenti variabili di ambiente:

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" }

Se hai addestrato il tuo modello utilizzando SageMaker, specifica la variabile di ambiente SAGEMAKER_SUBMIT_DIRECTORY come URI completo del bucket Amazon S3 che contiene lo script di addestramento.