Skip to main content

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 the vectorDB field. Dify supports two deployment modes:
The 3.9.x chart defaults to useExternal: true + externalType: "qdrant". Out of the box it is in “connect to external Qdrant” mode — you must replace externalQdrant.endpoint / apiKey with your actual cluster values, otherwise the api / worker Pods 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

Set vectorDB.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 inspect dify/charts/weaviate/values.yaml:
If you are connecting to an existing external Weaviate cluster, use the externalWeaviate configuration in Weaviate below instead.

2. Using an External Vector Database

To connect to an external vector database, configuration takes two steps: Step 1: Set vectorDB.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.
Step 2: Based on the chosen type, fill in the corresponding 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"