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