ページビューの合計

2025年12月26日金曜日

テスト開始 #DominoIQ


Domino IQ, the standout feature of Notes/Domino 14.5.
For testing purposes, I've managed to get it working in remote mode, so here are the steps.


みなさま、こんにちは。

さてDomino 14.5 の目玉機能であるDominoIQですが、当初はしばらく静観するつもりだったのですが、思った以上に市場?、世間?、がざわつき始めたため、そうもいかなくなってきました。

そもそもDominoIQはローカルLLMを利用して、社外に問い合わせることなく生成AIを利用することが前提(もっともリモートモードでオープンなLLMを利用することも可能)ということで、弊社のような商社では取引先様との秘密保持契約なども多く結んでいて、簡単にオープンなAIを利用できないような会社でも比較的利用しやすい機能になります。
ただその分、自社のLLMの成長が不可欠になりますが、現時点では不可能です。

しかしながら来年リリース予定の次期バージョン"Domino2026"では、RAG(Retrieval-Augmented Generation:検索拡張生成)の実装が発表されました。
ということで、このまま利用することなく新バージョンを迎えることはできないと考え、まずはできることからやってみることにしました。


できること・・・
できれば社内デモも行いたい(でなければ、実際に検討する際の参考にならない = おそらく必要になるであろう追加ハードウェアの予算が取れない)・・・

ちなみに弊社の環境は、NutanixのAOS(Acropolis OS)上に仮想サーバーとして構築しています。
サーバーとしては、

  1. 本番Domino(Mail+App[Domino Leap])
  2. クラスター(クラスター+DRAPI[Domino REST API])
  3. Traveler
  4. アーカイブ
の4台で運用しています。
LLMの利用ですから、かなりのリソースが取られることが推測されるため、[1.本番Domino]への構築はあり得ません。

専用サーバーを追加(CCBライセンスですので、サーバーは何台でも無料!)も考えたのですが、一旦は[2.クラスター]に構築してみることにしました。

またLLMをどうするかですが、もちろんGPUも搭載されていない仮想サーバーですので、明らかに非力です。現在、ローカルLLMは無料でたくさん公開されていますが、やはり大きなモデルになるとレスポンスは下がるはず。
小さなモデルは動くにしても、AIとして期待できる回答に至りにくい。

ということで、今回はまずは動かすことを目的として、リモートモードで使ってみることにします。
とはいうものの、Dominoアプリケーションはリモートであろうが、ローカルであろうが設定のみで簡単に変更できるので、使える状態になっていればアプリケーションは何も手を加えずに構築できる点も考慮しています。



さてそれでは構築手順です。
今回は今年5月に開催されました第2回 Domino Lounge 大阪で野村様が発表されました「大阪Dominoサーバに勝手にDominoIQセットアップした話」を真似してみることにしました。
当日の議事録はこちらをご覧ください。
※たいへん申し訳ございませんが、資料は本文のリンク先となりますが、ノーツコンソーシアム会員限定公開になります。ノーツコンソーシアムにご興味ございましたら、こちらの上部にございます「お申し込み・ご質問」からご連絡ください。


ここからは発表資料に沿って進めて参ります。

1. リモートで利用するLLMの準備


にアクセスします。(OpenRouterの概要は割愛させて頂きます)
上部の検索窓で「Free」と入力しますと、利用可能なモデルがたくさん表示されます。
今回は「Meta: Llama 3.3 70B Instruct (free)」を利用してみます。


以下ページが表示されますので、まず赤枠のボタンをクリックしてモデル名をコピーして保存しておきます。


リンク先のページをしばらく下にスクロールすると、以下の[Create API key]のボタンが表示されますので、こちらをクリックします。


さらに開いた画面でも[Create API Key]をクリックします。

そうしますとモーダルウィンドウが表示されますので、名前を入力して[Create]をクリックします。


以上でAPIキーが表示されますので、保存しておきます。


2. ルート証明書の準備・・・その前に

先に作成したAPIを利用するには、サーバーにルート証明書を準備する必要があります。
Dominoサーバーには「証明書ストア(certstore.nsf)」がありますので、こちらに追加します。
そこで疑問が。

現在の弊社環境では本番Dominoには証明書ストアがあり、管理を行っています。
今回はクラスターサーバーで作業しているのですが、こちらには証明書ストアがありません。
作成方法として
・クラスターサーバーに新規で証明書ストアを作成する
・本番Dominoからクラスターサーバーに複製を作成する

のいずれが正解かがわかりませんでした。
ということでこちらもうかがったところ、後者の「複製」でとの事でしたので、早速作成して作業を続けます。


3. ルート証明書の追加

ここについてはダウンロードした資料でうまくできなかったため野村様に伺ったところ、「GTS Root R4」を利用するようにとの事で、以下URLを教えて頂きました。


開いたサイトをしばらく下にスクロールして、以下の[Root CAs]を展開します。


展開すると[GTS Root R4]が見つかりますので、右側の[Action]をクリックして、[Certificate (PEM)」をダウンロードします。


続いてDominoの証明書ストアに追加していきます。
メニューから[信頼するルート]を選択して、[信頼するルートの追加]をクリックします。


開いた画面で[証明書]タブを選択して、先にダウンロードしたpemファイルをテキストエディタで開して中身をすべてコピーして[貼り付け]欄に貼り付けて[要求の送信]をクリックします。


無事登録されますと、以下のようにリストに追加され、ステータスが"緑"になっていることを確認します。



4. DominoIQの有効化

次にDominoIQを利用できるように有効化します。
Domino Directoryを開き、[アクション]から[ディレクトリプロフィールの編集]をクリックします。


Domino ディレクトリプロフィール画面が開きますので、[Domino IQ]タブに移動し、Domino IQサーバーと管理サーバーの両方を設定します。
いずれも右の[サーバー]ボタンでリストが表示されますので、選択するだけでOKです。


ここで一旦Dominoサーバーを再起動します。
再起動しますと、ルートにdominoiq.nsfが作成されますので、以降はこちらのアプリケーションの設定を行います。


5. DominoIQ設定文書の確認

いよいよ設定を行います。
作成されたDomino IQ Configurationを開き、[Add Configuration]をクリックします。


開いた画面は以下となります。
・AI endpoint mode: Remote
・Domino server name: [サーバーを選択してください]
・Model: 先に保存したモデル「meta-llama/llama-3.3-70b-instruct:free」を貼り付けます
・Status: Enabled
・AI endpoint URL: https://openrouter.ai/api/v1/chat/completions
・AI endpoint API Key: 先に保存したAPIキーを貼り付けます


さて頂きました手順書では、ここから簡単なエージェントを追加してテストしているのですが、14.5の基本機能としてメールテンプレートにすでに追加されているものがありますので、こちらで確認することにします。

まずはその中身を確認していきます。
Domino IQ Configurationを開き、[System Prompts]を選択します。
すると初期にてふたつのプロンプトがあることがわかります。


[StdReplyEmail]はメールの返信文書の自動生成
[StdSummarizeEmailThread]はメールの要約機能になります。

中身としては、定義名とAIに投げかけるプロンプト文、Administratorsの3項目です。


次にコマンドです。[Commands]を開きます。
プロンプトと同様にメール返信と要約のふたつのコマンドが登録されています。


こちらの中身は、コマンド名と説明、利用するプロンプト、トークンサイズとAdministratorsになります。
先のプロンプトをこのコマンドから呼び出すイメージですね。
Lotusscriptからこのコマンドを指定するという使い方になります。


以上で設定は完了です。


6. 実際に使ってみる

いよいよテストです。
まずは要約です。サンプルとしてHCLSoftware ニュースレター 2025年11月号を利用してみます。
メール文書を開き、アクションメニューから[要約]をクリックします。



少し時間はかかりますが、結果は・・・以下のように表示されました。


いい感じですね。

続いて返信です。
こちらは[返信][全員に返信]の中に[Domino IQ履歴付き添付なしで返信]をクリックします。
結果は・・・


なんと、英文で作文してくれました。
ただ文面はそれなりのことを書いてはくれているようです。
なぜかと思い、emlファイルをテキストエディタで開いたところ、中身はSJISにはなっていたようですが、エンコードされていて日本語の標記が皆無でした。
そのため、英文で返してくれたようです。
ちなみに一般的な日本語のメールには、ちゃんと日本語で返信文を作ってくれました。


補足

さて今回はまずはDominoIQが使えるようになるまでの手順を記載させて頂きました。
普通に作業すると1時間もかからずに使えるようになるのではないでしょうか。

ただきっと皆さまが使いたい機能はこれだけではないはずです。
そのヒントというか、取り掛かりはHCLアンバサダー 浜さんのブログ記事で少し触れられておりますので、ぜひこちらもご参照ください。
ちなみに浜さんの記事では、この手前でローカルLLMの構築手順が紹介されております。


用途は無数に存在するかと思いますので、今後活用事例がいろいろと公開されることを楽しみにしたいと思います。
もちろん弊社で何かできましたら報告させて頂きます。

さて今年も1年間・・・少ない本数でしたが・・・お読み頂きありがとうございました。
引き続き、皆さまと楽しく・便利にDominoを使っていきたいと思いますので、よろしくお願い致します。

どうぞよいお年を!!!





0 件のコメント:

コメントを投稿