gpt4 book ai didi

elasticsearch - min_score排除得分较高的文档

转载 作者:行者123 更新时间:2023-12-03 02:22:16 25 4
gpt4 key购买 nike

我有几百万个文件,查询如下:

const query = {
min_score: 1,
query: {
bool: {
should: [
{
multi_match: {
query: "David",
fields: ["displayTitle^2", "synopsisList.text"],
type: "phrase",
slop: 2
}
},
{
nested: {
path: "contributors",
query: {
multi_match: {
query: "David",
fields: [
"contributors.characterName",
"contributors.contributionBy.displayTitle"
],
type: "phrase",
slop: 2
}
},
score_mode: "sum"
}
}
]
}
}
};

该查询为各种术语提供了理智的结果。但是,“David”(可能还有其他)存在问题。

“David”在文本中经常出现。使用 min_score选项,此查询始终返回0个文档。当我删除 min_score时,我得到了成千上万的文档,其中最好的文档的得分为22.749。

有人知道我在做什么错吗?我猜 min_score不能按我认为的方式工作。

谢谢

最佳答案

我试图解决的问题是,当我向上述查询 flex 函数中添加一些过滤器子句时,即使分数为零的那些文档也将返回所有满足过滤器的文档。这就是should的工作方式。我没有意识到我可以将should嵌套在must内以达到预期的效果。

关于elasticsearch - min_score排除得分较高的文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62046176/

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