目前,我正在使用以下查询,并对一个术语进行正增强。
"query": {
"bool" : {
"must" : {
"term" : { "title" : {value :"word", boost: 2.0}}
}
}
}
这里描述了这种类型的查询。我想知道是否有可能像上面那样使用负提升,但不是2.0或-2.0。像这样:
"query": {
"bool" : {
"must" : {
"term" : { "title" : {value :"word", boost: -2.0}}
}
}
}
我找不到任何关于它的文档。它只告诉boost的默认值是1.0。所有的例子都使用了正增强。然而,也有一些负面的提升(在这里描述),但这是提升查询而不是术语。
最好的方法是尝试一下;-)如果你得到一个搜索异常或其他东西,你会知道负面提升是不允许的。但如果你试着去做,你就会发现事实并非如此,消极的刺激是完全有效的,并且会影响分数。
如您所见,您还可以使用boosting_query
和negative_boost
,这将降低匹配给定查询的结果(例如具有"title": "word"
的那些文档)。但是要注意,在使用这个查询时,negative_boost
值必须是一个"正"数,因为它已经在源代码中被否定了。