Solr 从模式提升分数

Solr 从模式提升分数,solr,Solr,我有一个名为double_score的字段类型。这里的值都是预先计算的,可以采用双精度格式。我想用这个分数来提升相关的值,s.t.solr按这个顺序返回值。此外,我只想从模式开始。最后这一条似乎是我搜索/配置fu的绊脚石 谢谢 编辑:Demax <requestHandler name="default" class="solr.SearchHandler" default="true"> <lst name="defaults"> <str name=

我有一个名为double_score的字段类型。这里的值都是预先计算的,可以采用双精度格式。我想用这个分数来提升相关的值,s.t.solr按这个顺序返回值。此外,我只想从模式开始。最后这一条似乎是我搜索/配置fu的绊脚石

谢谢

编辑:Demax

<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字段。我现在没有得到任何结果。这是一个新问题的范围。我相信我知道答案,但我不会把你面对的每一个新问题的讨论搞得一团糟。每个问题最好包括一个定义明确的问题陈述,包括步骤:重现出哪里出了问题/到目前为止你做了什么,以及你想要的目标。否则,您的问题对社区的价值会降低,因此对用户的价值也会降低。但当你告诉我你的新问题的链接时,我会查出来的。