すべてのプロダクト
Search
ドキュメントセンター

Elasticsearch:IK アナライザープラグイン (analysis-ik) の使用

最終更新日:Aug 11, 2026

IK アナライザープラグイン (analysis-ik) は、Alibaba Cloud Elasticsearch (ES) で中国語テキストの形態素解析機能を提供し、複数の組み込み辞書タイプを備えています。辞書をカスタマイズまたは拡張して形態素解析の精度を向上させたり、リモート管理のために Object Storage Service (OSS) から辞書ファイルを動的にロードしたりすることができます。

背景情報

IK アナライザープラグインは、トークナイザー、辞書ファイル、更新メカニズムの 3 つのコンポーネントで構成されています。

Alibaba Cloud Elasticsearch の IK アナライザープラグインは、オープンソースの IK プラグイン (infinilabs/analysis-ik) をベースにしています。main.dicstopword.dic などのデフォルト辞書は、オープンソース版と同一です。また、Alibaba Cloud Elasticsearch は、Object Storage Service (OSS) から辞書ファイルを動的にロードすることもサポートしています。

重要

IK アナライザープラグインのバージョンは、Elasticsearch クラスターのバージョンと一致させる必要があります。例えば、クラスターのバージョンが 8.17 の場合、IK アナライザープラグインもバージョン 8.17 です。

  • トークナイザー:中国語テキストを意味のあるトークンに分割し、形態素解析の粒度を制御します。

  • 辞書ファイル:トークナイザーが分割に使用する語彙を提供します。辞書はカスタマイズおよび拡張に対応しています。

  • 辞書の更新方法:コールドアップデートとホットアップデートの両方をサポートしており、ビジネス要件に合わせて柔軟に辞書を調整できます。

形態素解析ルール

IK アナライザーは、次の 2 つの形態素解析モードをサポートしています:

  • ik_max_word:最も細かい粒度でテキストを分割します。タームベースのクエリに適しています。

  • ik_smart:より粗い粒度でテキストを分割します。フレーズベースのクエリに適しています。

辞書タイプ

IK アナライザーは、次の辞書タイプをサポートしています:

辞書タイプ

説明

ファイル要件

サポートされる更新方法

メイン辞書

デフォルトのメイン辞書である main.dic には、270,000 を超える中国語の単語が含まれています。

ES インデックスにメイン辞書を設定すると、クラスターはインデックス作成時に受信データをこの辞書と照合します。一致したタームは、対応するキーワードを使用して検索可能になります。

1 行に 1 単語を記載し、UTF-8 エンコードの DIC ファイルとして保存します。

ストップワード辞書

デフォルトのストップワード辞書である stopword.dic には、atheandatbut などの英語のストップワードが含まれています。

ES インデックスにストップワード辞書を設定すると、クラスターはインデックス作成時に一致したタームを除外します。クラスターは、除外されたタームを転置インデックスに含めません。

前置詞辞書

デフォルトの前置詞辞書である preposition.dic は、トークナイザーが前置詞を後続の単語から分割するのに役立つ前置詞を格納しています。

1 行に 1 単語を記載し、UTF-8 エンコードの DIC ファイルとして保存します。

コールドアップデート

数量詞辞書

デフォルトの数量詞辞書である quantifier.dic は、トークナイザーが数量詞と名詞の組み合わせを認識するのに役立つ、単位関連の用語や数量詞を格納しています。

suffix.dic

接尾辞の用語を格納し、トークナイザーが接尾辞を含む単語を分割できるようにします。

該当なし

更新はサポートされていません

surname.dic

一般的な中国語の姓を格納し、トークナイザーが人名を認識できるようにします。

辞書の更新方法

デフォルトの辞書が要件を満たさない場合は、辞書を更新します。IK アナライザーは、次の方法をサポートしています:

更新方法

説明

シナリオ

コールドアップデート

ES クラスターを再起動し、すべてのノードに辞書の変更を適用します。

アップロードしたファイルはすべての ES ノードに配布され、ノードが再起動します。再起動が完了すると変更が反映されます。

  • デフォルトの辞書ファイルの内容を置き換える、または削除する場合。

  • 前置詞辞書ファイルまたは数量詞辞書ファイルを更新する場合。

ホットアップデート

  • 既存の辞書の内容のみが変更され、ファイル名が変わらない場合、クラスターは再起動せずに新しい辞書を動的にロードします。

  • 辞書ファイル名が変更された場合、または辞書ファイルのリストが変更された場合 (ファイルの追加、削除、または名前変更)、クラスターは設定を再ロードするために再起動します。再起動が完了すると、更新された設定が反映されます。これには、ホットアップデートの初回設定も含まれます。

説明

メイン辞書またはストップワード辞書の更新のみをサポートします。

重要

ホットアップデートを初めて設定する場合、または辞書ファイルのリストを変更する場合 (辞書ファイルの追加、削除、または名前変更)、クラスターが再起動します。以降は、ファイル名を変更せずに既存の辞書ファイルの内容のみを変更する場合に限り、再起動なしで動的に反映されます。業務への影響を避けるため、これらの操作はオフピーク時間帯に実施することを推奨します。

  • デフォルト以外のカスタム辞書ファイルを追加して、メイン辞書またはストップワード辞書を拡張する場合。

  • 既存のメイン辞書またはストップワード辞書ファイル (デフォルト辞書および拡張辞書を含む) の内容を変更する場合。

ES 辞書タイプの比較

Alibaba Cloud Elasticsearch は、類義語辞書、IK 辞書、AliNLP 辞書 (analysis-aliws) の 3 つの辞書タイプをサポートしています。次の表では、更新方法、再起動の有無、API オペレーション、ファイル形式の要件を比較しています。

辞書タイプ

更新方法

クラスター再起動の要否

API オペレーション

ファイル形式

類義語辞書

Solr または WordNet のルールに基づいてシノニムルールを作成し、辞書ファイルをコンソールにアップロードします。

要。変更はクラスターの再起動後にのみ反映されます。

該当なし

TXT ファイル

IK 辞書 (メイン辞書、コールド/ホット拡張辞書、ストップワード辞書を含む)

コンソールで辞書ファイルをアップロードするか、対応する API オペレーションを呼び出して辞書ファイルをアップロードします。

  • コールドアップデート:要。更新のたびに再起動が発生します。

  • ホットアップデート:ホットアップデートを初めて設定する場合、または辞書ファイル名もしくは辞書ファイルのリストが変更された場合に再起動が発生します。既存の辞書ファイルの内容のみが変更され、ファイル名が変わらない場合は再起動は不要です。

ホットアップデートでは、UpdateHotIkDicts オペレーションを使用します。コールドアップデートでは、UpdateDict オペレーションを使用します。

DIC ファイル (UTF-8 エンコーディング)

AliNLP 辞書 (analysis-aliws)

aliws_ext_dict.txt ファイルをアップロードして、辞書を更新します。

該当なし

TXT ファイル、ファイル名は aliws_ext_dict.txt

IK 辞書と AliNLP 辞書は、[OSS ファイルのアップロード] の方法でのみリモート辞書ファイルのロードをサポートしています。

すべての辞書タイプに共通する注意点は次のとおりです:

  • 料金:辞書の更新に追加料金は発生しません。

  • ファイルサイズの上限:辞書ファイル 1 つあたりのサイズは最大 100 MB です。辞書ファイルの合計サイズは 200 MB を超えることはできません。また、アップロードできる辞書ファイルは最大 50 個です。

  • バージョン互換性analysis-aliws (AliNLP) プラグインは 5.x または 8.x バージョンではサポートされていません。

  • sourceType パラメーター — 辞書更新 API 操作を呼び出す際、辞書ファイルの初回アップロードでは sourceType パラメーターを OSS に設定し、同じ名前の辞書ファイルの後続の更新では ORIGIN に設定します。

前提条件

  • インスタンスは正常な状態である必要があります。詳細ページでインスタンスステータスを表示します。

    説明

    このトピックでは、バージョン 7.10.0 で実行されている Alibaba Cloud ES インスタンスを使用しています。コンソールのインターフェースと機能は、バージョンによって異なる場合があります。

  • (オプション) 辞書を更新する場合は、まず次の手順を実行してください。

    • [OSS ファイルのアップロード]で更新する場合:まず OSS バケットを作成し、必要な辞書ファイルをアップロードします。

    • [ローカルファイルのアップロード]で更新する場合:まず必要な辞書ファイルをローカルマシン に保存します。

IK 辞書の更新

デフォルトの IK 辞書が要件を満たさない場合は、IK 辞書を更新してください。作業を開始する前に、更新方法を確認してください。IK 形態素解析が設定済みのインデックスでは、辞書の更新は新規データにのみ適用されます。既存データに変更を適用するには、インデックスを再作成してください。

コールドアップデート

コールドアップデートを実行するには:

警告

コールドアップデートではクラスターが再起動します。ピーク時間外に実施してください。

  1. インスタンスの詳細ページに移動します。

    1. Alibaba Cloud Elasticsearch コンソールにログインします。

    2. 左側メニューで Elasticsearch クラスター をクリックします。

    3. 上部メニューで、リソースグループとリージョンを選択します。

    4. Elasticsearch インスタンスのリストで、対象のインスタンス ID をクリックして詳細ページに移動します。

  2. analysis-ik プラグインのコールドアップデートページに移動します。

    1. 左側メニューで 設定と管理 > プラグイン設定 を選択します。

    2. ビルトインプラグインリスト タブで analysis-ik プラグインを見つけ、アクション 列の 標準アップグレード をクリックします。

  3. コールドアップデートを実行します。

    1. IK 辞書設定 - コールドパッチ ダイアログボックスで、対象の辞書の 編集 をクリックし、画面の指示に従って必要な辞書ファイルをアップロードしてから 保存 をクリックします。

      辞書ファイルは、次のいずれかの方法でアップロードできます:

      • ローカルファイルのアップロードimage アイコンをクリックするか、画面の指示に従ってローカルファイルをドラッグ&ドロップします。

      • OSS ファイルのアップロード:バケット名と辞書ファイル名を入力し、追加 をクリックします。

        • バケットと Elasticsearch インスタンスは、同じリージョンにある必要があります。

        • OSS の辞書ファイルは自動的に同期されません。ソースファイルが変更された場合は、辞書を更新して変更を適用してください。

      説明
      • 各辞書タイプでアップロードできるファイルは、DIC 形式のファイル 1 つのみです。アップロードしたファイルは、元の辞書を置き換えます。

      • 辞書ファイル名は .dic で終わる必要があります。ファイル名には英字、数字、アンダースコアを使用でき、30 文字以内にする必要があります。

      • 辞書をデフォルトファイルに戻すには、デフォルトファイルをダウンロードして再アップロードします。デフォルト辞書ファイルは、次のリンクから取得できます:

    2. リスク確認に同意し、OK をクリックしてインスタンスを再起動します。

      インスタンスの再起動後、辞書の更新が完了します。

  4. (任意)辞書の更新が反映されたかどうかを確認します。

    1. Kibana コンソールにログインします。

    2. 左上の image アイコンをクリックし、[Management] > Developer Tools を選択してコードエディターを開きます。

      次のコードを実行して、入力テキスト Chinese character input method for computers を粗い粒度で形態素解析します。

      説明

      実際の運用では、text の値を辞書内の単語に置き換えてください。

      GET _analyze
      {
        "analyzer": "ik_smart",
        "text": "Chinese character input method for computers"
      }

      想定されるレスポンスは次のとおりです:

      {
        "tokens" : [
          {
            "token" : "chinese",
            "start_offset" : 0,
            "end_offset" : 7,
            "type" : "ENGLISH",
            "position" : 0
          },
          {
            "token" : "character",
            "start_offset" : 8,
            "end_offset" : 17,
            "type" : "ENGLISH",
            "position" : 1
          },
          {
            "token" : "input",
            "start_offset" : 18,
            "end_offset" : 23,
            "type" : "ENGLISH",
            "position" : 2
          },
          {
            "token" : "method",
            "start_offset" : 24,
            "end_offset" : 30,
            "type" : "ENGLISH",
            "position" : 3
          },
          {
            "token" : "for",
            "start_offset" : 31,
            "end_offset" : 34,
            "type" : "ENGLISH",
            "position" : 4
          },
          {
            "token" : "computers",
            "start_offset" : 35,
            "end_offset" : 44,
            "type" : "ENGLISH",
            "position" : 5
          }
        ]
      }

ホットアップデート

ホットアップデートを実行するには:

説明

既存の辞書ファイルについて、ファイル名を変更せずに内容のみを変更する場合、クラスターは再起動しません。辞書ファイル名、またはファイル数が変更された場合、もしくはホットアップデートを初めて設定する場合は、クラスターが再起動します。業務への影響を最小限に抑えるため、ピーク時間外に実施してください。再起動後、辞書は自動的に有効になります。

  1. インスタンスの詳細ページに移動します。

    1. Alibaba Cloud Elasticsearch コンソールにログインします。

    2. 左側メニューで Elasticsearch クラスター をクリックします。

    3. 上部メニューで、リソースグループとリージョンを選択します。

    4. Elasticsearch インスタンスのリストで、対象のインスタンス ID をクリックして詳細ページに移動します。

  2. analysis-ik プラグインのホットアップデートページに移動します。

    1. 左側メニューで 設定と管理 > プラグイン設定 を選択します。

    2. ビルトインプラグインリスト タブで analysis-ik プラグインを見つけ、アクション 列の ローリングアップグレード をクリックします。

  3. ホットアップデートを実行します。

    1. IK 辞書設定 - ホットパッチ ダイアログボックスで、対象の辞書の 編集 をクリックします。画面の指示に従って必要な辞書ファイルをアップロードし、保存 をクリックします。

      辞書ファイルは、次のいずれかの方法でアップロードできます:

      • ローカルファイルのアップロードimage アイコンをクリックするか、画面の指示に従ってローカルファイルをドラッグ&ドロップします。

      • OSS ファイルのアップロード:バケット名と辞書ファイル名を入力し、追加 をクリックします。

        • バケットと Elasticsearch インスタンスは、同じリージョンにある必要があります。

        • OSS の辞書ファイルは自動的に同期されません。ソースファイルが変更された場合は、辞書を更新して変更を適用してください。

      説明
      • 複数の辞書ファイルをアップロードできます。ファイル名は .dic で終わる必要があります。ファイル名には英字、数字、アンダースコアを使用でき、30 文字以内にする必要があります。

      • アップロード済みの辞書ファイルを変更するには、ファイルの横にある Download アイコンをクリックしてダウンロードし、編集します。その後、元のファイルを削除して更新後のファイルを再アップロードします。元のファイルを削除した後に Save をクリックしてください。そうしないと、同じ名前のファイルが既に存在するというエラーが表示されます。

    2. OK をクリックし、Elasticsearch ノードが辞書のロードを完了するまで待ちます。

      Elasticsearch ノードは辞書ファイルを自動的にロードします。ロード時間はノードによって異なります。すべてのノードが完了するまで待ってください。

  4. (任意)辞書の更新が反映されたかどうかを確認します。

    1. Kibana コンソールにログインします。

    2. 左上の image アイコンをクリックし、[Management] > Developer Tools を選択してコードエディターを開きます。

      次のコードを実行して、入力テキスト Chinese character input method for computers を粗い粒度で形態素解析します。

      説明

      実際の運用では、text の値を辞書内の単語に置き換えてください。

      GET _analyze
      {
        "analyzer": "ik_smart",
        "text": "Chinese character input method for computers"
      }

      想定されるレスポンスは次のとおりです:

      {
        "tokens" : [
          {
            "token" : "chinese",
            "start_offset" : 0,
            "end_offset" : 7,
            "type" : "ENGLISH",
            "position" : 0
          },
          {
            "token" : "character",
            "start_offset" : 8,
            "end_offset" : 17,
            "type" : "ENGLISH",
            "position" : 1
          },
          {
            "token" : "input",
            "start_offset" : 18,
            "end_offset" : 23,
            "type" : "ENGLISH",
            "position" : 2
          },
          {
            "token" : "method",
            "start_offset" : 24,
            "end_offset" : 30,
            "type" : "ENGLISH",
            "position" : 3
          },
          {
            "token" : "for",
            "start_offset" : 31,
            "end_offset" : 34,
            "type" : "ENGLISH",
            "position" : 4
          },
          {
            "token" : "computers",
            "start_offset" : 35,
            "end_offset" : 44,
            "type" : "ENGLISH",
            "position" : 5
          }
        ]
      }

IK アナライザープラグインの使用

IK トークナイザーと Pinyin フィルターを使用してテキストをトークン化します。

  1. ES インスタンスの Kibana 開発ツールページに移動します。

    1. Kibana コンソールにログインします。

    2. 左上隅の image アイコンをクリックし、[管理] > Developer Tools を選択してコードエディタを開きます。

  2. インデックスを作成し、IK トークナイザーと Pinyin フィルターを設定します。

    次のコマンドを実行して、カスタムの ik_pinyin_analyzer を使用する ik_pinyin インデックスを作成します。このアナライザーは、ik_max_word によるトークン化と Pinyin フィルターを使用して、中国語の用語を Pinyin に変換します。

    説明

    Pinyin フィルターは、中国語のトークン化が完了した後にトークンを Pinyin に変換します。

    PUT ik_pinyin
    {
      "settings":{
        "analysis": {
          "filter": {
            "my_pinyin" : {
                "type" : "pinyin",
                "keep_separate_first_letter" : false,
                "keep_full_pinyin" : true,
                "keep_original" : true,
                "limit_first_letter_length" : 16,
                "lowercase" : true,
                "remove_duplicated_term" : true
              }
          },
          "analyzer": {
            "ik_pinyin_analyzer": {
              "type": "custom",
              "tokenizer": "ik_max_word",
              "filter": ["my_pinyin"]
            }
          }
        }
      },
      "mappings":{
        "properties":{
          "text":{
            "type" : "text",
            "analyzer" : "ik_pinyin_analyzer"
          }
        }
      }
    }

    主なパラメーターについて以下に説明します。

    • Pinyin フィルター (filter)

      説明

      利用可能なすべてのパラメーターは、Pinyin Analysis for Elasticsearch に記載されています。

      パラメーター

      説明

      my_pinyin

      カスタム Pinyin フィルターの名前です。

      type

      Pinyin フィルターを使用するには、pinyin に設定します。

      keep_separate_first_letter

      各文字の頭文字トークンを除外するには、false に設定します。

      keep_full_pinyin

      完全なピンイン形式を含めるには、true に設定します。

      keep_original

      true に設定すると、元の入力テキストが保持されます。

      limit_first_letter_length

      頭文字のシーケンスを 16 文字に制限するには、16 に設定します。

      lowercase

      true に設定すると、ピンインが小文字で出力されます。

      remove_duplicated_term

      trueに設定すると、"zh, zh"のような重複する用語が削除されます。

    • アナライザー (analyzer):

      パラメーター

      説明

      ik_pinyin_analyzer

      カスタムアナライザーの名前です。

      type

      カスタムアナライザーを定義するには、custom に設定します。

      tokenizer

      テキストを最も細かい粒度で分割するには、ik_max_word に設定します。

      filter

      my_pinyin Pinyin フィルターを適用するには、my_pinyin に設定します。

      成功した場合、次のような結果が返されます。

      {
        "acknowledged": true,
        "shards_acknowledged": true,
        "index": "ik_pinyin"
      }
  3. トークン化の結果を確認します。

    次のコードを実行すると、入力テキスト This is a test がトークン化されます。

    GET ik_pinyin/_analyze
    {
      "text": "这是一个测试",
      "analyzer": "ik_pinyin_analyzer"
    }

    次のようなレスポンスが返されます。

    {
      "tokens" : [
        {
          "token" : "zhe",
          "start_offset" : 0,
          "end_offset" : 2,
          "type" : "CN_WORD",
          "position" : 0
        },
        {
          "token" : "这是",
          "start_offset" : 0,
          "end_offset" : 2,
          "type" : "CN_WORD",
          "position" : 0
        },
        {
          "token" : "zs",
          "start_offset" : 0,
          "end_offset" : 2,
          "type" : "CN_WORD",
          "position" : 0
        },
        {
          "token" : "shi",
          "start_offset" : 0,
          "end_offset" : 2,
          "type" : "CN_WORD",
          "position" : 1
        },
        {
          "token" : "ge",
          "start_offset" : 2,
          "end_offset" : 3,
          "type" : "CN_CHAR",
          "position" : 2
        },
        {
          "token" : "一个",
          "start_offset" : 2,
          "end_offset" : 3,
          "type" : "CN_CHAR",
          "position" : 2
        },
        {
          "token" : "g",
          "start_offset" : 2,
          "end_offset" : 3,
          "type" : "CN_CHAR",
          "position" : 2
        },
        {
          "token" : "ce",
          "start_offset" : 3,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 3
        },
        {
          "token" : "shi",
          "start_offset" : 3,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 4
        },
        {
          "token" : "测试",
          "start_offset" : 3,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 4
        },
        {
          "token" : "cs",
          "start_offset" : 3,
          "end_offset" : 5,
          "type" : "CN_WORD",
          "position" : 4
        }
      ]
    }
    

英数字混合語のトークン化を最適化

ik_max_word トークナイザーを使用すると、fawjh6bcm のような英数字が混在した文字列は、検索用に効果的にトークン化されない場合があります。再現率を向上させるには、enable_single_wordtrue に設定します。これにより、混在した単語が 1 文字のトークンに分割され、文字レベルのマッチングが可能になります。

次の例では、enable_single_word を有効にしたカスタムアナライザーを作成します。

PUT my_index
{
  "settings": {
    "analysis": {
      "analyzer": {
        "ik_single_char_analyzer": {
          "type": "custom",
          "tokenizer": "my_ik_tokenizer"
        }
      },
      "tokenizer": {
        "my_ik_tokenizer": {
          "type": "ik_max_word",
          "enable_single_word": true
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "content": {
        "type": "text",
        "analyzer": "ik_single_char_analyzer"
      }
    }
  }
}

パラメーター

説明

enable_single_word

true に設定すると、英数字が混在した文字列が個々の文字トークンに分割され、モデル番号やシリアルコードのような文字列のリコール率が向上します。デフォルト: false

説明

このパラメーターは、 Alibaba Cloud Elasticsearch Serverless 環境でもサポートされています。

中国語と英語の混合検索に n-gram トークナイザーを使用

中国語テキストと混在する、jh6bcm のような連結された英字の型番を検索する場合、IK アナライザーだけでは部分一致に効果的なトークンを生成できないことがあります。この場合は、ngram トークナイザーを使用して IK アナライザーを補完または置換します。

n-gram トークナイザーは、テキストを設定可能な長さの連続した文字列に分割することで、部分文字列マッチングを可能にします。

次の例では、n-gram トークナイザーを使用するインデックスを作成します。

PUT my_ngram_index
{
  "settings": {
    "analysis": {
      "tokenizer": {
        "my_ngram_tokenizer": {
          "type": "ngram",
          "min_gram": 2,
          "max_gram": 3,
          "token_chars": ["letter", "digit"]
        }
      },
      "analyzer": {
        "ngram_analyzer": {
          "type": "custom",
          "tokenizer": "my_ngram_tokenizer"
        }
      }
    }
  },
  "mappings": {
    "properties": {
      "model_number": {
        "type": "text",
        "analyzer": "ngram_analyzer"
      }
    }
  }
}

パラメーター

説明

min_gram

グラムの最小文字数です。デフォルト: 1

max_gram

グラムの最大文字数。デフォルト: 2

token_chars

トークンに含める文字クラス。有効な値は letterdigitwhitespacepunctuationsymbol です。

n-gram トークナイザーの設定の詳細については、 「Ngram tokenizer」 をご参照ください。

よくある質問

同義語ファイルに大文字が含まれているとエラーになります。どうすればよいですか?

IK アナライザーは、同義語ファイルの処理時に大文字と小文字を区別します。同義語ファイルに大文字の単語 (例:IT) が含まれている場合、インデックス作成中に解析エラーが発生することがあります。

この問題は、次のいずれかの方法で解決できます:

  • すべての同義語を小文字に変換する:同義語ファイルを編集し、アップロードする前にすべてのエントリを小文字に変換してください。

  • アナライザーに lowercase フィルターを追加する:同義語マッチングの前にテキストを正規化するため、アナライザー設定のフィルターチェーンで synonym フィルターの前に lowercase フィルターを追加してください。例:

    PUT my_index
    {
      "settings": {
        "analysis": {
          "filter": {
            "my_synonym_filter": {
              "type": "synonym",
              "synonyms_path": "your_synonyms.txt"
            }
          },
          "analyzer": {
            "ik_synonym_analyzer": {
              "type": "custom",
              "tokenizer": "ik_max_word",
              "filter": ["lowercase", "my_synonym_filter"]
            }
          }
        }
      }
    }
    重要

    lowercase フィルターは、同義語のマッチングが行われる前にテキストが小文字に変換されるように、フィルターチェーン内で synonym フィルターより前に配置する必要があります。

参考

  • IK 辞書のホットアップデート用 API:UpdateHotIkDicts

  • IK 辞書のコールドアップデート用 API:UpdateDict