この記事について
RAGの情報源としてIBMのベクトル・ストア(ベクトル・データベースとも言われます) Milvus(watsonx.dataのクエリ・エンジンの一つ)を使い、No CodeでPDFファイルをMilvusにストアしてみます。
RAGのインフラとしては、watsonx.aiのChat with Documentを使います。
watsonx.data上でのMilvusのプロビジョニング
watsonx.data on IBM Cloud(SaaS版)には無料で使えるLite Planがあります。
watsonx.dataのWebコンソール内の構成管理ツール(インフラストラクチャー・マネージャー)からベクトル・データベースであるMilvusを選択してプロビジョニングしておきます。
watsonx.aiでChat with Documentを起動
watsonx.aiにログインします。
画面左上の書類アイコン(キャプション"書類によるグラウンド確保")をクリックし、"ベクトル索引の作成"を選択します。
ベクトル・ストアとしてwatsonx.data Milvusを選択
画面左上の"ベクトル・ストア"から"watsonx.data Milvus"を選択します。
詳細の定義に名前を記述します(この例では、"MilvusDB001")。
画面右上"ベクトル・データベースの詳細"では"watsonx.dataのMilvusに自動的に接続する"をせ選択します。
"watsonx.data インスタンス"に値をセットします。
"Milvusのインスタンス"に値をセットします。
その後、青色のボタン"接続の作成"をクリックします。
Milvusへの接続情報のセット
"watsonx.dataのMilvusに自動的に接続する"を選択しておいたので、ホスト名、ポート番号、ユーザー名、パスワードなどは自動的にセットされています。
(ご参考) watsonx.dataの接続情報
セットされていなければ、watsonx.dataのWebコンソールから"接続情報"(画面左上)をクリックするとMilvusに必要な接続情報が得られます。
接続に必要な情報がすべてセットされていると青いボタン"接続のテスト"が現れます。
このテストボタンをクリックします。
接続テストが正常終了したことを確認して、青色のボタン"作成"をクリックします。
ベクトル・データベースの詳細情報を入力
"接続"の値として、直前のステップで作成した接続"watsonX-data-milvus-Milvus01"をセットします。
"データベース"には"default"をセットします。
"埋め込みモデル"には例えば"granite-embedding-107m-multilingual"をセットします。
青い"次へ"ボタンをクリックします。
この例では既にアップロードしておいた日本語のPDFファイルを選択しています。
このステップで任意のファイルなどをアップロードすることもできます。
(ご参考)新規コレクションとして任意のファイルをアップロード
対応しているファイルはPPTX, PDF, TXT, JSON, HTML, CSV, XLSXです。
なお、ファイルサイズには上限があります(画面ショット内の記述をご参照)。
以上でNo CodeによるMilvusを情報源としたRAG設定は終わりです。
Chat with Documentによるチャットの準備が整いました。
Chat with Document自身の使い方は例えばこちらのQiita記事などをご参照ください。
https://qiita.com/Shumpei_Kubo/items/0a66cbf1a800de0a3c5f