临时Tensorflow模型部署

问题描述 投票:0回答:1

我希望部署一个Tensorflow模型,以便可以使用RESTful API访问它以进行推理。

Tensorflow Serving看起来像是这项工作的理想工具。我现在使用Tensorflow服务运行一些MWE。我的模特也在工作。

用户将通过Flask网站访问该模型,并通过该网站上传数据。 Flask网站会将数据发送到模型容器,并返回结果。

但是,对于我的用例,该模型每月最多访问几次,延迟并不是一个大问题。让模型在云服务器上24/7运行会造成很大的资源浪费。

是否有任何工具,工作流程或指南可以让用户通过Web界面部署模型然后关闭?他们愿意等待一个实例的旋转。

我是云服务不可知的,甚至没有与Tensorflow服务系统结婚。 This question提出了类似的担忧,但没有回答。

谢谢

docker tensorflow deployment cloud devops
1个回答
1
投票

您可以对flask应用程序进行预测,而不是将数据发送到tensorflow服务器以进行预测。

这是一个基本的例子:

@app.route('/predict/', methods=['GET','POST'])
def predict():
    # get data from drawing canvas and save as image
    data = parseData(request.get_data())

    graph = tf.get_default_graph()
    with graph.as_default():
        out = model.predict(x)
        response = np.array_str(np.argmax(out, axis=1))
        return response 

我们还构建了一个开源工具包,用于打包包装和部署模型的模型,www.github.com/bentoml/bentoml。使用我们的工具包,您可以将模型导出到文件存档,并将其作为python模块导入到烧瓶应用程序中。这样,当您进行预测时,您将与您的烧瓶应用程序共享资源。

© www.soinside.com 2019 - 2024. All rights reserved.