我正在尝试在单个搜索查询中获取 token 的位置。
到目前为止,我知道如果需要的话,我必须使用两种不同的查询,一种用于_termvectors
,另一种用于_search
。但是我不想仅仅为了获得 token 的位置而进行两个单独的查询。
有一种方法可以在一个电话中完成相同的操作?
先谢谢您的帮助!!!!
最佳答案
我认为您的问题没有简单的解决方案。
您可以使用 highlighting
,并执行后处理以检索匹配标记的位置。请仔细阅读文档,因为与术语 vector 相比,突出显示可能会提供不同的结果。
如果您的用例不是检索位置,而是例如增强标记在开头附近出现的文档,则可以使用 span first queries
。如果例如在前三个 token 中找到该术语,则其例如允许增加文档的提升。
关于elasticsearch - 在单个搜索查询ElasticSearch v7.3中获取 token 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58372113/