elasticsearch 如何在elasticsearch中获取搜索词列表的单词上下文?
我刚刚建立了我的第一个elasticsearch集群并上传了几千个文档。现在,我想执行一个相对简单的任务:我有一个搜索词列表,对于每个词,我想获得数据库中包含此搜索词以及单词上下文的文档列表(搜索词前5个单词,搜索词后5个单词) 有没有一个简单的方法可以做到这一点?我已经搜索了很多,但没有找到满意的答案 示例
elasticsearch 如何在elasticsearch中获取搜索词列表的单词上下文?,
elasticsearch,nlp,
elasticsearch,Nlp,我刚刚建立了我的第一个elasticsearch集群并上传了几千个文档。现在,我想执行一个相对简单的任务:我有一个搜索词列表,对于每个词,我想获得数据库中包含此搜索词以及单词上下文的文档列表(搜索词前5个单词,搜索词后5个单词) 有没有一个简单的方法可以做到这一点?我已经搜索了很多,但没有找到满意的答案 示例 我有一个数据库,其中有一个文档(id:1):“狗跑上了树。” 希尔去放一只黄色的风筝。他看起来很高兴。” 我有一个搜索词:“希尔” 我想写一个请求,返回id 1和 前面的5个词(“狗跑上
- 我有一个数据库,其中有一个文档(id:1):“狗跑上了树。” 希尔去放一只黄色的风筝。他看起来很高兴。”
- 我有一个搜索词:“希尔”
- 我想写一个请求,返回id 1和 前面的5个词(“狗跑上前”)和后面的5个词(“到”) 放一只黄色的风筝。”)搜索词(“山”)
fragment\u size
(返回代码段的字符数)来增加此窗口的大小
以下是一个查询示例:
{
"query": {
"match": {
"yourtextfield": "hill"
}
},
"highlight": {
"fields": {
"yourtextfield": {}
},
"boundary_scanner": "word",
"type": "plain",
"fragment_size": 150,
"pre_tags": "",
"post_tags": ""
}
}
通常,匹配项封装在
和
中,但您可以通过前\u标记和后\u标记来修改或删除它们。将它们用作标记可能会很有用,这样您就可以知道哪些单词与您的查询完全匹配
另外,请看一下,有许多好的例子可能会对您有所帮助。您可能应该提供一个具体的例子,说明您正在努力实现的目标。我添加了一个简短的例子。我希望这有帮助,还是还不清楚?