Tensorflow

如何部署 Tensorflow serving

在利用 kashgari 训练 BERT+BiLSTM+CRF 模型后,如何将模型预测结果进行部署是一个很重要的问题。按照 kashgari的官方文档 介绍,考虑采用 Tensorflow serving 来做模型预测的部署。 TensorFlow Serving 是一个用于机器学习模型 serving 的高性能开源库。它可以将训练好的机器学习模型部署到线上,使用 gRPC 作为接口接受外部调用。更加让人眼前一亮的是,它支持模型热更新与自动模型版本管理。这意味着一旦部署 TensorFlow Serving 后,就再也不需要为线上服务操心,只需要关心线下的模型训练。 TensorFlow Serving 可以方便我们部署 TensorFlow 模型,可以使用 TensorFlow Serving 的 Docker 镜像来使用 TensorFlow Serving ,安装命令如下: docker pull tensorflow/serving 接下来将演示如何利用 tensorflow serving 来部署 kashgari 中的模型,项目结构如下: 上图中的 data 是标注的 NER 数据集,即标注出文本中的时间,采用 BIO 标注规则。chinese_wwm_ext 文件夹为哈工大的预训练模型文件。model_train.py 为模型训练的代码,主要功能是完成时间序列标注模型的训练,完整的代码如下: # -*- coding: utf-8 -*- # time: 2019-09-12 # place: Huangcun Beijing import kashgari from kashgari import utils from kashgari.