はじめに
dify-plugin-tools-dbquery は、特殊化された ダイファイ 1.0プラットフォーム用に設計されたオープンソースのプラグインで、開発者のjunjiemがGitHubで公開しています。このプラグインは、Large Language Model (LLM)に基づいたアプリケーションを構築する際に、データベースからデータを抽出し、LLMと連携して動的なコンテンツを生成するためのデータベースクエリ機能を提供します。このプラグインには、Database Query UtilsとDatabase Query Utils (Pre-authorisation)という2つの主要なツールが含まれており、スマートクイズやデータ分析アシスタントなどのシナリオに適しています。プラグインはGitHub経由でのインストールをサポートし、オフラインパッケージングオプションを提供します。
機能一覧
- データベースクエリーツールLLMの入力としてSQLクエリでデータベースからデータを取得する。
- 認可前の問い合わせサポートデータベースへのアクセスプロセスを簡素化するために、事前に設定された権限に対するクエリ機能を提供します。
- Difyプラットフォームの統合Difyのワークフローとインテリジェンスをシームレスに組み込み、アプリケーションのデータ処理能力を強化します。
- オープンソースとオフラインパッケージのサポート幅広い導入ニーズに対応するため、ソースコードとオフライン・インストール・パッケージが用意されています。
- ダイナミックなデータ生成クエリの結果をLLMに入力し、文脈に応じた回答や分析を行います。
ヘルプの使用
設置プロセス
dify-plugin-tools-dbqueryのインストールはGitHubリポジトリかオフラインパッケージで行う必要があります:
方法1:GitHub経由でインストールする
- GitHubリポジトリへのアクセス
ブラウザを開き、次のように入力する。https://github.com/junjiem/dify-plugin-tools-dbquery
をクリックし、プロジェクトページに移動する。 - Difyプラグイン管理へ
Difyにログインし、右上の "Plugins "をクリックしてプラグイン管理画面に入り、"Install via GitHub "を選択します。 - 倉庫情報の入力
インストールページでリポジトリのアドレスを入力する:https://github.com/junjiem/dify-plugin-tools-dbquery
でバージョン番号を選択し.difypkg
ファイル(持っていない場合は、自分でパッケージ化する必要がある。) - 署名検証問題の解決
プラグイン検証が有効になっており、インストールしたいプラグインに不正な署名があります。環境
ドキュメンテーション- 見つける
環境
ファイル(通常はDifyのデプロイディレクトリ)にあります。 - 追加または変更する:
FORCE_VERIFYING_SIGNATURE=false
. - Dify サービスを再起動します:
docker-compose restart
- もう一度インストールしてみてください。
- 見つける
- 設置完了
インストール」をクリックし、Difyがプラグインをダウンロードしてデプロイするのを待ちます。
方法2:オフラインパッケージをタイプしてインストールする
ネットワーク環境なしで使用する必要がある場合は、公式の指示に従ってオフラインパッケージをパックすることができます:
- 環境を整える
- Docker、Python、pipがインストールされていることを確認する。
- ダウンロード Dify プラグイン CLIお使いのシステムに合ったバージョンを選択してください(例
dify-plugin-linux-amd64
).
- クローン倉庫
git clone https://github.com/junjiem/dify-plugin-tools-dbquery.git
cd dify-plugin-tools-dbquery/db_query
- 依存関係のダウンロード
以下のコマンドを実行して、依存関係をローカルに保存する:
pip download -r requirements.txt -d ./wheels --index-url https://mirrors.aliyun.com/pypi/simple
sed -i '1ii--no-index --find-links=./wheels/' requirements.txt
- オフライン・パッケージ
親カタログに戻り、梱包する:
cd ...
dify-plugin-linux-amd64 プラグイン・パッケージ ./db_query
mv db_query.difypkg db_query-linux-amd64.difypkg
生成された db_query-linux-amd64.difypkg
つまり、オフラインのパッケージなのだ。
5. ディファイ設定の調整
プラグインのサイズが50MB(デフォルトの制限)を超える場合は 環境
::
PLUGIN_MAX_PACKAGE_SIZE=524288000
(500MB)nginx_client_max_body_size=500m
- サービスを再起動する:
docker-compose restart
- インストールのアップロード
Difyのプラグイン管理ページで、"Upload Offline Packages "を選択し、以下を選択します。db_query-linux-amd64.difypkg
ファイルでインストールを完了する。
主な機能の操作
インストールが完了したら、以下の手順でプラグインを使用することができます:
1.データベースクエリの設定
- ディファイ・スタジオに入る
Difyプラットフォームのワークスペースで、Studioを開き、アプリケーション(ChatflowやWorkflowなど)を選択します。 - 問い合わせツールの追加
ワークフロー・エディターで、"Add Tool "をクリックし、以下のツールを選択する。データベースクエリーユーティリティ
もしかしたらデータベースクエリユーティリティ(事前承認)
. - クエリーパラメーターの設定
- 通常のクエリーツールの場合は、次のようなSQL文を入力する:
SELECT name, age FROM users WHERE age > 18
- 事前に承認されたツールの場合は、事前に設定されたクエリーIDを入力するか、デフォルトのクエリーを使用します。
- データベース接続の設定(ホスト、ポート、ユーザー名、パスワードなど):
DB_HOST=ローカルホスト
DB_PORT=3306
DB_USER=ルート
DB_PASSWORD=あなたのパスワード
- テスト」をクリックして、返されたデータが正しいことを確認する。
2.統合LLM出力
- ワークフローの接続
クエリーツールの出力をLLMノードに接続する。クエリの結果は、例えばコンテキスト入力として使用される: - どのユーザーが18歳以上ですか?
- クエリーの結果
[氏名": "張三", "年齢": "25}, "氏名": "李斯", "年齢": "30}]。
- LLM OUTPUT: "チャン・サン(25歳)とリー・シー(30歳)は18歳以上です。"
- カスタム・キュー
LLMノードにプロンプトワードを設定する:
次のデータに基づいて質問に答えてください: {{query_result}}
3.アプリケーション例
- 取る:: 「パフォーマンス・ランキング・アシスタント」の構築。
- 動く::
- Chatflowアプリケーションを作成します。
- 増加
データベースクエリーユーティリティ
戦況表を確認すること:SELECT player, score FROM leaderboard ORDER BY score DESC LIMIT 5
- LLMをつなぐ、キューワード:
上位5選手の名前とスコアをリストアップ: {{query_result}}
- ユーザーの質問、"トップ5は?"
出力:"上位5選手は、チャン・サン(100点)、リー・シー(90点)など"
ほら
- 安全性事前承認ツールは、データ漏洩を避けるため、承認の範囲を明確にする必要がある。
- パフォーマンス最適化ビッグデータをクエリする場合は
リミット
またはインデックスを作成し、効率を向上させる。 - ドキュメンテーション・サポートもし不明な点があれば、GitHubのサンプルファイル(例えば
.yml
)またはIssueを提出してください。
以上の手順で、ユーザはデータベースクエリとLLMの効率的な組み合わせを実現するために、dify-plugin-tools-dbqueryをすぐに使い始めることができます。