この記事では、Docker経由でDifyをインストールし、その後 オーラマ とXInferenceを使い ダイファイ 知識ベースのクイズベースのアプリケーションをすばやく構築できます。
- I. ディファイ入門
- ディファイ設置
- III.ディファイ、オラマモデルのQ&Aを追加
- IV.ディファイ知識ベースクイズ
- V. ドキュメンテーション・リンク
I. ディファイ入門
ダイファイ は、オープンソースの大規模言語モデリング(LLM)アプリケーション開発プラットフォームであり、開発者が生成AIアプリケーションを迅速に構築・展開できるように設計されています。以下は、Difyの主な特徴と機能です[1]:
- Backend as ServiceとLLMOpsのコンセプトの融合 Difyは、Backend as ServiceとLLMOpsの概念を組み合わせ、開発者が本番レベルのジェネレーティブAIアプリケーションを迅速に構築できるようにする。
- 複数のモデルをサポート Difyは、GPT、Mistral、Llama3など、何百ものプロプライエタリおよびオープンソースのLLMモデルをサポートし、複数の推論プロバイダーやセルフホストソリューションのモデルをシームレスに統合します。
- 直感的なプロンプト・オーケストレーション・インターフェース : Difyは、直感的なプロンプトIDEを提供し、プロンプトの作成、モデル性能の比較、チャットベースのアプリケーションへの音声変換などの追加機能を提供します。
- 高品質RAGエンジン ディファイには ラグ 文書の取り込みから検索までをカバーする機能を備え、PDF、PPTなどの一般的な文書フォーマットからのテキスト抽出をサポートします。
- エージェントフレームワークの統合 ユーザはLLM関数コールまたは リ・アクト Difyは、Google Search、DELL-E、Stable Diffusion、WolframAlphaなど、50以上の組み込みツールを提供しています。
- 柔軟なプロセス編成 Difyは、ロバストなAIワークフローを構築・テストするための強力なビジュアル・キャンバスを提供し、開発者が直感的にAIプロセスを設計・最適化できるようにします。
- 包括的なモニタリングおよび分析ツール Difyは、アプリケーションのログとパフォーマンスを監視・分析するツールを提供し、開発者は、実運用データとアノテーションに基づいて、ヒント、データセット、モデルを継続的に改善することができます。
- サービスとしてのバックエンド Difyの全ての機能にはAPIが付属しており、Difyをお客様のビジネスロジックに統合することが容易です。
ディファイ設置
Dify Githubのコードをローカルにコピーする [2]。
ギット クローン https://github.com/langgenius/dify.git
difyソースコードのdockerディレクトリに行き、環境変数をコピーする。
cd dify/ドッカー
cp .env.example .env
docker compose経由でアプリケーションをインストールする。
ドッカー アップDを構成する
ollamaコンテナに入りqwen2:7b
モデル
ルートIPアドレス-172-31-30-167:~/dify/ドッカー# docker pull ollama/ollama
ルートIPアドレス-172-31-83-158:~/dify/ドッカー# docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama --restart always -e OLLAMA_KEEP_ALIVE=-1 ollama/ollama
ルートIPアドレス-172-31-83-158:~/dify/ドッカー# docker exec -it ollama bash
ルートb094349fc98c:/# ollama run qwen2:7b
III.ディファイ、オラマモデルのQ&Aを追加
EC2のパブリックIPアドレスとポート80でDifyのホームページにログインし、管理者アカウントを作成する。
管理者アカウントでログインする。
ユーザー]-[設定]をクリックします。
オッラマのモデルを追加する。
増加qwen2:7b
モデルでは、Ollamaはローカルで起動されるので、URLをローカルIPアドレスに、ポートを114341
属
"qwen2-7b-instructは、拡張モデル長外挿の技法であるYARNを使用した131,072トークンのコンテキストをサポートしており、通常の使用と通常の出力を保護するために、APIはユーザ入力を128,000に、出力を最大6,144に制限することが推奨されている[3]。
"
Studio - Create blank applicationをクリックします。
Chat Assistant "タイプのアプリケーションを作成し、アプリケーション名を次のように設定します。クウェン2-7B
をクリックする。
アプリに「あなたはAIアシスタントです」というプロンプトを設定することで、「あなたはAIアシスタントです」というプロンプトと組み合わせて使用することができます。クウェン2:7B
対話テストは、ここでは外部知識ベースを導入することなく、ビッグモデルそのものを使って行われた。
IV.ディファイ知識ベースクイズ
増加ソルビット推論
提供モデル
増加テキストの埋め込み
すなわち、テキスト埋め込みモデルである。bge-m3
サーバーのURLはhttp://172.31.30.167:9997
(ここではローカル・マシンのIPであり、他のマシンにもインストール可能で、ネットワークとポートに到達可能であれば十分である)、前もってローカル・マシンでXInferenceを起動し、そしてbge-m3
モデル(前回の記事を参照)。
増加再ランク
すなわち、再配置モデルである。BGE-RERAKER-V2-M3
サーバーのURLはhttp://172.31.30.167:9997
(ここではローカル・マシンのIPであり、他のマシンにもインストール可能で、ネットワークとポートに到達可能であれば十分である)、前もってローカル・マシンでXInferenceを起動し、そしてBGE-RERAKER-V2-M3
モデル(前回の記事を参照)。
システムのデフォルト設定を表示します。
知識ベース」-「既存のテキストのインポート」-「テキストファイルのアップロード」をクリックし、文書「国境を越えたデータの流れの円滑化及び規制に関する規定」を選択する。
インポートに成功したら、テキスト検索方法を設定し、以下の項目をオンにする。再ランク
モデルを選択する。BGE-ERRANKER-V2-M3
モデルでは、デフォルトのスコア
閾値は0.5である(つまり、スコア0.5未満のテキストマッチは想起されず、より大きなモデルのコンテキストに追加されない)。
前のチャットアプリケーションで、上で作成したナレッジベースを追加し、大きなモデルに同じ質問を再質問すると、モデルがナレッジベースと連動して回答していることがわかります。
プロンプト・ログ」をクリックしてログ・ファイルを表示し、システム・プロンプトを表示することができます。</コンテキスト
真ん中だ。
作成された知識ベースをクリックして - "リコールテスト "をクリックすると、一致するテキストと知識ベースのテキストを一致させるためにテキストの段落を入力することができます、一致するテキストは、重みスコアを持って、しきい値は、上記の設定は0.5である、つまり、このスコアよりも大きい "リコール段落 "として表示されます。".