当前位置: 首页 > 知识库问答 >
问题:

服务TensorFlow预构建的线性分类器估计器模型

左丘恩
2023-03-14

我正在尝试使用我们自己的CSV数据集运行本教程的训练模型,其中每一行由4个int值(最后一个是标签)组成,距离使用TensorFlow Serving:

我正在远处使用Docker运行TensorFlow Serving,我的开发环境是使用Python 3.6的Windows。

我使用以下代码导出模型,类似于此处给出的示例:

feature_spec = {'firstInt': tf.FixedLenFeature([1], tf.int64),
                'secondInt': tf.FixedLenFeature([1], tf.int64),
                'thirdInt': tf.FixedLenFeature([1], tf.int64)}

def serving_input_receiver_fn():
    serialized_tf_example = tf.placeholder(dtype=tf.string,
                                           shape=[None],
                                           name='input_example_tensor')
    receiver_tensors = {'examples': serialized_tf_example}
    features = tf.parse_example(serialized_tf_example, feature_spec)
    return tf.estimator.export.ServingInputReceiver(features, receiver_tensors)

classifier.export_savedmodel(
    '.\\SaveLC\\save_dir',
    serving_input_receiver_fn=serving_input_receiver_fn)

老实说,我不确定会有什么样的结果,但是在本指南中,half _ plus _模型给出了这样一个预测数组

"predictions": [
        2.5,
        3,
        4.5
    ]

当它发出这样的POST请求时

{"instances": [1.0, 2.0, 5.0]}

所以我想类似的东西应该被归还,但相反,我被告知一个可服务甚至不存在。值得注意的是,它似乎也与指南中提供的其他模型一起执行此操作。

"error": "Servable not found for request: Latest(save_dir_new)"

这个可服务的是什么?如果我当前的方法不工作,它将如何被导出?

谢谢

共有1个答案

令狐建修
2023-03-14

这看起来像是您保存模型的路径,< code >。\\SaveLC\\save_dir和用于启动TensorFlow服务容器和打开REST API端口的路径可能不同。

启动TensorFlow Serving容器并打开REST API端口的代码是:

docker run -t --rm -p 8501:8501 \
    -v "$TESTDATA/saved_model_half_plus_two_cpu:/models/half_plus_two" \
    -e MODEL_NAME=half_plus_two \
    tensorflow/serving &

冒号前的路径,在本例中,$TESTDATA/saved_model_half_plus_two_cpu和您保存模型的路径应该是相同的,如果我们从终端或命令提示符执行命令,它应该是完整的路径。

关于模型路径的另一个要点是,我们不应该在上面的命令中包含版本号或时间戳值。

 类似资料:
  • 我一直在与TensorFlow的构建器进行斗争,以便能够为我的模型服务,我试图在为模型服务后向我的分类器提供数据 我的问题是如何向模型提供输入?我看过Google的inception教程使用的代码 并试图实施它 据我所知,输入被传递给一个名为serialized_tf_example的张量,顾名思义,该张量将输入序列化为string,但是他们使用我不理解的tf.fixedlenfeature,然后

  • 运行命令: 日志: 2020-03-27 03:47:12.744007:I tensor flow _ serving/core/loader _ harness . cc:87]成功加载可服务版本{ name:docker _ test version:1 } e 0327 03:47:12.745641810 6 server _ chttp 2 . cc:40]{ " created ":

  • 以下是已经采取的步骤: 为tensorflow创建了csv输入文件 错误发生在估计器运行读取输入数据时。 错误日志: Tensorflow代码: 我一直在努力克服这个错误。非常感谢您的帮助。

  • 我正在谷歌 colab 环境中的 tensorflow 中训练一个 DNN,代码直到昨天都运行良好,但现在当我运行代码的估计器训练部分时,它给出了一个错误。 我不知道到底是什么原因,谷歌colab是否使用任何更新版本的tensorflow,其中某些函数与旧版本不兼容?因为我之前的代码没有问题,我没有改变它。似乎其他代码也存在此问题,例如,斯坦福大学的此示例代码之前运行没有任何错误,https://

  • 本文向大家介绍轻松创建nodejs服务器(2):nodejs服务器的构成分析,包括了轻松创建nodejs服务器(2):nodejs服务器的构成分析的使用技巧和注意事项,需要的朋友参考一下 紧接上一节,我们来分析一下代码: 第一行请求(require)Node.js自带的 http 模块,并且把它赋值给 http 变量。 接下来我们调用http模块提供的函数: createServer 。 这个函数

  • 主要内容:一次函数,构建线性模型本节讲解如何构建线性回归算法中的“线性模型”,所谓“线性”其实就是一条“直线”。因此,本节开篇首先普及一下初中的数学知识“一次函数”。 一次函数 一次函数就是最简单的“线性模型”,其直线方程表达式为 ,其中 k 表示 斜率,b 表示 截距,x 为 自变量,y 表示 因变量。下面展示了 y = 2x + 3 的函数图像: 图1:函数图像y=2x+3 函数中斜率 k 与 截距 b 控制着“直线”的“旋