Solr 从模式提升分数
我有一个名为double_score的字段类型。这里的值都是预先计算的,可以采用双精度格式。我想用这个分数来提升相关的值,s.t.solr按这个顺序返回值。此外,我只想从模式开始。最后这一条似乎是我搜索/配置fu的绊脚石 谢谢 编辑:DemaxSolr 从模式提升分数,solr,Solr,我有一个名为double_score的字段类型。这里的值都是预先计算的,可以采用双精度格式。我想用这个分数来提升相关的值,s.t.solr按这个顺序返回值。此外,我只想从模式开始。最后这一条似乎是我搜索/配置fu的绊脚石 谢谢 编辑:Demax <requestHandler name="default" class="solr.SearchHandler" default="true"> <lst name="defaults"> <str name=
<requestHandler name="default" class="solr.SearchHandler" default="true">
<lst name="defaults">
<str name="defType">dismax</str>
<str name="echoParams">explicit</str>
<int name="rows">10</int>
<str name="qf">name</str>
<str name="bq">double_score</str>
<str name="debug">true</str>
<str name="q.alt">*:*</str>
</lst>
</requestHandler>
如果您希望查询结果,请使用排序顺序 您可以在此处看到如何在字段后使用排序: 如果希望在模式中设置此值,只需添加sort:double_score作为每个请求的默认参数:
<requestHandler name="default" class="solr.StandardRequestHandler" default="true">
<lst name="defaults">
<str name="sort">double_score</str>
</lst>
</requestHandler>
按此顺序返回值如果这意味着简单排序,请按照Dorin的答案进行
但是为了提高基于字段的结果,您可能需要考虑几个字段,请参见:我认为这实际上更符合我的要求。我使用Demax实现了一个解决方案,但它不能正常工作。编辑中有洞察代码吗?您需要将qf设置为双_分数。QF代表查询字段,它们将是DISMAX解析器真正考虑的字段。实际上,您设置了boost查询,这不是新手应该跳入的内容:-使用适当的wiki页面做功课。请记住,solrconfig.xml存储参数的默认值,并将在查询时被覆盖solr/select?param=overrided_value。最好在查询时设置参数:您可以在查询中更轻松地调整参数,而不是只加载一次的配置文件。默认值是要依赖的值。Hmm。因此,理想情况下,我会按名称返回查询,例如,将q=dr匹配给一群医生,然后按双_分数对这些名称重新排序,从而提高名称结果。我尝试了你所说的,把qf作为双_分数,并删除了bq字段。我现在没有得到任何结果。这是一个新问题的范围。我相信我知道答案,但我不会把你面对的每一个新问题的讨论搞得一团糟。每个问题最好包括一个定义明确的问题陈述,包括步骤:重现出哪里出了问题/到目前为止你做了什么,以及你想要的目标。否则,您的问题对社区的价值会降低,因此对用户的价值也会降低。但当你告诉我你的新问题的链接时,我会查出来的。