gpt4 book ai didi

java - Solr 多个 boost 查询

转载 作者:行者123 更新时间:2023-11-30 03:59:00 25 4
gpt4 key购买 nike

在 Solr 3.6.2 中提升静态值的最佳方法是什么?

每个文档都有恰好一个(KeywordTokenized)source值(信息来源),我想表达一些比其他更重要。如果有帮助的话,完全的内容控制是可能的。

http://localhost:8080/solr/index/select?fl=source,score
&defType=edismax
&qf=title^4
&q=qux
&bq=source:foo^10
&bq=source:bar^14

不幸的是,附加的提升查询实际上没有效果。解析后的查询如下所示(qux 的词干为 qu)

+DisjunctionMaxQuery(((title:qux qu)^4.0))) source:foo^10.0 source:bar^14.0

对前两个结果的调试查询并没有显着遵守bq=source:foo^10

5.366351 = (MATCH) sum of: 5.366351 = (MATCH) sum of: 2.067319 = (MATCH) weight(title:qux in 4472), product of: 0.5513683 = queryWeight(title:qux), product of: 7.4988675 = idf(docFreq=35, maxDocs=23918) 0.073526874 = queryNorm 3.7494338 = (MATCH) fieldWeight(title:qux in 4472), product of: 1.0 = tf(termFreq(title:qux)=1) 7.4988675 = idf(docFreq=35, maxDocs=23918) 0.5 = fieldNorm(field=title, doc=4472) 3.299032 = (MATCH) weight(title:qu in 4472), product of: 0.69651634 = queryWeight(title:qu), product of: 9.472949 = idf(docFreq=4, maxDocs=23918) 0.073526874 = queryNorm 4.7364745 = (MATCH) fieldWeight(title:qu in 4472), product of: 1.0 = tf(termFreq(title:qu)=1) 9.472949 = idf(docFreq=4, maxDocs=23918) 0.5 = fieldNorm(field=title, doc=4472)

5.281746 = (MATCH) sum of: 4.134638 = (MATCH) sum of: 4.134638 = (MATCH) weight(title:qux in 4402), product of: 0.5513683 = queryWeight(title:qux), product of: 7.4988675 = idf(docFreq=35, maxDocs=23918) 0.073526874 = queryNorm 7.4988675 = (MATCH) fieldWeight(title:qux in 4402), product of: 1.0 = tf(termFreq(title:qux)=1) 7.4988675 = idf(docFreq=35, maxDocs=23918) 1.0 = fieldNorm(field=title, doc=4402) 1.147108 = (MATCH) weight(source:foo^10.0 in 4402), product of: 0.45919293 = queryWeight(source:foo^10.0), product of: 10.0 = boost 2.4980958 = idf(docFreq=5346, maxDocs=23918) 0.018381719 = queryNorm 2.4980958 = (MATCH) fieldWeight(source:foo in 4402), product of: 1.0 = tf(termFreq(source:foo)=1) 2.4980958 = idf(docFreq=5346, maxDocs=23918) 1.0 = fieldNorm(field=source, doc=4402)

有趣的是,尽管 source 中有一个值,但第一个结果没有 sourcequeryWeight > 领域。 fieldNorm 也有点不同,因为 lemmatization

最佳答案

该问题很可能是由 queryNorm 引起的。看: http://lucene.472066.n3.nabble.com/QueryNorm-and-FieldNorm-td1992964.html

只要您不根据不同查询的分数来比较结果,单个搜索中的相关性排序就应该没问题。

关于java - Solr 多个 boost 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22390740/

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