重音怎么能用bf更准确,查询用solr更准确



我使用solr,我无法解决结果准确性的问题(考虑重音的q与bf)

我有一个solr索引,索引了2个字段(这是简化的):

town, population
Félines, 100
Ferrand, 10000

当我查询时:q=Fé&qf=town town_ascii&bf=population^2&defType=dismax我想根据我的结果订购:Félines > Ferrand

当我查询:q=Fe&qf=town town_ascii&bf=population^2&defType=dismax时,我希望在我的结果上有这个订单:Ferrand > Félines

问题是,费朗每次都打败费林,因为它的人口更多,我该如何解决这个问题?我没有找到如何使用查询的分数并在bf中使用它来平衡总体

您没有发布schema.xml,但我想您正在使用ASCIIFoldingFilterFactory作为town_ascii字段。这意味着,如果你正在索引单词Félines,以下是索引术语:

town: Félines
town_ascii: Felines

因此,您的意思是town字段的匹配比town_ascii字段的匹配更重要。您应该将qf参数更改为类似qf=town^3 town_ascii的参数,以便为town字段赋予更多权重。然后,您可以根据townpopulation相比所需的权重来调整权重。

相关内容

  • 没有找到相关文章