gpt4 book ai didi

solr - SOLR 中 edismax 排名的子查询评分和协调

转载 作者:行者123 更新时间:2023-12-02 00:09:38 25 4
gpt4 key购买 nike

我在 solr 4.1 中使用 edismax 排名。我有一个查询解析器,它在给定单个查询字符串的情况下生成一些子查询。当我查看具体的排名详细信息(通过添加“debugQuery=on”)时,我发现了以下内容:

1> 看起来所有子查询的排名分数都先加了2> 然后就是这个总分和坐标因子的乘积。看起来协调因子是有多少子查询匹配的比率。例如,如果一个查询变成 3 个子查询并且只有其中 1 个被命中,那么坐标因子将为 1/3。

我想知道 1> 我的观察是否正确。 2> 如果是这样,是否有办法改变这些行为,如下所示:

1> 不对子查询的分数求和,只取最大分数。2> 忽略坐标系数。

如果当前的 solr 4.1 实现不支持,任何要更改或用作引用的源代码的指针都会很棒。

最佳答案

检查控制行为的参数:-

Tie Breaker -

A value of "0.0" makes the query a pure "disjunction max query" -- only the maximum scoring sub query contributes to the final score. A value of "1.0" makes the query a pure "disjunction sum query" where it doesn't matter what the maximum scoring sub query is, the final score is the sum of the sub scores. Typically a low value (ie: 0.1) is useful.

Coord -

In Solr 1.4 and prior, you should basically set mm=0 if you want the equivilent of q.op=OR, and mm=100% if you want the equivilent of q.op=AND. In 3.x and trunk the default value of mm is dictated by the q.op param (q.op=AND => mm=100%; q.op=OR => mm=0%). Keep in mind the default operator is effected by your schema.xml entry. In older versions of Solr the default value is 100% (all clauses must match)

移除 mm 因子以移除坐标计算并将并列设置为 0 以考虑得分的最大值。

关于solr - SOLR 中 edismax 排名的子查询评分和协调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16126963/

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