tensorflow serving部署自己构建的模型

tensorflow serving部署自己构建的模型,部署相对来说简单,只是需要在运行docker的时候,把需要的模型给mapping进去。

首先需要安装docker并且pull好tensorflow serving镜像文件,这篇文章有讲解安装docker和pull tensorflow serving的镜像文件。

https://blog.csdn.net/zhou_438/article/details/103392038

当把镜像文件pull到本地的docker以后,我们就运行docker即可。

运行该镜像文件:

 docker run -p 8500:8500 -p 8501:8501 --name tfserving_pix2pix --mount type=bind,source=/tmp/pix2pix/,target=/models/pix2pix -e MODEL_NAME=pix2pix -t tensorflow/serving

[root@zhoulei testdata]# docker run -p 8500:8500 -p 8501:8501 --name tfserving_pix2pix --mount type=bind,source=/tmp/pip2pip/,target=/models/pix2pix -e MODEL_NAME=pix2pix -t tensorflow/serving
2019-12-06 18:17:52.447917: I tensorflow_serving/model_servers/server.cc:85] Building single TensorFlow model file config:  model_name: pix2pix model_base_path: /models/pix2pix
2019-12-06 18:17:52.448327: I tensorflow_serving/model_servers/server_core.cc:462] Adding/updating models.
2019-12-06 18:17:52.448356: I tensorflow_serving/model_servers/server_core.cc:573]  (Re-)adding model: pix2pix
2019-12-06 18:17:52.548937: I tensorflow_serving/core/basic_manager.cc:739] Successfully reserved resources to load servable {name: pix2pix version: 2}
2019-12-06 18:17:52.548991: I tensorflow_serving/core/loader_harness.cc:66] Approving load for servable version {name: pix2pix version: 2}
2019-12-06 18:17:52.549031: I tensorflow_serving/core/loader_harness.cc:74] Loading servable version {name: pix2pix version: 2}
2019-12-06 18:17:52.549166: I external/org_tensorflow/tensorflow/cc/saved_model/reader.cc:31] Reading SavedModel from: /models/pix2pix/2
2019-12-06 18:17:52.563781: I external/org_tensorflow/tensorflow/cc/saved_model/reader.cc:54] Reading meta graph with tags { serve }
2019-12-06 18:17:52.637060: I external/org_tensorflow/tensorflow/cc/saved_model/loader.cc:202] Restoring SavedModel bundle.
2019-12-06 18:17:53.136770: I external/org_tensorflow/tensorflow/cc/saved_model/loader.cc:311] SavedModel load for tags { serve }; Status: success. Took 587597 microseconds.
2019-12-06 18:17:53.139877: I tensorflow_serving/servables/tensorflow/saved_model_warmup.cc:105] No warmup data file found at /models/pix2pix/2/assets.extra/tf_serving_warmup_requests
2019-12-06 18:17:53.141270: I tensorflow_serving/core/loader_harness.cc:87] Successfully loaded servable version {name: pix2pix version: 2}

 这里说明我们已经运行

注:(1)首先我们需要把自己的模型拷贝到/tmp/pix2pix下,这里是自己建的路径,这个可以自己随意指定;

         (2)指定两个端口的目的是,为了可以供restful(8501)和rpc(8500)两种方式进行访问

         (3)/tmp/pix2pix这个路径下可以放多个版本的模型,最终生效的是是以名字中数字最大的模型文件,我们通常把模型文件的名字以数字命名,最终在访问的时候可以看到version,json文件里面会显示version。

         (4)target=/models/pix2pix中的pix2pix必须与MODEL_NAME=pix2pix中的pix2pix一致,也就是target中的models/的名称必须要和MODEL_NAME一样,不然运行docker的时候一定报错,说找不到资源。

当运行成功后我们可以使用restful和RPC的方式进行访问

你可能感兴趣的:(深度学习)