gpt4 book ai didi

ElasticSearch:替代使用 match_phrase 来支持模糊性

转载 作者:行者123 更新时间:2023-12-02 22:38:29 26 4
gpt4 key购买 nike

我的文档有一个“描述”字段,包含 3 到 10 个句子。

我必须支持模糊性,因为我不能期望用户使用完全相同的词。

另一方面,我必须使用“match_phrase”而不是“match”,因为如果单词彼此相距太远,则文档不相关。

问题是“match_phrase”不分析单词,因此不支持模糊性。 (请参阅此处的最后一段 https://www.elastic.co/guide/en/elasticsearch/guide/master/phrase-matching.html)。

我想我需要一个创造性的解决方案来以某种方式实现这两个要求。也许通过使用其他搜索查询。

最佳答案

在对“span”查询进行一些挖掘后,发现可以通过使用“span_near”和“span_multi”来实现上述两个请求。

下面是在“描述”字段中搜索“hello world”的示例。

{
"span_near": {
"clauses": [{
"span_multi": {
"match": {
"fuzzy": {
"description": {
"value": "hello"
}
}
}
}
}, {
"span_multi": {
"match": {
"fuzzy": {
"description": {
"value": "world"
}
}
}
}
}],
"slop": 2,
"in_order": false,
"collect_payloads": false
}
},

关于ElasticSearch:替代使用 match_phrase 来支持模糊性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40854286/

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