V14.13で使用すべき fess-webapp-semantic-search のバージョン

ls: cannot access ‘/usr/share/opensearch/config/dictionary’: No such file or directory

これは、OpenSearchのコンテナ内に存在するものなので、Fessのコンテナ内に存在しないのは正しい状態だと思います。

DEBUGログに埋もれているような気もするので、INFOあたりで根源の問題を見つけるのが良いと思います。Internal Server Errorが返ってくるときには、fess.logには例外が出ているようにも思います。出ていないときには、そもそもFessの起動時にエラーが出ていると思うので、それが根源の問題かと思います。

ご助言頂き、ありがとうございます。
詳細にログを見る必要がある、と認識しました。
お手数をおかけしました。

だいぶ間を開けてしまいましたが、新たにサーバーを構築していました。
新たに立てたサーバーでは上記のようなエラーは発生せず、FESSが起動することを確認できました。
また、言語モデルをインストールし、システムプロパティに所望の情報を設定したうえで検索すると、検索キーワード以外の結果が表示されるので、期待する動作をしているように見えます。

ただ、‘https://semantic.codelibs.org’ で実装されている
"far fa-user"と"fas fa-robot"の表示
が出てきません。
git cloneした、
data/fess/usr/share/fess/app/WEB-INF/view/semantic/searchResults.jsp
は存在し、ご教示頂いた振り分けのコードがあることは確認できていいるのですが、検索結果には出てきません。

デバッグにあたり、どこを見たら良いかのアドバイスを頂けるとありがたいです。

たぶん、この行で設定しているsearcherのフィールドをレスポンスに返るようにしていない、とかな気がします。

システム情報の環境変数のプロパティには、
FESS_JAVA_OPTS=-Dfess.config.query.additional.responser.fields=searcher
が定義されているように見えます。
これを受けて動くための設定箇所がある、ということでしょうか。

それが設定されているなら、data/fess/usr/share/fess/app/WEB-INF/view/semantic/ のパスを参照するのは仮想ホストがsemanticで設定されている必要があるので、全般の設定でアクセスしているURLがその仮想ホストの設定になっているか?とかを確認してみると良いと思います。

全般の設定 - 仮想ホスト は、以下のようになってます。
… docker-semantic からCloneして来たファイルで設定されている内容をそのまま使用している形です。
image

ここへのアクセスが上手くいっていない、ということでしょうか。

JSPを適当に編集して、期待するJSPファイルが利用されているのか?を確認してみると良いと思います。

ありがとうございます。
その手法で、試してみます。

結果表示を担っている、searchResults.jsp は、
/usr/share/fess/app/WEB-INF/view/searchResults.jsp
になっていました。

/usr/share/fess/app/WEB-INF/view/semantic/searchResults.jsp
を読ませるにはどこで設定することになりますでしょうか。

仮想ホスト機能が適切に設定されていれば、それが利用されます。

可能であれば、もう少しお付き合いください

仮想ホストの設定として、
・Host:localhost:8080=semantic
・Host:192.168.120.63:8080=semantic
※ IPアドレス:192.168.120.63 は、FESSを起動しているサーバーのIPアドレスです。
の2通りを試しました。

特定のNASをクローリングした上で検索を実行した後に、
FESSを立ち上げているサーバー以外から(192.168.120.63:8080)でアクセスした場合、
・Host:localhost:8080=semantic
この設定の場合、検索結果が表示されます。
この時、参照している searchResults.jsp は以下を参照していてます。
/usr/share/fess/app/WEB-INF/view/searchResults.jsp
→ この結果は、仮想ホストを設定していない時と同じように見えます。
・Host:192.168.120.63:8080=semantic
この設定の場合、検索結果が「一致する情報は見つかりませんでした。」となってしまいました。
ただ、searchNoResult.jsp は以下を参照していて、仮想ホストの設定が効いているように見えます。
/usr/share/fess/app/WEB-INF/view/semantic/searchNoResult.jsp

Host:192.168.120.63:8080=semantic の設定をした場合、仮想ホストの設定は正しくできているようですが、検索のインデックスを正しく参照出来なくなってしまっているようです。
これはどういったことが原因として考えられますでしょうか。
確認するべきファイル、設定等のアドバイスを頂けるとありがたいです。

仮想ホストの記事にもあるように、クロール設定にも仮想ホストの設定が必要になります。

ありがとうございます。
大変失礼いたしました、重要なところを見逃しておりました。
クローラ側にも仮想ホストの設定を行ったら、アイコンを含め表示できるようになりました。

[docker-semanticsearch]で構築した環境を参考に、TAR.GZ版(V14.16使用)の立ち上げをしました。
基本的な動作はできているようなのですが、何点かセマンティック検索を適用しない場合との差異があります。こちらの原因特定のヒントを頂けるとありがたいです。

目下、気になっている点は以下の2項目です。
・HTML形式で記述された.eml のファイル検索結果において、.eml中のHTMLタグが検索結果に出力されて、表示崩れを生んでいるように見える。
・セマンティック検索の検索結果に対して [期間/サイズ/ファイルの種類]のフィルターが有効にならない。セマンティック検索の結果しか出ないケースの場合「該当なし」の扱いとなる。
image

emlの方は再現させる情報がないとわかりませんが、そのファセット部分は、現時点ではベクトル検索の結果の数を合算していないので、ベクトル検索のみの検索結果だとその様になると思います。

ファセットの件、承知しました。
良く使用するので拡張されるとありがたいです。

.emlの方は、例を提供することが難しいところですので、もう少し発生要件を整理をしてみます。

追加で2点ほど相談させてください。
・メンテナンス → 再インデクシング 実行時、シャード数 はいくつに設定するのが良いのでしょうか。
以下のサイトでは、
簡単導入! OSS全文検索サーバFess入門(52) セマンティック検索の利用方法 | TECH+(テックプラス)
「1」に設定するように書かれていますが、こちら↓では特に触れられていません。
GitHub - codelibs/docker-semanticsearch
「1」「5(変更せず)」で検索結果に差異があるようなので、それぞれ特徴が異なるのだろうとは思うのですが、正しく理解出来ていません。
・Language Modelを変更した場合、Indexを再作成/再Crawlingをする必要はありますでしょうか。
自分達のシステムで検索対象とするドキュメント群において、適切なLanguage Modelがあるのだろうと考えています。いろいろと試した上で最適なLanguage Modelを決定していきたいのですが、変更した際に必要な処理・手続きをお教え頂けますでしょうか。

シャード数 はいくつに設定するのが良いのでしょうか。

ドキュメント数など、要件次第に適切な値に設定してください、になると思います。
そのサイトでは、わかりやすさや問題に起きないようにするため、1にしています。

・Language Modelを変更した場合、Indexを再作成/再Crawlingをする必要はありますでしょうか。

モデルを変えたら、再インデクシングが必要です。

コメントありがとうございます。
シャード数、LMの組合せは膨大になるかもしれませんが、いろいろと試してみようと思います。

Language Modelを変更、再インデクシングを行った上で、Language Modelの評価をしています。
複数のキーワードの’AND’を前提とした検索を行う
例えば、Key-1 と Key-2 の場合、
a) [Key-1 Key-2] … 各キーワードをそのまま並べる
b) [“Key-1” “Key-2”] … 各キーワードを “”(ダブルクォーテーションで括る)
のどちらが適切な検索方法になりますでしょうか。
は、検索ボックスをイメージしています。

a) の [Key-1 Key-2] とした場合、'Key-1 Key-2’を1ワードとして検索してしまうのか、多くの場合、Defaultの Searcher で一致するものがなく(あるいは少なく)、Semantic検索の結果のみが出ている印象を持っています。
他方、b)の場合は Default の結果のみが出るケースが多く、Semantic検索が効いていない印象を持っています。

期待するところは、Defaultでの結果を得つつ、Semantic検索により補完することなのですが、良いキーワードの指定方法を教示頂けるとありがたいです。