さわってみよう watsonx.data #3 〜No Codeで始めるRAG編〜

**この記事について**
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を選択してプロビジョニングしておきます。

![スクリーンショット 2025-03-24 15.25.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/02d617af-3178-454b-ad7d-f17ca697f672.png)


**watsonx.aiでChat with Documentを起動**
![スクリーンショット 2025-03-24 15.22.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/601b46a1-d28c-43b7-8ede-c4ccaf3f2114.png)

watsonx.aiにログインします。
画面左上の書類アイコン(キャプション"書類によるグラウンド確保")をクリックし、"ベクトル索引の作成"を選択します。

**ベクトル・ストアとしてwatsonx.data Milvusを選択**
![スクリーンショット 2025-03-25 15.05.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/0993b4e8-98c0-4457-a5fc-763c9f31c838.png)

画面左上の"ベクトル・ストア"から"watsonx.data Milvus"を選択します。

**ベクトル・データベースの詳細のセット**
![スクリーンショット 2025-03-25 15.09.52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/a6730727-8022-4f7f-8a2c-f558b221223a.png)

詳細の定義に名前を記述します(この例では、"MilvusDB001")。
画面右上"ベクトル・データベースの詳細"では"watsonx.dataのMilvusに自動的に接続する"をせ選択します。
"watsonx.data インスタンス"に値をセットします。
"Milvusのインスタンス"に値をセットします。
その後、青色のボタン"接続の作成"をクリックします。

**Milvusへの接続情報のセット**
![スクリーンショット 2025-03-25 15.10.06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/b1c76bb3-a3f6-427a-96a1-9ad381f2d6b2.png)
"watsonx.dataのMilvusに自動的に接続する"を選択しておいたので、ホスト名、ポート番号、ユーザー名、パスワードなどは自動的にセットされています。

**(ご参考) watsonx.dataの接続情報**
セットされていなければ、watsonx.dataのWebコンソールから"接続情報"(画面左上)をクリックするとMilvusに必要な接続情報が得られます。
![スクリーンショット 2025-03-25 16.55.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/22280dcb-6be9-4032-a645-b66d23cf8e45.png)

**Milvus接続のテスト**
![スクリーンショット 2025-03-25 15.10.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/56c54d18-ec80-4dd9-8499-646650e98dc2.png)

接続に必要な情報がすべてセットされていると青いボタン"接続のテスト"が現れます。
このテストボタンをクリックします。
接続テストが正常終了したことを確認して、青色のボタン"作成"をクリックします。

**ベクトル・データベースの詳細情報を入力**
![スクリーンショット 2025-03-25 15.10.30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/703b415b-7e2d-4ebc-ba7d-7edffb94d9ec.png)
"接続"の値として、直前のステップで作成した接続"watsonX-data-milvus-Milvus01"をセットします。
"データベース"には"default"をセットします。
"埋め込みモデル"には例えば"granite-embedding-107m-multilingual"をセットします。
青い"次へ"ボタンをクリックします。

**PDFファイルを選択**
![スクリーンショット 2025-03-25 15.11.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/06a6f86f-8647-4185-bc80-3b66f79551c4.png)

この例では既にアップロードしておいた日本語のPDFファイルを選択しています。
このステップで任意のファイルなどをアップロードすることもできます。
**(ご参考)新規コレクションとして任意のファイルをアップロード**
対応しているファイルはPPTX, PDF, TXT, JSON, HTML, CSV, XLSXです。 
なお、ファイルサイズには上限があります(画面ショット内の記述をご参照)。
![スクリーンショット 2025-03-25 17.19.35.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/0280055e-f9ac-45ca-9ea6-3534a2a043e8.png)



**Milvusを情報源とするRAGがセットされました**
![スクリーンショット 2025-03-25 15.12.12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3295277/b5b47ea1-9f25-43f2-959a-53518bd1f317.png)

以上でNo CodeによるMilvusを情報源としたRAG設定は終わりです。
Chat with Documentによるチャットの準備が整いました。
Chat with Document自身の使い方は例えばこちらのQiita記事などをご参照ください。
https://qiita.com/Shumpei_Kubo/items/0a66cbf1a800de0a3c5f