ili*_*uve 7 information-retrieval elasticsearch
我对弹性搜索中的常量得分查询的理解是,提升因子将被指定为每个匹配查询的得分.该文件说:
包含过滤器或其他查询的查询,只返回等于过滤器中每个文档的查询提升的常量分数.
但是,当我发送此查询时:
"query": {
"constant_score": {
"filter": {
"term": {
"source": "BBC"
}
},
"boost": 3
}
},
"fields": ["title", "source"]
Run Code Online (Sandbox Code Playgroud)
所有匹配的文件得分为1?!我无法弄清楚我做错了什么,并且还尝试使用查询而不是在constant_score中过滤.
小智 3
分数仅与给定结果集中的所有其他分数相关,因此所有内容的分数均为 3 的结果集与所有内容的分数均为 1 的结果集相同。
实际上,相关性 _score 的唯一目的是按照正确的顺序对当前查询的结果进行排序。您不应尝试比较不同查询的相关性分数。- Elasticsearch 指南
常数分数要么被忽略,因为它没有与另一个查询组合,要么它正在被标准化。正如@keety所说,检查解释的输出以准确了解发生了什么。
归档时间: |
|
查看次数: |
5792 次 |
最近记录: |