juman++のインストールに手間取った話


問題提起

echo 魅力がたっぷりと詰まっている | jumanpp --segment 
-> Model file was not specified

のようになり、そもそも実行できません。
しかし、juman++はインストールできている気がする……

jumanpp -version
-> Juman++ Version: 2.0.0-dev.20230306-70b8bc5

解決策

モデルが入っているファイルのダウンロード

jumanpp-<version> -> model ->『jumandic.jpmdl』がありますか?
そもそもモデルがないので実行できない……というわけです。
自身も"https://github.com/ku-nlp/jumanpp"からダウンロードしました。が、なぜかモデルファイルが入っていませんでした。
恐らく何かミスをしたのだと思いますが、確認してみるといいかもしれません。

コマンド正しく打つ?

一度コマンドについても確認しましょう。
"https://github.com/ku-nlp/jumanpp"によると、以下のコマンドでjuman++をインストールできます。

$ tar xf jumanpp-<version>.tar.xz # decompress the package
$ cd jumanpp-<version> # move into the directory
$ mkdir bld # make a subdirectory for build
$ cd bld
$ cmake .. \
  -DCMAKE_BUILD_TYPE=Release \ # you want to do this for performance
  -DCMAKE_INSTALL_PREFIX=<prefix> # where to install Juman++
$ make install -j<parallelism>

『cd bld』の箇所まではそのまま書き写すだけで問題ないですが、『cmake』からが厄介でした。
cmakeとはビルドの設定を行うコマンドです。

  • DCMAKE_BUILD_TYPE=Release は、パフォーマンスが最適化されたリリースビルドを指定します。

  • DCMAKE_INSTALL_PREFIX=<prefix> は、Juman++がインストールされるディレクトリを指定します。
     一般的に<prefix>は、全ユーザーがアクセス可能な /usr/local やホームディレクトリ内の任意のディレクトリ(例: ~/jumanpp)に書き換えます。

※ここで指定するディレクトリを/usr/localにしないと、毎回使用するモデルをコマンド指定しないといけなくなります。
非常に面倒なのでオススメしません。

  • make install -j<parallelism>は、使用可能なCPUコア数を指定します。
    そのため<parallelism>は数を指定すれば問題なく実行できます。"make install -j4"でもインストールできます。
    しかし以下のコマンドだと自動的に取得してくれるそうです。
    実行してないため、断定はできませんが……

make install -j$(nproc)  # Linuxでの例
make install -j$(sysctl -n hw.ncpu)  # macOSでの例

結論

今回はjuman++のインストールの方法についてまとめました。
しかしこれはあくまで私が行き詰まった箇所の解決方法であるため、もしかすると予期しないエラーが発生する可能性があります。
環境構築が一番面倒であるのは間違いないです。
皆さんも辛抱強く頑張ってください。


この記事が気に入ったらサポートをしてみませんか?