Skip to content

ADR-0005: Qdrant as the primary vector store

Decision

This page records a decision and its status. A Proposed decision is not binding; an Accepted decision is binding on the Factory until amended or superseded.

  • Status: Accepted
  • Date: 2026-01-01
  • Deciders: Data Architect, Knowledge Platform Lead
  • Tags: knowledge, vector, persistence

Reviewed 2026-10-09 — amended by ADR-0013 (Accepted 2026-10-09)

  • Amended 2026-10-09. The product owner accepted ADR-0013, which turns "Qdrant primary" into a retrieval contract with evidenced backend profiles. This ADR stays in force except where ADR-0013 changes it; read the two together.
  • Verified: the agent host's SetupVectorStoreIntegration supports only the in-memory connector; Qdrant, PgVector, SQL Server and Azure AI Search throw NotSupportedException. Retrieval filters tenant/tags after top-k selection, the Agent Framework search adapter passes options: null, and the record's metadata field has no vector-store data attribute. Dimensions are fixed at 1536.
  • Consequence: no page may describe Qdrant as a working, tenant-isolated path today.
  • Provenance: Date is the 2026-06-17 bulk-commit value.

Context

The Knowledge Platform performs semantic search over blueprints, docs, patterns, and code to assemble context packages for agents. It needs a performant, self-hostable vector database with strong filtering (for tenant and classification scoping) and predictable cost at scale.

Decision

Use Qdrant as the primary vector store for embeddings and semantic memory. Azure AI Search is supported as an alternative where a managed service is preferred. Vector data is rebuildable by re-embedding source artifacts.

Consequences

Positive

  • High-performance similarity search with metadata filtering for tenantId/classification.
  • Self-hostable and cost-predictable; snapshot backups.

Negative / trade-offs

  • Operational ownership of Qdrant (deployment, scaling, backups).

Neutral

  • Vector store sits behind the Knowledge Platform's services; consumers never query it directly.

Alternatives considered

Alternative Why not chosen
Azure AI Search (only) Retained as an alternative; primary chosen for cost/control and filtering.
pgvector Adequate for small scale; less specialized for high-volume ANN workloads.