模型部署:TF Serving 的使用

目录
1. TF Serving概述
2. 模型准备
3. 服务器端
   3.1 docker安装
   3.2 拉取docker-serving镜像
   3.3 启动TF Serving服务
4. 客户端
   4.1 查看网络输入输出节点
   4.2 客户端推理
5. 多模型部署
   4.1 多个模型
   4.2 多模型配置文件
   4.3 启动TF Serving服务
   4.4 客户端使用

1. TF Serving概述

TF Serving是一个用于机器学习模型部署的高性能开源库,可以将训练完成的模型直接上线并提供服务;

一个重要的特性是:支持热更新与模型版本自动管理,这意味着一旦部署成功,不需要再为线上服务担心,只需要关心线下的模型训练即可;

核心模块如下图所示:

Source用于管理本地的模型文件系统;
Source会对需要加载的模型创建一个Loader,Loder中会包含要加载模型的全部信息;
Source通知Manager有新的模型需要进行加载;
Manager通过版本管理策略Version Policy来确定哪些模型需要被下架,哪些模型需要被加载;
Manager在确认需要加载的模型是否符合加载策略,便通知Loader来加载最新的模型;
Client向服务器端请求模型结果,可以指定版本;

从训练到部署的整个流程如下图所示:

基本可以把工作分为三块:

    Saver端:模型的离线训练与导出
    Serving端:模型加载与在线预测
    Client端:构建请求

2. 模型准备

这一部分主要目的是为了得到训练完成的模型文件,类型为.pb格式;

这里提供一个简单的程序,演示从数据准备、模型训练、模型保存的过程中;

其中,重点是最后一步模型保存,需要保存成pb格式,如果你这边是其他格式,需要将其转换成pb;

另外,在TensorFlow 2.0+版本中,model.save()默认的存储格式就是pb形式;

训练完成后,模型文件如下:


 

  • 其中,clothing表示该模型用于识别衣服类型;(可自定义名称)
  • 1表示clothing模型的版本号,目的是为了后续更新模型;

完成程序model_training.py如下:

# -*- coding: utf-8 -*-  
# =================================================

"""
2. Model Prepare:
    Train a neural network model to classify image of clothing, like sneakers and shirts.
    Finally, out
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值