Domino IQ の RAG サポート機能で DB を対象にするには、あらかじめ以下の設定・操作を行って、DB のデータをベクトル化しておく必要があります。
- 全文索引の作成
- Domino IQ オプションで有効化(管理クライアント)
- LLM System Prompt 文書作成
- LLM Command 文書作成(対象の DB を指定し、フィールドを列挙)
- ベクトル化(updall -w 〇〇〇.nsf)
全文索引の作成
Domino IQ では、RAG の対象 DB に全文索引を作成しておくことが前提条件となっているようです。なぜ RAG なのに全文索引が必要なのかは少し不思議なところです。HCL の中の人に技術的な説明をしてほしいですね...。
今回は、私が作成した DXL のライブラリ dxlSuite のマニュアル(dxlSuite.nsf)を対象に操作します。ノーツの一般的な操作なので説明不要だとは思いますが、全文索引が作成されると .ft フォルダが作成されます。
Domino IQ オプションで有効化
全文索引ができたら、管理クライアントを開きます。対象の DB を右クリックすると、一番下に[Domino IQ...]というメニューが表示されるので選択します。
設定画面は単純で、有効 / 無効 の切り替えしかありません。「有効」を選択して[OK]をクリックします。もう一度この画面を開くとステータスが「有効」に変更されていることが確認できます。
ちなみに、全文索引を設定していない DB に対してこの作業を行うと『データベースの全文索引が作成されていません』とエラーが出ます。わかりやすくメッセージを出してくれるので、設定が漏れることはありませんね。
LLM System Prompt 文書作成
後続の LLM Command 文書作成で、LLM System Prompt 文書が必要となるので作成しておきます。AI に対して「この会話では、どのようなルール・方針・役割で振る舞うべきか」を指示するものになるので、とりあえず以下のように設定しました。
LLM Command 文書作成
LLM Command 文書を新規で作成し、必要な情報を入力します。System prompt には前段で作成した LLM System Prompt を指定します。
14.5.1 の LLM Command 文書には RAG 用のフィールドが2つ追加されています。ここに RAG 化したい DB とフィールドを指定します。
14.5.1 では、ビューやフォームを指定する機能がなく、フィールドのみの指定となります。この DB にはヘルプ以外にも文書が登録されているのですが、とりあえず、ヘルプに関連するフィールドだけを指定しておきましょう。
ノーツの DB は、このようにさまざまなフォームの文書が混在していることが珍しくありません。このあたりをどのように扱うのかは、今後の機能面・設定面で気になるところです。
ベクトル化
ここまで、準備ができたらベクトル化するコマンドをサーバコンソールに投入します。
|
load updall -w Home\Lib\dxlSuite.nsf
|
updall タスクが完了すると全文索引と同様にその DB 専用のフォルダが作成されます。
ところで、データフォルダの直下に llm_vector というフォルダが作成されているのを発見しました。名称からベクトルデータ用と思われます。先の updall で作成されたフォルダは DB 単位、llm_vector フォルダは、ベクトルデータ全体を管理するためといったところでしょうか?
最近の Domino は、データフォルダ内にフォルダを作りすぎですね...
次回の予定
ここまでで RAG 化したい DB のベクトル化までが完了しました。次回は、簡単なアプリを作成して、RAG のテストをしたいと思います。









