メインコンテンツへスキップ

MisskeyでMeilisearchを利用する際の日本語検索の精度を向上させる

·114 文字·1 分
AmaseCocoa
著者
AmaseCocoa
You need donut?

体感ではそんな印象はないけど気になるので入れ替えてみる。

Docker
#

アップデート手順はほとんど参考記事のものです。

コンテナを停止する。

1
$ docker compose down

dumpを作成する。

$ curl  -X POST 'http://meilisearchのFQDN/dumps' -H 'Authorization: Bearer (MEILI_MASTER_KEYに設定した値)'

以下を実行してstatusがsucceededになったらok。

$ curl -X POST 'http://meilisearchのFQDN/tasks/(dumpsの返り値のtaskUid)' -H 'Authorization: Bearer (MEILI_MASTER_KEYに設定した値)'

(composeに設定したmeilisearchのディレクトリ)/dumpsにdumpファイルが生成されているはず。

(念の為) 先に(composeに設定したmeilisearchのディレクトリ)/data.msを別の場所にコピーしておく。

Meilisearchのdocker imageをMeilisearch 1.3.0系の

image: getmeili/meilisearch:prototype-japanese-4

に置き換える。

次にこのコマンドを実行してdumpを取り込む

$ docker run -it --rm -p 7700:7700 -v /meili_data:/meili_data getmeili/meilisearch:prototype-japanese-4 meilisearch --import-dump /meili_data/dumps/(dumpの名前)

最後にコンテナを起動して完了。

$ docker compose up -d

参考
#

非Docker
#

自動でビルドされたバイナリをリリースに投げるようにしました。ビルドが面倒だったりリソースが不足したりする人はここからダウンロードすることもできます。

ビルドする場合
#

Dockerを使っていない場合は少し手順が複雑になる。

GitとRustがインストールされていない場合はインストールする。

Meilisearchのリポジトリをクローン、ディレクトリを移動する。

$ git clone https://github.com/meilisearch/meilisearch
$ cd meilisearch

v1.3.4をチェックアウトする

$ git checkout v1.3.4

最後にrustをアップデートして、中国語のトークン化を無効にしたバージョンのMeilisearchをビルドする。

$ rustup update

$ cargo build --release -p meilisearch -p meilitool --no-default-features --features "analytics mini-dashboard japanese"

最後にドキュメントの手順を実行してMeilisearchを更新すれば完了。

参考
#

注意点
#

中国語のトークン化を無効にして精度を向上させているらしいので(このあたりは詳しくないのでわかりませんが) 多分中国語の精度がめちゃくちゃ落ちます。

関連記事

MisskeyのMedia Proxyを自作した
·774 文字·4 分
何を狂ったのかCMSを一から作った話
·66 文字·1 分