gpt4 book ai didi

json - `min_score`不能在Elasticsearch中重新评分't work for `

转载 作者:行者123 更新时间:2023-12-03 00:17:43 24 4
gpt4 key购买 nike

我希望删除分数小于1的所有文档,但以下查询不起作用:

curl "http://localhost:9200/megacorp/_search" -d '{
"min_score": 1,
"query": {
"matchAll": {}
},
"rescore": {
"query": {
"score_mode": "min",
"rescore_query": {
"match": {"first_name": "Jane"}
}
}
}
}'

看来 min_score不适用于 rescore

什么是正确的方法?

最佳答案

我认为您混淆了min_scorerescore的概念。两者都有不同的用途。
min_score应用于初始查询。在您的情况下,它是match_all查询,因​​此每个单个文档的分数都为1,并且返回该分数会与min_score 进行比较,而与rescore所做的无关。
rescore用于影响返回文档的scoring(您的初始查询)。它不会影响结果的count,只会影响结果的order。因此,即使"match": {"first_name": "Jane"}得分小于1,也会显示出来。同样,如果您使用score_mode: total且总分大于1,但是如果原始查询的分值小于1,则不会在结果中显示。

您可以使用explain api了解如何计算分数。最后,如果您想使用scoring,可以研究script_scorefunction score

我希望这消除了疑问。

关于json - `min_score`不能在Elasticsearch中重新评分't work for `,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34740862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com