ご返信ありがとうございます!
つまり、tokenizerで区切られたものをもとに空欄を設けてやるべきだとなりますでしょうか?
"synonyms": [
"ミニコン ポ, コンポ"
]
の設定(ミニコンの後に空欄を設けた)で、ちゃんと、ミニコンポと検索をかけてもコンポが引っかかるようになり、類義語とみなしてくれたように見えます。(実際に引っかかった)
そこで、やはり、上記が正しいとすると、等価類義語ということで、ミニコンポとコンポというキーワードは同等扱いになってしますと思います。ミニコンポと検索して、ミニコンポを優先したいときは、esの機能では難しく、形態素解析の辞書にミニコンではなく、ミニで分割するように登録するか、ユーザの行動データを機械学習させて、検索結果に反映させるのが解決策なのでしょうか。
また、"synonym" : {
"tokenizer" : "keyword",
"filter" : ["synonym"]
}
それや、
"synonym" : {
"tokenizer" : "false",
"filter" : ["synonym"]
}
でtokenizeせず完全一致で類義語の登録を図ろうとしましたが、
私のやり方が間違っているのか、コンポでミニコンポの検索、あるいはその逆ができませんでした。
synonymだけtokenizerさせない方法はあるのでしょうか?
お忙しい中、さらにご質問を重ねてしまい、申し訳ございません。
何卒、よろしくお願い致します。