Find Vector Database Configuration in Helm Chart Values
Display Helm Chart Values
Vector Database Configuration Overview
In the Helm chart values, vector databases are configured through thevectorDB field. Dify supports two deployment modes:
The 3.9.x chart defaults touseExternal: true+externalType: "qdrant". Out of the box it is in “connect to external Qdrant” mode — you must replaceexternalQdrant.endpoint/apiKeywith your actual cluster values, otherwise theapi/workerPods will fail to start because they cannot reach the vector database.
1. Using a Built-in Vector Database
⚠️ Use with caution in production: Built-in options are only suitable for local trials and feature validation. They do not provide high availability, backups, or capacity scaling. Use the external connection method in section 2 for production environments.The Helm chart provides two in-cluster vector databases that can be enabled.
Built-in Qdrant
SetvectorDB.useExternal to false and enable qdrant.enabled to use this option.
Built-in Weaviate
weaviate only exposes the enabled toggle in the parent chart’s values.yaml, but it is actually a nested subchart (located at dify/charts/weaviate/ in the chart tarball, with about 947 lines of values). All fields of this subchart can be overridden in your values.yaml as weaviate.<field> — the common ones are listed below.
💡 To get the complete field list, download the chart and inspectdify/charts/weaviate/values.yaml:If you are connecting to an existing external Weaviate cluster, use theexternalWeaviateconfiguration in Weaviate below instead.
2. Using an External Vector Database
To connect to an external vector database, configuration takes two steps: Step 1: SetvectorDB.useExternal to true and specify externalType. The 3.9.x chart already defaults to this state (externalType: "qdrant"), so you only need to override externalType when switching to a different type.
externalXxx configuration block. The values.yaml already provides a default skeleton for each type — you only need to override the fields of your target type; there is no need to delete the other type blocks. See Section 4 Appendix for field examples of each type.
Supported Types
Types officially supported by Dify Enterprise
Dify Enterprise officially supports the following vector databases. You also receive technical support for the database connection (see Section 3).- qdrant (recommended)
- weaviate (optional)
- elasticsearch (optional)
Community-supported types
Dify Community offers support for the following vector databases. If you want to use these, Dify Enterprise also supports them, but with limited technical support (see Section 3).- milvus
- relyt
- pgvector
- pgvecto-rs
- tencent
- analyticdb
- opensearch
- lindorm
3. Enterprise Edition Technical Support Scope
When Dify Enterprise is deployed on a cloud (e.g., AWS) and connects to an external vector database, the entire chain typically involves three parties: Dify, the vector database vendor, and the cloud provider. The Dify support team will first identify which layer the issue belongs to.Shared Responsibility Model
What Dify Does Not Directly Support
The following issues may surface in Dify error messages, but the root cause is not on the Dify side and must be handled by the database vendor, cloud provider, or the user:- Vector database operations: restart, upgrade, scaling, backup/restore
- Index parameter tuning on the database side
- Network and permission-layer failures: VPC peering, security group rules, IAM/IRSA, TLS certificates
- Capacity planning and load testing: node specs, storage capacity, QPS limit estimation (Dify only provides Dify-side recommendations)
- Regressions caused by database version bugs or vendor behavior changes (Dify will follow up, but root-cause fixes are on the vendor side)
Differences Between the Two Support Tiers
For more details about the vector databases supported by your Dify Enterprise version, see values.yaml at: https://helm-watchdog.dify.ai/ . Actual technical support coverage will be evaluated by the Dify Enterprise support team based on your specific issue.
4. Appendix: Configuration Examples for Each Vector Database
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"