tensorflow官网的示例是MNIST分类任务,使用Softmax Regression model。

训练并导出模型

如果模型已经导出,可以先进行清理

$>rm -rf /tmp/mnist_model

serving/tensorflow_serving/example/mnist_saved_model.py的训练和保存模型的过程并没有什么特别。

export_path_base = sys.argv[-1]
export_path = os.path.join(
      compat.as_bytes(export_path_base),
      compat.as_bytes(str(FLAGS.model_version)))
print 'Exporting trained model to', export_path
builder = tf.saved_model.builder.SavedModelBuilder(export_path)
builder.add_meta_graph_and_variables(
      sess, [tag_constants.SERVING],
      signature_def_map={
           'predict_images':
               prediction_signature,
           signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY:
               classification_signature,
      },
      legacy_init_op=legacy_init_op)
builder.save()

通过tensorflow-serving-api运行

$ python tensorflow_serving/example/mnist_saved_model.py /tmp/mnist_model

查看模型

$>ls /tmp/mnist_model
1
$>ls /tmp/mnist_model/1
saved_model.pb variables

Model Server加载模型

通过apt-get安装的tensorflow model server

$ tensorflow_model_server --port=9000 --model_name=mnist --model_base_path=/tmp/mnist_model/

验证server

python tensorflow_serving/example/mnist_client.py --num_tests=1000 --server=localhost:9000

results matching ""

    No results matching ""