当我尝试执行以下客户端代码时,出现了错误,但在通过RESTful API端点调用时成功了curl -d '{"signature_name":"predict_output","instances":[2.0,9.27]}' -X POST http://10.110.110.13:8501/v1/models/firstmodel:predict
请帮我修正下面的代码
收到的错误信息如下:
_Rendezvous: <_Rendezvous of RPC that terminated with:status = StatusCode.UNAVAILABLEdetails = "Trying to connect an http1.x server"debug_error_string = "{"created":"@1545248014.367000000","description":"Error received from peer", "file":"src/core/lib/surface/call.cc","file_line":1083,"grpc_message":"Trying to connect an http1.x server","grpc_status":14}"
下面是供参考的请求信息
model_spec { name: "firstmodel" signature_name: "predict_output"}inputs { key: "input_x" value { dtype: DT_FLOAT tensor_shape { dim { size: 1 } } float_val: 12.0 }}
回答:
GRPC端口和HTTP端口是不同的。由于您在8501端口监听HTTP服务,因此您的GRPC服务必须使用另一个端口。默认端口是8500,但您可以在启动tf-server时使用--port=
参数更改它。
docker run -p 8500:8500 --mounttype=bind,source=/root/serving/Ser_Model,target=/models/firstmodel -e MODEL_NAME=firstmodel -t tensorflow/serving