2015-10-03 66 views
1

目前我正在使用像以下這樣的查詢,並正面提升了詞條。彈性搜索:對詞條查詢的負面提升

"query": { 
     "bool" : { 
      "must" : { 
       "term" : { "title" : {value :"word", boost: 2.0}} 
      } 
     } 
     } 

這種類型的查詢描述爲here。 我想知道是否有可能像上面那樣使用術語的負增強,而不是2.0 a -2.0。所以像這樣:

 "query": { 
     "bool" : { 
      "must" : { 
       "term" : { "title" : {value :"word", boost: -2.0}} 
      } 
     } 
     } 

我找不到任何文檔。它只會告訴boost的默認值是1.0。所有例子都使用積極提升。然而,有一些負面的提升(描述爲here),但這是提高查詢,而不是條款。

回答

0

最好的方法是嘗試一下;-)如果你得到一個搜索異常或者你會知道負面的提升是不允許的。但是,如果你嘗試,你會發現情況並非如此,負面推動是完全有效的,並影響分數。

正如你所看到的,你也可以使用boosting_querynegative_boost這將降低匹配給定查詢的結果(例如那些有"title": "word"的文檔)。但請注意,使用此查詢時,negative_boost值必須是「正數」,因爲它在源代碼中已被取消。