如何按特定字段过滤弹性搜索词或短语建议者?

时间:2017-09-03 08:31:34

标签: elasticsearch elasticsearch-5

我使用弹性搜索5.3并提供“你有意思”的功能,我想将术语或短语建议的上下文限制为仅用户的文档并非所有索引中的文档。这是我当前的spring.data.mongodb.database="test" 查询正文,使用术语建议器(根据所有索引文档返回建议):

_search

我可以看到过滤是{ "suggest": { "text": "docyment", "title_correction: { "term": { "size": 2, "prefix_length": 3, "field": "title", "analyzer": "standard", "min_doc_freq": 1, } } } } 过去的一部分(check this issue),但它似乎已被弃用并被上下文建议器取代(虽然仅用于完成字段),所以它&# 39;不适合我的情况。

我需要的是像phrase_suggester这样的过滤器,因此建议将基于用户的文档。

如果有人能提出我的问题的答案,我将不胜感激:

0-为什么过滤器已从短语建议器中弃用?只是为了提升表现?

1-如果它被其他东西取代并且有推荐的方法,那么我可以解决我的问题吗?

(我在elastic forum中问了同样的问题,如果我找到答案,我会更新这两个问题)

1 个答案:

答案 0 :(得分:0)

我基本上有同样的需求,有修剪查询应该允许排除你不想要的文件:看看How do I add a weight (or prefilter) for a phrase suggester?