Lucene排名 - 如何使用新的4.0评分模型

Nik*_*vac 2 lucene

拼命想在Lucene中实现一个新功能,我转向你.在这个JIRA中,Lucene基本上增加了一些额外的评分模型:https://issues.apache.org/jira/browse/LUCENE-2959

请原谅我的无知,但我真的不明白如何获得该链接中描述的lucene的"版本",以便我可以根据自己的需要使用它.该链接的作者提到他们已经实现了新的排名模型,如BM25,但我不知道从哪里获取源代码,也不知道如何使用这些新功能实现或运行Lucene.如果您对此有所了解,我们将非常感谢您的帮助.

提前致谢,

Rob*_*uir 5

正如sdolgy所提到的,你应该拉夜间构建:

Lucene:http://lucene.apache.org/core/developer.html Solr:http://wiki.apache.org/solr/NightlyBuilds

至于如何使用这些模型,它非常简单.

从Lucene中,设置IndexSearcher的相似度:

indexSearcher.setSimilarity(new BM25Similarity());
Run Code Online (Sandbox Code Playgroud)

从Solr中,在schema.xml中设置相似性:

<similarity class="solr.BM25SimilarityFactory"/>
Run Code Online (Sandbox Code Playgroud)

可以进行更高级的配置(例如,设置参数,每场配置等).

对于Lucene,请从软件包文档开始概述:https: //builds.apache.org/view/GL/view/Lucene/job/Lucene-trunk/javadoc/core/org/apache/lucene/search/similarities/包summary.html

对于Solr,请查看各个工厂的javadoc:https: //builds.apache.org/view/GL/view/Lucene/job/Solr-trunk/javadoc/org/apache/solr/search/similarities/包summary.html

如果您需要更高级的Solr配置示例,请查看http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/中的测试.

例如,此测试文件使用SchemaSimilarityFactory在不同的字段上配置不同的DFR模型,以便它可以轻松测试各种组合是否正常工作(我建议你去为每个字段配置完全不同的评分系统,除非你知道你是什么做,它只是可能,并有一些如何配置工厂的例子):http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/ CONF /架构dfr.xml

此目录中也存在对其他模型工厂的类似测试:http: //svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema- bm25.xml,http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-ib.xml,HTTP:// SVN. apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-lmdirichlet.xml,http://svn.apache.org/repos/asf/lucene/ dev/trunk/solr/core/src/test-files/solr/conf/schema -lmjelinekmercer.xml,http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/测试文件/ Solr的/ conf目录/架构tfidf.xml