View a markdown version of this page

Solicitar inferências de um serviço implantado (Amazon SageMaker SDK) - SageMaker IA da Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Solicitar inferências de um serviço implantado (Amazon SageMaker SDK)

Use os exemplos de código a seguir para solicitar inferências do seu serviço implantado com base na estrutura que você usou para treinar seu modelo. Os exemplos de código para as diferentes estruturas são semelhantes. A principal diferença é que TensorFlow requer application/json como tipo de conteúdo.

PyTorch e MXNet

Se você estiver usando a versão PyTorch 1.4 ou posterior ou o MXNet 1.7.0 ou posterior e tiver um endpoint de SageMaker IA da AmazonInService, poderá fazer solicitações de inferência usando o pacote do SDK do predictor Python. SageMaker

nota

A API varia de acordo com a versão do SDK do SageMaker Python:

O seguinte exemplo de código mostra como usar essas APIs para enviar uma imagem para inferência:

from sagemaker.core.resources import Endpoint endpoint_name = 'insert name of your endpoint here' # Read image into memory payload = None with open("image.jpg", 'rb') as f: payload = f.read() endpoint = Endpoint(endpoint_name=endpoint_name) inference_response = endpoint.invoke(body=payload, content_type='application/x-image') print(inference_response.body.read().decode('utf-8'))

TensorFlow

O exemplo de código a seguir mostra como usar a API do SDK do SageMaker Python para enviar uma imagem para inferência:

from sagemaker.core.resources import Endpoint from PIL import Image import numpy as np import json endpoint_name = 'insert the name of your endpoint here' # Read image into memory image = Image.open(input_file) batch_size = 1 image = np.asarray(image.resize((224, 224))) image = image / 128 - 1 image = np.concatenate([image[np.newaxis, :, :]] * batch_size) body = json.dumps({"instances": image.tolist()}) endpoint = Endpoint(endpoint_name=endpoint_name) inference_response = endpoint.invoke(body=body, content_type='application/json') print(inference_response)