2017-10-16 125 views
-4

我需要在我的应用程序中创建搜索引擎。当用户输入例如“购买100只白色蝙蝠侠T恤”,它应该自动打开填充有输入的页面(页面购买 - >文章:蝙蝠侠T恤,数量:100,颜色:白色)。搜索引擎建议 - 链接(表格完成)

此外,如果用户键入“买入”,它应该是像“买入”或类似的一些建议..

我试图完成的是机智NLP(阿帕奇openNLP +英语),但我可以”完全解决它。任何建议,我应该使用什么,我应该采取哪种方法?

回答

2

看来这里有两种不同的要求:一种是用户意图的自然语言理解(NLU),换句话说,当用户输入“buy xxx yyy”时,购买“xxx件yyy,并因此将他带到适当的页面,并填写所有相关信息(例如,填充100个白色T恤的电子商务图表)。

除了这个简单的例子,这通常不简单,Apache OpenNLP不提供OOTB NLU功能。 OpenNLP在这方面可以提供的是POS标记,分析和NER模型,以便:将词性分配给标记(buy是一个动词,100是一个数字,white是一个形容词等)构建一个分析树,以便您可以在查询中查找VERB NUMBER NOUN PHRASE模式,并附加附加识别产品的命名实体,以便您可以直接将其添加到购物车(例如,在电子商务用例中)。

对于第二个需求(建议),您可以使用OpenNLP语言模型功能。

以上所有工具都在http://opennlp.apache.org/docs/1.8.2/manual/opennlp.html

+0

中有描述谢谢。我得到了标签文本的一部分,但名词可以是“T恤”,“夹克”,“裤子”等,我想知道系统如何知道将哪一个放入购物车。我是否需要全部定义或者有其他方法。提前致谢 –