gpt4 book ai didi

solr - 在 Solr 中使用函数查询来提高分数

转载 作者:行者123 更新时间:2023-12-04 21:43:35 24 4
gpt4 key购买 nike

我正在研究 Solr 4,用于根据 Index 中存储的流行度排名优化我的 solr 结果排名。

现在,当有人搜索时,除了相关性排名之外,我还想使用流行度排名来影响相关性排名。最简单的公式可能是:

new relavancy rank = score * popularityrank



我一直在查看 Solr 函数查询 http://wiki.apache.org/solr/FunctionQuery#product然而,为了达到同样的效果,我不知道如何让它工作。我不知道如何使用乘积函数将分数相乘。试图完成它,我总是收到错误,因为未定义字段。

现在我可以使用这里定义的 boost How to boost fields in solr ,但我有额外的逻辑/要求,我想使用 Solr 提供的功能查询。

例如,我尝试了以下似乎可行的简单查询
http://solr:8983/solr/select?q=hp%20laptop&defType=edismax&fl=Id,Name,score&bf=product%28$v1,$v2%29&v1=Id&v2=2

现在,对于我的实际要求,我想将分数作为 $v2,但是我无法找到如何做到这一点。

任何帮助都会受到高度赞赏。

最佳答案

您可以尝试使用 _val_ Solr 提供的钩子(Hook)。

例如,为了按 score * popularityrank 排序, 试试用这个

http://solr:8983/solr/select?q=hp%20laptop&_val_="product(score,popularityrank)"

关于solr - 在 Solr 中使用函数查询来提高分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19874983/

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