我正在尝试运行以下示例:tensorflow_abalone_age_predictor_using_layers
,其中abalone_predictor.predict(tensor_proto)
用于调用端点并进行预测。我试图使用Java API AmazonSageMakerRuntime
来达到相同的效果,但是我不知道如何为body
指定contentType
和InvokeEndPointRequest
。该文件未按照请求的格式进行详细说明。非常感谢您的帮助!
答案 0 :(得分:1)
我还没有尝试过具体示例,但是下面的代码段应该可以帮助您调用端点进行预测
InvokeEndpointRequest invokeEndpointRequest = new InvokeEndpointRequest();
invokeEndpointRequest.setContentType("application/x-image");
ByteBuffer buf = ByteBuffer.wrap(image);
invokeEndpointRequest.setBody(buf);
invokeEndpointRequest.setEndpointName(endpointName);
invokeEndpointRequest.setAccept("application/json");
AmazonSageMakerRuntime amazonSageMaker = AmazonSageMakerRuntimeClientBuilder.defaultClient();
InvokeEndpointResult invokeEndpointResult = amazonSageMaker.invokeEndpoint(invokeEndpointRequest);
我看到了您尝试创建TensorProto并传递给端点请求的示例。您可以尝试create a TensorProto调用请求并将其设置为正文
答案 1 :(得分:0)
只是想出我可以重写input_fn来将请求主体字符串转换为可以馈入模型的东西,在这种情况下为TensorProto对象。