deeplab_v3的TFserving部署(Docker)
1.准备工作
参考:https://github.com/sthalles/deeplab_v3
使用virtualenv, 建立一个python2虚拟环境,作为服务部署环境。
使用virtualenv, 建立一个python3的虚拟环境,作为deeplab_v3的代码运行环境。
提醒:
如果使用docker方式部署服务,需要空出两个网络端口,一个作为外部访问jupyter服务端口,一个作为外部访问模型服务的端口。
下载整个项目
# git clone https://github.com/sthalles/deeplab_v3.git
下载预训练文件(需翻墙)地址,放置在./serving/目录下
https://www.dropbox.com/sh/s7sx69pqjhrk0s4/AACXWCRd9JJ0zvcvDES9G3sba?dl=0
2.python3环境下的操作(./serving)
在python3虚拟环境中,安装serving_requirements.txt依赖
pip install -r serving_requirements.txt
./serving目录下新建一个versions目录
mkdir versions
python deeplab_saved_model.py
模型部署文件就在versions中生成起来
开始部署模型,使用9000端口作模型部署端口
tensorflow_model_server --port=9000 --model_name=deeplab --model_base_path=/deeplab_v3/serving/versions
3.python2虚拟环境操作(./serving)
在python2虚拟环境中,在该环境中下安装client_requirements.txt依赖
pip install -r client_requirements.txt \
-i https://pypi.tuna.tsinghua.edu.cn/simple
使用8500端口作为jupyter服务访问的端口
jupyter-notebook --no-browser --ip 0.0.0.0 --port=8500--allow-root
这时候访问jupyter返回的网页地址,运行这段代码(deeplab_client.ipynb),可以直接调用模型。
4.可以更换代码中url进行测试