当我用
请求建议者时{
"my-title-suggestions-1": {
"text": "tücher ",
"term": {
"field": "name",
}
},
"my-title-suggestions-2": {
"text": "tüchers ",
"term": {
"field": "name"
}
}
}
它返回
{
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"my-title-suggestions-1": [
{
"text": "tücher",
"offset": 0,
"length": 6,
"options": []
}
],
"my-title-suggestions-2": [
{
"text": "tüchers",
"offset": 0,
"length": 7,
"options": [
{
"text": "tücher",
"score": 0.8333333,
"freq": 6
}
]
}
]
}
我想知道为什么它不能与第一个建议者完全匹配? 第二个建议者显然有这个结果。
我可以添加其他可以解决此问题的选项吗?
编辑: 最小的映射就是这个......
{
"name" : {
"analyzer" : "standard",
"type" : "string"
}
}
答案 0 :(得分:1)
我不认为你可以这样做,我不确定你为什么要在suggestions
中完全匹配,毕竟它们是“建议”。
通常它们用于检查拼写错误。它会为您提供类似的候选建议,并且对于您输入的单词,edit distance
为2。
答案 1 :(得分:1)
添加@ ChintanShah25所说的内容:根据https://www.elastic.co/guide/en/elasticsearch/reference/2.0/search-suggesters-term.html(参见suggest_mode
),默认情况下,术语建议者将会出现:
仅针对不在索引中的建议文字术语提供建议。