Milvusを使用したKotaemon RAG
Kotaemonは、ドキュメントとチャットするためのオープンソースのクリーンでカスタマイズ可能なRAG UIです。エンドユーザーと開発者の両方を念頭に置いて構築されています。
Kotaemonは、ローカルおよびAPIベースのLLMをサポートするカスタマイズ可能なマルチユーザドキュメントQAウェブUIを提供します。全文およびベクトル検索、図表を含む文書のマルチモーダルQA、および文書プレビューを含む高度な引用を含むハイブリッドRAGパイプラインを提供します。ReActやReWOOのような複雑な推論手法をサポートし、検索と生成のための設定可能な機能を提供します。
このチュートリアルでは、Milvusを使用したkotaemonアプリケーションのカスタマイズ方法について説明します。
前提条件
インストール
この方法でkotaemonをインストールすることをお勧めします:
# optional (setup env)
conda create -n kotaemon python=3.10
conda activate kotaemon
git clone https://github.com/Cinnamon/kotaemon
cd kotaemon
pip install -e "libs/kotaemon[all]"
pip install -e "libs/ktem"
この方法以外に、kotaemonをインストールする方法がいくつかあります。詳細は公式ドキュメントをご参照ください。
Milvusをデフォルトベクターストレージに設定する
デフォルトベクターストレージをMilvusに変更するには、KH_VECTORSTORE
を切り替えて、flowsettings.py
ファイルを変更する必要があります:
"__type__": "kotaemon.storages.MilvusVectorStore"
環境変数の設定
.env
、LLMやエンベッディングモデルに接続するために必要な情報を設定することができます。例:OpenAI、Azure、Ollamaなど。
Kotaemonの実行
環境変数を設定し、ベクターストレージを変更した後、以下のコマンドを実行することでkotaemonを実行することができます:
python app.py
デフォルトのユーザー名/パスワードは admin
/admin
kotaemonでRAGを起動する
1.AIモデルの追加
Resources
タブでは、LLMとエンベッディングモデルを追加・設定することができます。複数のモデルを追加し、アクティブまたは非アクティブに設定することができます。少なくとも1つのみを提供する必要があります。また、複数のモデルを用意して、切り替えて使用することもできます。
2.ドキュメントのアップロード
File Index
タブに移動し、カスタムドキュメントをアップロードし、管理することができます。
デフォルトでは、すべてのアプリケーションデータは./ktem_app_data
フォルダに保存されます。Milvusデータベースデータは./ktem_app_data/user_data/vectorstore
に保存されます。このフォルダをバックアップまたはコピーすることで、インストールを新しいマシンに移動することができます。
3.ドキュメントとチャットする
Chat
タブに戻ってください。チャットタブは3つの領域で構成されています:会話とファイル参照を管理する会話設定パネル、チャットボットと対話するためのチャットパネル、回答の裏付け証拠、信頼度スコア、関連性評価を表示する情報パネルです。
会話設定パネルで文書を選択することができます。そして、入力ボックスにメッセージを入力し、チャットボットに送信することで、RAGを開始することができます。
kotaemonの使い方を深く知りたい場合は、公式ドキュメントをご覧ください。