如何在Elasticsearch中的查询中获取max_score

巴吉什

嗨,我是弹性搜索的新手,我想知道如何获取max_score第一个查询的,然后将其与其余值进行比较。例如,如果的max_score值为2.6,我想获取该值并将其与_score查询中所有文档的进行比较

GET searchentities/_search
{
  "query": {
        "multi_match": {
          "query": "iron man",
          "type": "bool_prefix",
          "fields": [
            "title",
            "title._2gram",
            "title._3gram"
          ],
          "minimum_should_match": 2
        }
      }
}

返回以下内容:

{
  "took" : 0,
  "timed_out" : false,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 3,
      "relation" : "eq"
    },
    "max_score" : 2.4475412,
    "hits" : [
      {
        "_index" : "searchentities",
        "_type" : "_doc",
        "_id" : "IronMan",
        "_score" : 2.4475412,
        "_source" : {
          "id" : "Iron Man",
          "ad" : false,
          "verified" : false,
          "clicks" : 2,
          "photoID" : "5f8a9dd82ab79c00017722bb",
          "title" : "Iron Man "
        }
      },
      {
        "_index" : "searchentities",
        "_type" : "_doc",
        "_id" : "IronMan3",
        "_score" : 2.2448254,
        "_source" : {
          "id" : "Iron Man 3 ",
          "ad" : false,
          "verified" : false,
          "clicks" : 2,
          "photoID" : "5f8a9dd82ab79c00017722bb",
          "title" : "Iron Man 3 "
        }
      },
      {
        "_index" : "searchentities",
        "_type" : "_doc",
        "_id" : "IronMan2",
        "_score" : 2.2448254,
        "_source" : {
          "id" : "Iron Man 2 ",
          "ad" : false,
          "verified" : false,
          "clicks" : 20,
          "photoID" : "5f8a9dd82ab79c00017722bb",
          "title" : "Iron Man 2"
        }
      }
    ]
  }
}

我想看看

2.44-2.44 =  0 
2.44-2.24 = .2
2.44-2.24 = .2
阿尔宾

不幸的是,没有办法以这种方式后期处理分数。计算所有分数后,最高分数就是最高分数。此值在Elasticsearch中存在的后处理可能性中不可用。

参见:https : //discuss.elastic.co/t/using-max-score-inside-script-function/156871/3

我认为您必须编写自己的程序来处理结果并返回分数之间的差。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章