Solr-在文档中重复查询中的单词没有额外分数

Solr-在文档中重复查询中的单词没有额外分数,solr,lucene,solr4,Solr,Lucene,Solr4,我只想为一场学期比赛打分一次,而不是多次 Ex-Search查询-Parle G饼干 这是因为在较长的字符串中找到该字符串两次。如果我能以某种方式停止对双重出现进行评分,我将得到期望的结果,因为文档2和文档3将因字符串长度过大而受到轻微的惩罚 如何修改Solr以使其以给定的方式工作 谢谢 如果您不需要术语位置(例如,如果您没有使用诸如foo:“word1 word2”之类的短语进行搜索),您可以:省略termfrequeandpositions=“true” 如果为true,则从该字段的发布中忽

我只想为一场学期比赛打分一次,而不是多次

Ex-Search查询-Parle G饼干

这是因为在较长的字符串中找到该字符串两次。如果我能以某种方式停止对双重出现进行评分,我将得到期望的结果,因为文档2和文档3将因字符串长度过大而受到轻微的惩罚

如何修改Solr以使其以给定的方式工作


谢谢

如果您不需要术语位置(例如,如果您没有使用诸如
foo:“word1 word2”
之类的短语进行搜索),您可以:
省略termfrequeandpositions=“true”

如果为true,则从该字段的发布中忽略术语频率、位置和有效载荷。对于不需要这些信息的字段,这可以提高性能。它还减少了索引所需的存储空间。依赖于在具有此选项的字段上发出的位置的查询将自动找不到文档。对于非文本字段的所有字段类型,此属性默认为true


由于删除术语频率没有单独的设置,如果需要设置禁用的其他两个功能,则必须实现自定义相似性。

谢谢!这正是我想要的。另一方面,如果你把它设为真,你就不可能搜索像“长袖”、“跳高”这样的短语。是的,这就是折衷——这就是我所说的“术语位置”。我将进行一个小的编辑,这样就可以清楚地看到这将禁用短语搜索。在这种情况下,你唯一的选择就是最后建议的——创建(或找到一个已经有人写过的)忽略术语频率的自定义相似性。
Document 1 - Parle G Biscuits
Document 2 - Parle G Biscuits. I can eat 10 packets of Parle G Biscuits anytime. 
Document 3 - Parle G Biscuits V2 

I want to rank documents as Doc 1 > Doc 3 > Doc 2
Default answer from Solr - Doc 2 > Doc 1 > Doc 3