现在当有人搜索时,除了相关性排名之外,我想使用人气排名来影响相关性排名.最简单的公式可能是:
new relavancy rank = score * popularityrank
我一直在寻找在http://wiki.apache.org/solr/FunctionQuery#product处的Solr函数查询来实现相同,但是我不知道如何让它工作.我没有得到如何使用产品功能得分.试图完成它,我总是得到错误,因为字段没有定义.
现在我可以使用How to boost fields in solr中定义的boost,但我还有其他逻辑/要求,我想使用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,但是我无法找到如何做到这一点.
任何帮助都是高度适用的.
解决方法 您可以尝试使用Solr提供的_val_钩子.例如,要按分数* popularrank排序,请尝试使用此选项
http://solr:8983/solr/select?q=hp%20laptop&_val_="product(score,popularityrank)"总结
以上是内存溢出为你收集整理的使用函数查询在Solr中提升分数全部内容,希望文章能够帮你解决使用函数查询在Solr中提升分数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)