ブースト値の見直し

docsearch.codelibs.orgをChromeのデフォルト検索として使っていると、あれこれと細かい検索品質調整がしたくなる今日この頃。まずは、docsearch.codelibs.orgで適用していたtitle, content, title_xx, content_xxのブースト値をFessにも反映しました。今後、タイトルに含まれる単語が優先されると思いますが、検索結果としてはこれくらいのほうが自然かなと思っています。環境によると思うので、この辺はfess_config.propertiesのquery.boost.*のあたりの値を調整してください。

そして、important_contentというフィールドも昔からあるのですが、昔はlangfieldプラグインで調整した感じだと思いますが、langfieldプラグインをやめて以降、使われない感じになっていました。本来はここに重要な単語を入れて検索結果をブーストする目的なのですが、今回は利用するように変更しました。でも、デフォルト値は-1.0にして、使われないようにしてあるので、使う場合には再インデックスしてから0以上の値を入れて調整してください。

さらに、docsearch.codelibs.orgで検索していると、英語系だとtypoしたときにヒットしないので、Fuzzyクエリーの検索結果も含めるようにしました。低いブーストなので、これでヒットした値は、検索結果の上位には出てこないとは思いますが、ヒット件数が少ないときとかはtypoもヒットしてくるようになると思います。日本語はbi-gramになっているので、この対象にならないと思いますが…。

という感じの検索品質改善を行いましたが、検索品質は対象のドキュメントにもよるので、この辺のブーストは、query.boost.*あたりで環境に合わせて調整する必要があるので、この辺の調整をしないで、Fessの検索品質が悪いとか言わないようにしてくださいね 🙂

新規クロール設定をテンプレートから作る

ググるとゴミが多い問題を何とかするために、docsearch.codelibs.orgを使いつつ、Fessの機能改善も行っていっていますが、クロール設定を追加していくときに、他の設定をコピーして作っていくのが面倒な感じでした…。前からこの問題があるのは認識しているけど、今回、クロール設定の名前を__TEMPLATE__という名前で設定を保存しておけば、新規に作成するときには__TEMPLATE__のクロール設定から設定を作る、というのを追加してみました。これで、クロール設定を追加するときに楽になるかなと…。

Fess 13.10のリリース

Fess 13.10をリリースしました。

特に新しい機能の追加はないですが、依存関係をいろいろと更新しました。あとは、Chromeでadminというパスワードはポップアップが出て怒られるので、ログイン時にパスワード変更画面を出すことで、ポップアップが出るのを回避しています。デフォルトのパスワードをadminではないものにする案もあったのですが、各種ドキュメントとかの修正とかの懸念とかもあったので、そこは変えずに、パスワードの変更を促す方法を取ることにしました。また、問題があれば検討したいとは思いますが…。という感じで、何かあれば、フォーラムにお知らせください。

ログイン後のパスワード更新

最近のChromeの変更により、単純なパスワードを利用しているログインはログイン直後にパスワードの確認が求められるようになった。Fessのデフォルトのパスワードがadminなので、普通にこのチェックに引っかかってしまう…。

とはいえ、ログイン直後にパスワードの確認のポップアップが表示される場合とされない場合とパターンがあるようだが、仕様がよくわからない…。いろいろと試したところ、以下の条件を満たすとパスワードのポップアップが表示されないらしい。

  1. formタグのaction属性が前回パスワードを送った先と同じパス
  2. パスワードを入力したinputタグのpasswordが存在する

ということで、Fessでは、次のバージョンから、adminというパスワードだったら、ログイン直後にパスワード変更を促すようにする予定です。

Fess 13.9.3のリリース

Fess 13.9.3をリリースしました。FESS_CONTEXT_PATHの設定ができなくなったいうのとか、細かいのを修正しました。あとは、今まで、組み込みelasticsearchで起動すると管理画面には、上部に黄色いアイコンで組み込みelasticsearchでは運用しないで、というお知らせをしていたのですが、それでも使う人たちはいるようなので、検索画面の方にも黄色いアイコンのお知らせが出るようにしました。組み込みelasticsearchでの起動は、お試しな感じで動作確認が簡単にできるようにするためだけのものなので、その環境で数日動かすような使い方は想定してないので…。きちんと使うためには、最近であれば、Dockerで動かしてもらうとかが楽かもしれませんね。という感じで、新規の機能とかがあるわけではないですが、elasticsearch 7.9.3に追随したリリースでした。