通过已部署的服务 (Amazon SageMaker SDK) 请求推理
使用以下代码示例,根据用于训练模型的框架,通过已部署的服务请求推理。不同框架的代码示例类似。主要区别在于 TensorFlow 要求使用 application/json
内容类型。
PyTorch 和 MXNet
如果您使用 PyTorch v1.4 或更高版本或 MXNet 1.7.0 或更高版本,而且您有 Amazon SageMaker 端点 InService
,则可以使用适用于 Python 的 SageMaker SDK 的 predictor
软件包发出推理请求。
注意
API 因适用于 Python 的 SageMaker SDK 版本而异:
-
对于版本 1.x,请使用
RealTimePredictor
和 Predict
API。
以下代码示例演示了如何使用这些 API 发送映像以进行推理:
TensorFlow
以下代码示例演示了如何使用 SageMaker Python SDK API 发送映像以进行推理:
from sagemaker.predictor import Predictor from PIL import Image import numpy as np import json endpoint =
'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()}) predictor = Predictor(endpoint) inference_response = predictor.predict(data=body) print(inference_response)