文章最前: 我是Octopus,这个名字来源于我的中文名--章鱼;我热爱编程、热爱算法、热爱开源。所有源码在我的个人github ;这博客是记录我学习的点点滴滴,如果您对 Python、Java、AI、算法有兴趣,可以关注我的动态,一起学习,共同进步。
文章目录
实际的生产环境中比较广泛使用的C/S通信手段是基于RESTfull API的,幸运的是从TF1.8以后,TF Serving也正式支持RESTfull API通信方式。
基于TF Serving的持续集成框架还是挺简明的,基本分三个步骤:
- 模型训练
这是大家最熟悉的部分,主要包括数据的收集和清洗、模型的训练、评测和优化; - 模型上线
前一个步骤训练好的模型在TF Server中上线; - 服务使用
客户端通过gRPC和RESTfull API两种方式同TF Servering端进行通信,并获取服务
1.安裝Docker
部署TensorFlow Server需要docker环境,先保证linux环境下安装了docker
# 下载docker
wget https://download.docker.com/linux/static/stable/x86_64/docker-18.06.3-ce.tgz
# 解压文件
tar -zxvf docker-18.06.3-ce.tgz
cp docker/* /usr/bin/
cd /etc/systemd/system
touch docker.service
chmod +x /etc/systemd/system/docker.service
systemctl daemon-reload
systemctl start docker
systemctl enable docker.service
2.拉取镜像
git clone https://github.com/tensorflow/serving
docker images
docker pull tensorflow/serving
docker images
docker ps
3.运行镜像
docker run -p 8501:8501 --mount type=bind, source=/tmp/tfserving/serving/tensorflow_serving/servables/tensorflow/testdata/saved_model_half_plus_two_cpu,target=/models/half_plus_two -e MODEL_NAME=half_plus_two -t tensorflow/serving &
4.请求接口
curl -d '{"instances": [1.0, 2.0, 5.0]}' -X POST http://localhost:8501/v1/models/half_plus_two:predict