Difyとは
Difyは、AIアプリケーションの開発と運用を簡素化するオープンソースのLLMOps(Large Language Model Operations)プラットフォームです。以下の特徴があります。
- ノーコード開発: プログラミングスキルがなくても、AIアプリケーションを構築できます。
- 柔軟なカスタマイズ: 高度なユーザーは、APIを通じてカスタマイズが可能です。
- 多言語サポート: 様々な言語モデルに対応しています。
- データセキュリティ: ローカル環境でのデプロイが可能で、データのプライバシーを確保できます。
- RAG(Retrieval-Augmented Generation)サポート: 外部知識を活用したAIアプリケーションの構築が可能です。
Windows10/11 にDifyのインストール
Difyをインストールする手順は以下の通りです。
※デプロイしたアプリケーションを、他のユーザと共有する場合は Dify AmbassadorのSangmin Ahn 様が作られたスクリプトの実行が高速導入可能です。(要グローバルアドレス、80,443ポートの公開、DNS設定)
https://note.com/sangmin/n/n7126d67f2c97
-
Ubuntu のインストール
スタートメニューから Windows PowerShell を管理者モードで開きます。
以下のコマンド実行後、ユーザ名、パスワードを入力してインストール完了となります。> wsl --update --web-download ダウンロード中: Linux 用 Windows サブシステム インストール中: Linux 用 Windows サブシステム Linux 用 Windows サブシステム はインストールされました。 ダウンロード中: Ubuntu [==========================89.5%==================== ] ~略~ Installation successful!
-
dockerをインストール
$ sudo apt-get update $ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" $ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose $ docker -v Docker version 27.3.1, build ce12230
-
リポジトリのクローン
$ sudo apt-get install git $ git clone https://github.com/langgenius/dify.git $ cd dify/docker
-
環境設定
-
.env.example
ファイルを.env
にコピーし、必要に応じて設定を変更します。
※今回はコピーだけで大丈夫です。
cp .env.example .env
-
-
Dockerコンテナの起動
$ sudo service docker start $ sudo docker-compose up -d
-
初期設定
-
動作確認
チャットボットで動作確認
-
Dify管理画面にログイン
- 「最初から作成」をクリック
- 「チャットボット」を選択
アプリ名とモデル(例:GPT-3.5-turbo)を設定 - 「チャットボットのオーケストレーション方法」を基本に設定
- 「アプリのアイコンと名前」を「テスト」に設定
- 「作成する」をクリックしてアプリを作成
- 作成したアプリの右下「Chat」タブで動作確認
RAGチャットの作成
Difyを使用してRAG(Retrieval-Augmented Generation)チャットを作成する手順は以下の通りです:
-
データセットの準備
- RAGで使用する外部知識(ドキュメント、ウェブページなど)を準備します。
- サポートされているファイル形式(PDF、TXT、DOCXなど)で用意します。
-
データセットのアップロード
-
インデックスの作成
-
アプリケーションの作成
- ダッシュボードの「スタジオ」セクションで、「最初から」をクリックします。
- 「チャットボット」タイプを選択し、アプリのアイコンと名前をにRAGとします。
-
プロンプトの設定
- システムプロンプト(手順)を設定し、RAGの動作を定義します。
- 例:「ユーザーの質問に対して、アップロードされたデータセットから関連情報を検索し、それを基に回答を生成してください。」
-
データセットの関連付け
- コンテキストから追加を選択し、先ほど用意したデータセットを関連付けます。
-
テストと調整
- チャットインターフェースでテスト質問を行い、RAGが正しく機能しているか確認します。
- 必要に応じて、プロンプトや設定を調整します。
-
デプロイ
- テストが成功したら、アプリケーションを公開することが可能です。
以上の手順で、Difyを使用してRAGチャットアプリケーションを作成することができます。RAGにより、AIモデルは外部知識を活用して、より正確で文脈に即した回答を生成することが可能になります。