🤖

🤖

:gijutsu_burogu:

任意のバージョンのElasticsearchでSudachiプラグインを使う

Elasticsearch用の形態素解析器にKuromojiとは別にSudachiがあります。 こちらは外部プラグインとして提供されています。 詳しくは以下をご覧ください。

qiita.com

以下のリポジトリでElasticsearch用のSudachiプラグインが管理されています。

github.com

問題

直接ダウンロードできるように配布されているプラグインは、Elasticsearch 7.8 までしかありません。 そのため、Elasticsearch 7.13用のSudachiプラグインを取得できませんでした。

解決策

READMEにも書かれている通り、自前でプラグインをビルドする必要があります。 ./gradlew -PelasticsearchVersion=7.13.0 buildとすると、/build/distributions/配下にプラグインが生成されます。

▶ gradle -v

------------------------------------------------------------
Gradle 7.1
------------------------------------------------------------

Build time:   2021-06-14 14:47:26 UTC
Revision:     989ccc9952b140ee6ab88870e8a12f1b2998369e

Kotlin:       1.4.31
Groovy:       3.0.7
Ant:          Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM:          11.0.3 (Amazon.com Inc. 11.0.3+7-LTS)
OS:           Mac OS X 10.15.6 x86_64

ハマりどころ

バージョンXを指定しビルドした後に、バージョンYを指定してビルドすると、2回目のビルドではバージョンX用のSudachiプラグインが生成されてしまうということがありました。 1回目のビルドのキャッシュが残っていることが原因と考えられ、/build配下を削除してから再ビルドする必要があります。