逆コンパウンダー
decompounder
フィルタは、指定された辞書に基づいて複合語を個々の要素に分割し、複合語の一部の検索を容 易にする。このフィルタは、ドイツ語など、複合語を頻繁に使用する言語で特に便利です。
設定
decompounder
フィルタはMilvusのカスタムフィルタです。このフィルタを使用するには、"type": "decompounder"
と、認識する単語の構成要素の辞書を指定するword_list
パラメータをフィルタの設定に指定します。
analyzer_params = {
"tokenizer": "standard",
"filter":[{
"type": "decompounder", # Specifies the filter type as decompounder
"word_list": ["dampf", "schiff", "fahrt", "brot", "backen", "automat"],
}],
}
decompounder
フィルタでは以下のパラメータが設定可能です。
パラメータ | 説明 |
---|---|
| 複合語の分割に使用される単語コンポーネントのリスト。この辞書によって、複合語が個々の用語にどのように分解されるかが決定される。 |
decompounder
フィルタは、トークナイザによって生成された用語に対して動作するため、トークナイザと組み合わせて使用する 必要があります。
analyzer_params
を定義した後、コレクション・スキーマを定義するときに、それらをVARCHAR
フィールドに適用できます。これにより、Milvusは指定されたアナライザを使用してそのフィールドのテキストを処理し、効率的なトークン化とフィルタリングを行うことができます。詳細については、使用例を参照してください。
出力例
以下は、decompounder
フィルタがテキストをどのように処理するかの例です。
元のテキスト。
"dampfschifffahrt brotbackautomat"
期待される出力(word_list: ["dampf", "schiff", "fahrt", "brot", "backen", "automat"]
を使用した場合)。
["dampf", "schiff", "fahrt", "brotbackautomat"]