gpt4 book ai didi

sorting - 在Solr中增强 bool 字段

转载 作者:行者123 更新时间:2023-12-04 06:07:07 24 4
gpt4 key购买 nike

是否有可能在Solr中增强 bool 字段,使其获得更高的分数?

我们有一个看起来像这样的索引:

  • document_id
  • 标题
  • 说明
  • 关键字
  • is_reviewed

  • 搜索时,已审核的文档(即is_reviewed = true)应比未审核的文档具有更大的权重,而不是完全排除它们。

    使用 is_review:true^100似乎无效,它会排除未审查的项目,而不仅仅是给它们较低的权重。如果有其他方法可以实现?谢谢!

    最佳答案

    一些查询解析器具有专用于这种用法的功能。例如,dismax查询解析器具有boost query bq ,通过将其子句添加到原始查询中,您可以增强与查询匹配的文档。还有一个boost function bf ,它允许您将分数乘以函数的结果。例如,使用is_review作为此bf参数,

  • 将其is_review字段未定义的每个文档的分数乘以0。
  • 每个文档的分数,以便is_review = false将乘以1。
  • is_review = true的每个文档的分数乘以2。

  • 除非您将 is_review:true^100用作 default query operator,否则 AND不应排除未审核的项目。在这种情况下,您可以尝试将 is_review:true^100替换为 (is_review:true^100 OR is_review:false^0)

    如果您对dismax查询解析器的boost功能感兴趣,但希望坚持使用默认查询解析器,则可以使用 boost query parser,它将允许您将任何查询的分数与任何函数相乘。

    关于sorting - 在Solr中增强 bool 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10113144/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com