我有一个.pbtxt文件,该文件是从inception_v4通过export_saved_model获取的,但是我无法使用此saved_model进行预测。当我尝试使用tf.contrib.predictor.from_saved_model()
加载模型时,出现以下错误:
OSError: Cannot parse file b'/Users/mehdi/Desktop/serving/saved_model.pbtxt': 1:1 :
Message type "tensorflow.SavedModel" has no field named "node"..
答案 0 :(得分:0)
您可以使用两种方法来做到这一点:
通过加载保存的模型并使用加载的模型进行预测
New_Model = tf.keras.models.load_model("saved_model")
New_Model.summary()
Prediction = New_Model.predict(...)
使用Docker映像安装Tensorflow服务
sudo docker pull tensorflow/serving
# Invoke the Tensorflow Model Server
sudo docker run -p 8501:8501 --mount type=bind,source=Path_Of_The_Saved_Model_In_PC,target=/models/saved_model -e MODEL_NAME=saved_model -t tensorflow/serving &
#To get the status of the model
curl http://localhost:8501/v1/models/saved_model
curl -d '{"instances": [1.0, 2.0, 5.0]}' \
-X POST http://localhost:8501/v1/models/saved_model:predict
如果您有一个图像作为输入,并且要在客户端文件中对该图像进行一些预处理,则可以使用下面提到的命令来进行处理:
sudo docker pull tensorflow/serving
sudo docker run -p 8501:8501 --mount type=bind,source=Path_Of_The_Model,target=/models/saved_model -e MODEL_NAME=saved_model -t tensorflow/serving &
python Path/client.py --num_tests=100 --server=localhost:8500
有关TF服务的客户文件代码,请参见this link,有关TF服务的更多信息,请参见this Guide,有关端对端示例的信息this Tutorial。