Feature フラグ

Lindera は Cargo の feature フラグを使用して、オプション機能と辞書の埋め込みを制御します。

コア Feature

Feature説明デフォルト
compress辞書の圧縮サポート有効
mmapメモリマップドファイルサポート有効
trainCRF ベースの辞書学習(lindera-crf に依存)CLI のみ
  • compressmmap はメインの lindera クレートでデフォルトで有効です。
  • train はデフォルトでは lindera-cli でのみ有効です。ライブラリとして使用する場合は --features train で明示的に有効にしてください。

辞書埋め込み Feature

これらの feature はビルド済み辞書をバイナリに直接埋め込み、実行時に外部辞書ファイルを不要にします。

Feature辞書言語
embed-ipadicIPADIC日本語
embed-ipadic-neologdIPADIC NEologd日本語
embed-unidicUniDic日本語
embed-ko-dicko-dic韓国語
embed-cc-cedictCC-CEDICT中国語
embed-jiebaJieba中国語

いずれもデフォルトでは無効です。必要に応じて有効にしてください:

[dependencies]
lindera = { version = "2.3.2", features = ["embed-ipadic"] }

組み合わせ Feature

多言語アプリケーション向けに、複数の辞書を一度に有効にするメタ Feature です。

Feature含まれる辞書
embed-cjkIPADIC + ko-dic + Jieba
embed-cjk2UniDic + ko-dic + Jieba
embed-cjk3IPADIC NEologd + ko-dic + Jieba

Feature フラグの組み合わせ

複数の feature フラグを組み合わせることができます。例えば、日本語と韓国語の辞書を両方埋め込む場合:

[dependencies]
lindera = { version = "2.3.2", features = ["embed-ipadic", "embed-ko-dic"] }

またはコマンドラインから:

cargo build --features embed-ipadic,embed-ko-dic

注意事項

  • 辞書の埋め込みはバイナリサイズを大幅に増加させます。実際に必要な辞書のみを埋め込んでください。
  • train feature は lindera-crf への依存を追加し、コンパイル時間が増加します。トークナイズのみのユースケースでは不要です。
  • mmap feature はメモリマップドによる辞書読み込みを有効にし、ディスクから読み込む大規模辞書のメモリ使用量を削減します。埋め込み辞書には影響しません。