用于部署python机器学习模型的通用Web服务器/框架?

时间:2018-08-22 21:46:58

标签: python webserver tornado gunicorn web-frameworks

我注意到Databricks MLFlowAmazon Sagemaker都使用了Nginx,Gunicorn和Flask的组合。

我想知道这是否将成为部署机器学习模型(例如Scikit-learn,Tensorflow,Keras)的标准堆栈。

如果是这样,是否有理由将其用于诸如龙卷风之类的替代品?

如果没有,是否存在“标准堆栈”

1 个答案:

答案 0 :(得分:1)

我想,选择Flask而不是Tornado作为包装ML的Web框架的主要原因是Flask的简单但功能丰富(使用附加组件)。 ML通常受CPU和RAM的限制,而Tornado的主要优势是对IO绑定操作的有效处理,而ML并非如此。但是,选择ML的Tornado意味着更复杂的开发,以实现零零收益。如果您在Tornado中拥有主应用程序(如果确实需要),并且将ML与Flask一起用作主应用程序的微服务,那将是更明智的选择。