gpt4 book ai didi

sorting - 影响结果排序顺序的文档分数,Lucene

转载 作者:行者123 更新时间:2023-12-02 05:14:14 24 4
gpt4 key购买 nike

即使在通过排序字段后,文档的分数也会影响搜索结果的排序顺序。有没有办法让 lucene 在传递特定排序字段时忽略文档分数?

例如:

DocId    Score        SortFieldA        SortFieldB
1 23.0041 200906030800 Test
2 32.2774 200906020800 Test
3 21.0632 200906030800 Apple

我希望结果先按 SortFieldA 排序,然后按 SortFieldB。所以在上述情况下,结果应该作为 doc2、doc3 和 doc1 返回。但是由于得分,排序顺序被打乱了。

我注意到如果文档具有相同的分数,结果会得到正确排序。

设置排序字段的代码:

public override Sort GetSort()
{
List<SortField> sortFields = new List<SortField>();
sortFields.Add(new SortField(StartDateTime.ToString(), SortField.STRING, ReverseSort));
sortFields.Add(new SortField(TitleSort.ToString(), SortField.STRING, ReverseSort));
return new Sort(sortFields.ToArray());
}

最佳答案

编辑:由于您不关心原始乐谱,我相信您需要使用 ConstantScoreQuery首先获取匹配项,然后将它们传递给排序器。

尝试查看 this question .

关于sorting - 影响结果排序顺序的文档分数,Lucene,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2328352/

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