Stellen Sie ein kompiliertes Modell mit Boto3 bereit - Amazon SageMaker AI

Stellen Sie ein kompiliertes Modell mit Boto3 bereit

Sie müssen den Abschnitt mit den Voraussetzungen erfüllen, wenn das Modell mit AWS SDK für Python (Boto3), AWS CLI oder der Konsole von Amazon SageMaker AI kompiliert wurde. Gehen Sie wie folgt vor, um ein von SageMaker NEO kompiliertes Modell mit dem Amazon Web Services SDK for Python (Boto3) zu erstellen und bereitzustellen.

Stellen Sie das Modell bereit

Nachdem Sie die Voraussetzungen erfüllt haben, verwenden Sie die APIs create_model, create_enpoint_config, und create_endpoint.

Das folgende Beispiel zeigt, wie Sie mit diesen APIs ein mit Neo kompiliertes Modell bereitstellen:

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)
Anmerkung

Die Richtlinien AmazonSageMakerFullAccess und AmazonS3ReadOnlyAccess müssen der AmazonSageMaker-ExecutionRole IAM-Rolle zugeordnet werden.

Die vollständige Syntax von create_model, create_endpoint_config, und create_endpoint APIs finden Sie jeweils unter create_model, create_endpoint_config, und create_endpoint.

Wenn Sie Ihr Modell nicht mit SageMaker AI trainiert haben, geben Sie die folgenden Umgebungsvariablen an:

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

Wenn Sie Ihr Modell mit SageMaker AI trainiert haben, geben Sie die Umgebungsvariable SAGEMAKER_SUBMIT_DIRECTORY als vollständigen Amazon-S3-Bucket-URI an, der das Trainingsskript enthält.