Fess 13.9.2のリリース

Fess 13.9.2をリリースしました。今回は、elasticsearchのバージョンは前回のリリースからは変わらず、商用利用で必要な細々とした修正になります。ウェブアプリ側へのプラグインの指定がしやすくなったり、データストアクロールでファイルリストのクロールでディレクトリの指定ができるようになったり、くらいかも。elasticsearchもそろそろリリースされそうな気もするので、リリースされたら、それに合わせてリリースすると思います。

Googleのautocompleteの話

How Google autocomplete predictions are generatedに概要的な話が書いてあったので、その概要をまとめると

  • 検索している言語や場所によって内容を変える
  • 文書になっているような長いクエリーは一部だけから生成する
  • 最近の話題などのフレッシュネスが考慮する
  • クエリーのトピックを考慮する(旅行といっても場所によって目的とか異なるとか)
  • 不適切なワードは自動でチェックする
  • 人名の誹謗中傷を防ぐ

という感じだろうか。

Fessでも対応できている部分もあれば、不適切ワードの自動除外とか、対応できていない部分もあるなと…。Fessだと、ワードを並べただけのような複数語のサジェストワード生成などの対応を考慮したりしているのだけど、その辺がどうしているのかとかは書いていなかったので、どうしているのかなと気になったままである…。

Dockerイメージをghcr.ioに移行

DockerHubに上げてあるDockerイメージもいつ消えてしまうかわからないので、codelibsで置いておいたものをghcr.ioに移行しました。結構な量があったので、ちょっとずつ移行したら2週間近くかかってしまったのと、ランダムな感じで移行していったので、タグの順番がランダムになってしまってます…。まぁ、今後、リリースしていけば最新のもの順になっていくと思うので、とりあえず、移行したということで。

Fess 13.9.1のリリース

Fess 13.9.1をリリースしました。修正的には細かいことしかしていない気もするけど、商用案件でクロールするファイル名から情報を抜き取って、カスタムフィールドに詰めて検索や表示したいというのを何度も聞くので、そろそろ汎用的な対応ができるようにFess Ingestを拡張した感じ。たとえば、ファイル名が「年月日.txt」みたいな感じだったら、ファイル名から年フィールドや月フィールドに値を入れるみたいことをFess Ingestをプラグインで差し込めばできるようになる的な感じ。

それ以外は普通にelasticsearch 7.9.2にしたくらい。いつもはelasticsearchのリリース後は1週間位してからリリースしているけど、今回は修正内容も少ないので、24時間以内にリリースした。おそらく、今までで最速なリリースな気がする。

という感じですが、何かあればフォーラムをご利用ください。

docsearch.codelibs.org

細かいことは運用しながら考えるパターンだけど、docsearch.codelibs.orgを作ってみた。

技術系の情報で正しい情報を知りたいときにググってもやってみた系の情報がヒットすることが多い…。ということで、公式サイトの情報だけをインデックスして、検索しようかなと思っている。インデックス対象は自分でよくサイト使うベースなものを地道に加えて行く感じかなと思う。この辺も使いながら変えてはいくと思うけど。

まずは動かすことを優先しているので、デフォルトの状態に近いが少しずつ変えていければなと思っている。これを動かすために必要なコードは、docker-docsearchに置いてある。FessとDockerで社内ドキュメントを検索するとかの参考になるかもしれない。ちなみに、docsearch.codelibs.orgはAWSのLightsailで月$40くらいのインスタンスで運用している。LightsailはCPUを使いすぎると、停止してしまうので、adaptive.load.control=20にして、20%以上のCPU負荷のときはクロールなどの処理を停止させることで、CPU負荷が上がりすぎないように調整している。これをしないと、Lightsailやt系のインスタンスで普通にシステムが停止する状態になります…。

という感じで、Fessの動作確認や自分の検索が楽になるようにという感じで作った感じですが、何かあればフォーラムとかでも良いのでお知らせください。