Helm Chart の値からベクトルデータベース設定を探す
Helm Chart の値を表示
ベクトルデータベース設定の概要
Helm chart の values 内で、vectorDB フィールドを通じてベクトルデータベースを設定します。Dify は 2 つのデプロイ方式をサポートしています:
3.9.x chart のデフォルト値はuseExternal: true+externalType: "qdrant"です。 つまり初期状態で「外部 Qdrant に接続」する状態になっています。externalQdrant.endpoint/apiKeyを実際の値に置き換える必要があります。設定しない場合は、api/workerPod はベクトルデータベースに接続できず、起動に失敗します。
1. ビルトインベクトルデータベースの使用
⚠️ 本番環境では使用注意:ビルトインオプションはローカル試用と機能検証のみに適しており、高可用性、バックアップ、容量スケーリングは提供されません。本番環境では第 2 節の外部接続方式をご利用ください。Helm chart は 2 種類のクラスタ内ベクトルデータベースを提供しています。
ビルトイン Qdrant
vectorDB.useExternal を false に設定し、qdrant.enabled を有効化することで利用できます。
ビルトイン Weaviate
weaviate は親 chart の values.yaml では enabled スイッチのみが明示的に列挙されていますが、実体は入れ子になった subchart です(chart tarball の dify/charts/weaviate/ に配置、約 947 行の values)。この subchart のすべてのフィールドは、ご自身の values.yaml で weaviate.<フィールド> の形式でオーバーライド可能です。よく使う項目は下表の通りです。
💡 完全なフィールドリストを取得したい場合は、chart パッケージをダウンロードしてdify/charts/weaviate/values.yamlをご確認ください:既存の外部 Weaviate クラスタに接続する場合は、後述 Weaviate のexternalWeaviate設定をご利用ください。
2. 外部ベクトルデータベースの使用
外部ベクトルデータベースは2ステップで設定できます。 ステップ 1:vectorDB.useExternal を true に設定し、externalType を指定します。3.9.x の chart は既にこの状態がデフォルト(externalType: "qdrant")ですので、別タイプに切り替える場合のみ externalType をオーバーライドしてください。
externalXxx 設定ブロックを記入します。values.yaml には各タイプ用のデフォルト雛形が予め用意されているため、対象タイプのフィールドのみオーバーライドすれば OK です。他タイプのブロックを削除する必要はありません。各タイプのフィールド例は 第 4 節 付録 をご参照ください。
サポートされているタイプ
Dify エンタープライズ版が公式サポートするタイプ
Dify エンタープライズ版は以下のベクトルデータベースを公式サポートしており、ベクトルデータベース接続に関する技術サポートも併せて提供しています(第 3 節をご参照ください)。- qdrant(推奨)
- weaviate(オプション)
- elasticsearch(オプション)
コミュニティサポートタイプ
Dify コミュニティ版は以下のベクトルデータベースをサポートしています。これらをご利用の場合、Dify エンタープライズ版でも動作しますが、Dify が提供する技術サポートは限定的になります(第 3 節をご参照ください)。- milvus
- relyt
- pgvector
- pgvecto-rs
- tencent
- analyticdb
- opensearch
- lindorm
3. エンタープライズ版技術サポート範囲
Dify エンタープライズ版がクラウド(AWS など)にデプロイされ、外部ベクトルデータベースに接続する場合、システム全体には通常 Dify、ベクトルデータベースベンダー、クラウドベンダー の 3 者が関わります。Dify サポートチームはまず、障害がどの層に属するかを判定します。責任共有モデル
Dify が直接サポートしない範囲
以下の問題は Dify のエラーメッセージとして表面化することがありますが、根本原因は Dify 側ではなく、データベースベンダー、クラウドベンダー、またはユーザーご自身による対応が必要です。- ベクトルデータベース自体の運用:再起動、アップグレード、スケーリング、バックアップ/リストア
- データベース側のインデックスパラメータチューニング
- ネットワークと権限層の障害:VPC peering、セキュリティグループの許可、IAM/IRSA、TLS 証明書
- キャパシティプランニングと負荷テスト:ノードスペック、ストレージ容量、QPS 上限の見積もり(Dify は Dify 側の推奨のみ提供)
- データベースのバージョン bug やベンダー動作変更による回帰(Dify は追跡しますが、根本修正はベンダー側で行われます)
2 つのサポートレベルの違い
ご利用の Dify エンタープライズ版でサポートされるベクトルデータベースの詳細については、values.yaml をご参照ください: https://helm-watchdog.dify.ai/ 。実際の技術サポート対応範囲は、Dify エンタープライズ版サポートチームが具体的な問題内容に基づき評価のうえ判断します。
4. 付録:各ベクトルデータベースの設定例
Qdrant
externalType: "qdrant"
Weaviate
externalType: "weaviate"
Elasticsearch
externalType: "elasticsearch"
Milvus
externalType: "milvus"
Relyt (pgvectors)
externalType: "relyt"
PgVector
externalType: "pgvector"
PgVecto-RS
externalType: "pgvecto-rs"
Tencent VectorDB
externalType: "tencent"
OpenSearch
externalType: "opensearch"
AnalyticDB
externalType: "analyticdb"
Lindorm
externalType: "lindorm"