从大量非结构化文本数据中搜索文本中的特定部分/段落

时间:2018-04-10 14:58:28

标签: elasticsearch full-text-search chatbot

我正在开发一个项目,在这个项目中,给出了数百个带有大量非结构化文本的word文档(主要是段落和一些粗体标题),开发一个搜索引擎/聊天机器人,当你搜索某些东西时(我怎么做X或Y),它将搜索所有文档,并从文档中返回与用户相关的段落或部分。

这些文档基本上是手册,其中包含有关如何执行特定任务的说明,它们都是几页长。问题是,格式不统一,因此不同文档的格式可能略有不同。

有点像构建问答机器人,但文档没有任何Q或A字段。正在考虑使用Elasticsearch将所有文档编入索引作为开始,但不确定如何进行实际搜索部分,或者我应该如何进行一般性操作。任何想法或指针都表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:0)

尝试一个想法:将每个段落索引为ElasticSearch中的文档。像这样:

{
    "book": "title here",
    "pageNumber": 123,
    "chapter": 7,
    "chapterTitle": "chapter title here",
    "paragraph": "put it here"
}

这使您能够搜索段落以查找所需内容,并返回它所出现的页面,书籍和章节。

我不会将整本书编入索引,这对ES来说是非常难以有效搜索的。