在Solr中,我可以对短语中的每个术语应用提升吗?

时间:2010-06-21 22:23:03

标签: solr

使用Solr,如果我有一个短语:

“快速的棕色狐狸跳过懒狗。”

我可以在索引时将自己的权重应用于这些单词吗?

这样的事情:

“^ 1快^ 2棕色^ 2狐狸^ 3 ......”等

然后,我想让这些数字影响分数。

谢谢!

3 个答案:

答案 0 :(得分:3)

您可能想检查有效负载:Lucid或ultramagnus。您可以通过这种方式在索引时为术语添加权重。

答案 1 :(得分:0)

你应该能够按照你的写作方式这样做:

http://lucene.apache.org/java/2_4_0/queryparsersyntax.html#Boosting一个术语

推动一个学期 Lucene根据找到的术语提供匹配文档的相关性级别。要增加术语,请使用插入符号“^”,在您搜索的术语结尾处带有提升因子(数字)的符号。提升因子越高,该术语就越相关。

Boosting允许您通过提高其术语来控制文档的相关性。例如,如果您正在搜索

jakarta apache 并且你希望术语“jakarta”更具相关性使用^符号以及术语旁边的提升因子来提升它。你可以输入:

jakarta ^ 4 apache 这将使使用术语jakarta的文档更具相关性。您还可以在示例中增加短语条款:

“jakarta apache”^ 4“Apache Lucene” 默认情况下,提升因子为1.虽然提升因子必须为正,但它可以小于1(例如0.2)

答案 2 :(得分:0)

您可以使用boost query。因此,如果您正在搜索标题字段,则可以查询说bq=(title:The)^1&bq=(title:quick)^2&bq=(title:brown)^2等等......