【问题标题】:Tensorflow serving using the client使用客户端的 TensorFlow 服务
【发布时间】:2017-08-08 08:05:28
【问题描述】:

我成功创建了一个接收 TF saved_model 的服务器,但现在我想向它发送查询并获取预测。 但是,我很难理解客户端是如何工作的以及如何实现它。 我在网上找到的只是basic tutorial,但他们只提供了mnist的客户端代码,不适合我自己的mdoel。 那么任何人都可以向我介绍如何为不同的模型使用或实现客户端吗?

谢谢

【问题讨论】:

    标签: tensorflow tensorflow-serving


    【解决方案1】:

    非常感谢 google 让 tensorflow 服务于开源,这对像我这样的人将预测模型投入生产非常有帮助。但我不得不承认 tensorflow 服务在文档中表现不佳,或者,他们认为使用它的人应该已经对 tensorflow 有很好的了解。我坚持了很长时间,以了解它是如何工作的。在他们的网站上,他们很好地介绍了概念和示例,但中间缺少一些东西。

    我会推荐教程here。这是第一部分,您也可以关注第二部分,链接会在那篇文章中。

    一般来说,当您将 .ckpt 文件导出到可服务模型(.pb 文件和变量文件夹)时,您必须定义模型的输入、输出和方法名称,并将它们作为签名保存在 tf.saved_model.signature_def_utils.build_signature_def

    在文章中,你会发现我在这部分上面所说的:

        tf.saved_model.signature_def_utils.build_signature_def( 
        inputs={‘images’: predict_tensor_inputs_info}, 
        outputs={‘scores’: predict_tensor_scores_info},
        method_name=\
            tf.saved_model.signature_constants.PREDICT_METHOD_NAME)
    

    您可以按照作者在文章中定义输入和输出的方式,对您的自定义模型做同样的事情。

    之后,您必须在客户端脚本中调用签名并将输入输入到服务器,然后服务器将识别使用哪种方法并返回输出。您可以查看作者是如何编写客户端脚本的,并找到调用签名和馈送输入的对应部分。

    【讨论】:

      猜你喜欢
      • 2018-03-30
      • 2019-05-19
      • 2017-10-11
      • 1970-01-01
      • 1970-01-01
      • 2018-06-19
      • 1970-01-01
      • 2014-09-04
      • 1970-01-01
      相关资源
      最近更新 更多