Elasticsearch複合查詢——boosting查詢

741439599發表於2021-11-17

返回匹配positive查詢的文件,同時降低也匹配negative查詢的文件的相關性得分。

您可以使用boosting查詢來降低某些文件的匹配度,而不必將它們從搜尋結果中排除。

請求示例:

GET /_search
{
  "query": {
    "boosting": {
      "positive": {
        "term": {
          "text": "apple"
        }
      },
      "negative": {
        "term": {
          "text": "pie tart fruit crumble tree"
        }
      },
      "negative_boost": 0.5
    }
  }
}

positive
(必需的,查詢物件)您希望執行的查詢。任何返回的文件都必須匹配此查詢。

negative
(必選,查詢物件)用於降低匹配文件的關聯評分的查詢。

如果一個文件同時匹配positive和negative查詢,boosting query如下計算相關性得分:

  1. 從positive查詢中獲取原始的相關性分數。
  2. 將分數乘以negative_boost值。

negative_boost
介於0~1.0之間的浮點數,用於降低與negative查詢匹配的文件的相關性得分。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章