使用TensorFlow-Serving部署模型

1.首先训练好一个深度学习模型

 

2.将训练好的模型导出成tf-serving需要的格式

tf.keras.models.save_model(
    model,
    export_path,
    overwrite=True,
    include_optimizer=True,
    save_format=None,
    signatures=None,
    options=None
)

模型保存的格式如下图:

 

 

3.使用docker拉取tf-serving镜像

  • 拉取tf-serving镜像
docker pull tensorflow/serving
  • 查看所有docker镜像
docker images 

 4.将本地模型使用TF-Serving部署到服务器

  • 启动一个docker TF-Serving镜像的容器:创建好容器以后 可以直接在客户端管理
docker run -p 8501:8501 \
  --mount type=bind,source={本地模型位置},target={docker容器里模型存放的目标位置} \
  -e MODEL_NAME={容器里模型名字} -t tensorflow/serving


例如:
docker run -p 8501:8501 \
  --mount type=bind,source=/Users/kyousugi/Desktop/四、深度学习/深度学习-项目/Project11:模型部署TFServing/Models,target=/models/model \
  -e MODEL_NAME=model -t tensorflow/serving

5.查看模型服务是否启动成功

1)在浏览器中打开

http://localhost:8501/v1/models/model

 

# 模型正确部署成功后,应该显示如下信息:

{
 "model_version_status": [
  {
   "version": "1",
   "state": "AVAILABLE",
   "status": {
    "error_code": "OK",
    "error_message": ""
   }
  }
 ]
}

2)在终端查看模型服务信息

curl http://localhost:8501/v1/models/model

6.数据预测 

1)使用代码直接预测数据

import requests
import json

data = json.dumps({"signature_name": "serving_default",
                   "instances": x_test.tolist()})

headers = {"content-type": "application/json"}
json_response = requests.post('http://localhost:8501/v1/models/model:predict',
                              data=data,
                              headers=headers)

predictions = json.loads(json_response.text)['predictions']
print(predictions)

结果:
[[0.622035265], [0.552023888], [0.95764941]]

2)在终端使用模型服务预测新数据

curl -d '{"instances": [[0.0, 30.83, 0.0, 0.0, 0.0, 9.0, 0.0, 1.25, 0.0, 0.0, 1.0, 1.0, 0.0, 202.0, 0.0], [1.0, 58.67, 4.46, 0.0, 0.0, 8.0, 1.0, 3.04, 0.0, 0.0, 6.0, 1.0, 0.0, 43.0, 560.0]]}' \
    -X POST http://localhost:8501/v1/models/model:predict
结果:
{
    "predictions": [[0.622035265], [0.552018225]
    ]
}

3)在postman中显示

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值