elasticsearch 中有没有一种方法可以提高文档中出现的确切短语的重要性?
例如,如果我正在搜索短语“web developer”,并且如果“web developer”这两个词一起出现,那么与在整个文档中单独出现的“web”和“developer”相比,它们会增加 5。因此,任何同时包含“web developer”的文档都将首先出现在结果中。
最佳答案
您可以使用 bool query 将不同的查询组合在一起,您也可以为他们提供不同的提升。假设您有一个普通的 match query对于这两个术语,无论它们的位置如何,然后是具有更高提升的短语查询。
类似下面的内容:
{
"query": {
"bool": {
"should": [
{
"match": {
"field": "web developer"
}
},
{
"match_phrase": {
"field": "web developer",
"boost": 5
}
}
],
"minimum_number_should_match": 1
}
}
}
关于 Elasticsearch 提高了精确短语匹配的重要性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18481600/