在Rails应用程序中进行自然语言处理的最佳方法是什么?

时间:2016-05-30 11:41:37

标签: python ruby-on-rails flask nlp nltk

我有一个Rails应用程序。我需要在app中实现自动文本分类算法和可能的更多NLP功能。我相信Ruby没有像Python那样可用的良好NLP工具。我正在使用单独的resque服务器进行进程后台作业。我相信我有以下

  1. 使用resque作业运行python脚本
  2. 在单独的服务器上运行一个烧瓶应用程序,该服务器可以与resque作业通信,也可以使用已处理的结果自动更新app数据库。
  3. 使用this thread
  4. 中提到的Ruby工具
  5. 欢迎任何其他建议
  6. 请告诉我这是最好的方法。有没有类似的工作实例?

1 个答案:

答案 0 :(得分:1)

几个月前我遇到了同样的问题。经过一些研究和测试,这是我实施的解决方案

运行多个python进程多达一台机器可以容纳。并根据需要使用尽可能多的机器。

在Web服务器和运行python进程的计算机之间使用ZeroMQ进行通信

不要使用HTTP进行通信,因为开销很大,与ZeroMQ相比会非常慢。您也不需要像使用HTTP

那样使用ZeroMQ的复杂处理程序

注意将ZeroMQ套接字仅暴露给内部网络,或者您需要在每个python服务器上设置身份验证

如果不需要任何基于语料库的算法(如POS标记,情感分析等),另一种选择是使用众多可用的NLP API之一。