gpt4 book ai didi

search - 提高 Elasticsearch 中的特定字段值

转载 作者:行者123 更新时间:2023-12-03 01:08:02 24 4
gpt4 key购买 nike

嗨,我需要基于字段的特定值来增强文档。我的文档包含一个名为Region的字段。基于该区域中存在的值,我需要增强文档。
这些是我的文件

{
"title":"INOX: Malleshwaram - Mantri Square",
"region":"Bangalore"
}

{
"title":"INOX: Bund Garden Road",
"region":"Pune"
}

{
"title":"INOX: Glomax Mall, Kharghar",
"region":"Mumbai"
}

我试图在我的查询中使用Rescore查询,如下所示
"rescore" : {
"query" : {
"score_mode":"total",
"query_weight" : 2.5,
"rescore_query_weight" : 0.5,
"rescore_query" : {
"match" : {
"region" : {
"query" : "mumbai",
"slop" : 2
}
}
}
}
}
}

但是它不能按要求正常工作。是否有任何方法可以解决此问题?
提前致谢!

最佳答案

为什么计分,您需要的只是增强功能。根据您使用的查询类型,可以在

"query_string": {
"fields":["region^56"],
"use_dis_max" : true,
"query": "mumbai"
}

其中^ 56是提升值。

您也可以使用此处提到的 http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl-boosting-query.html

如果您正在使用 bool(boolean) 查询,则可以使用boost这样的查询来增强所有查询
{
"bool" : {
"must" : {
"term" : { "region" : "mumbai" }
},
"boost" : 25.0
}

}

关于search - 提高 Elasticsearch 中的特定字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23053732/

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