Expand description
§entelix-memory-qdrant
Concrete entelix_memory::VectorStore implementation backed by
the qdrant 1.5+ gRPC API.
Companion to the trait-only entelix_memory crate:
vendor-SDK dependencies (qdrant-client plus its tonic / prost
transitive tree) live here so users who plug their own
VectorStore pay nothing in compile time.
§One-call setup
use entelix_memory_qdrant::{DistanceMetric, QdrantVectorStore};
let store = QdrantVectorStore::builder("memories", 1536)
.with_url("http://localhost:6334")
.with_distance(DistanceMetric::Cosine)
.build()
.await?;§Multi-tenancy
Single-collection design (qdrant official multi-tenancy
guidance): every read / write / count / list rides a must
anchor on the rendered entelix_memory::Namespace. Two
tenants sharing the same operator-facing doc_id are stored as
distinct points without coordination — the qdrant PointId is
a deterministic UUID v5 of (namespace_key, doc_id). The
original doc_id survives in the payload for round-trip.
§Schema-as-code escape hatch
Operators that provision the qdrant collection externally
(helm chart, Terraform, qdrant Cloud console) call
QdrantVectorStoreBuilder::with_existing_collection — the
builder skips both collection creation and payload-index
provisioning and trusts the operator to have stamped them.
Structs§
- Qdrant
Vector Store - Concrete
VectorStorebacked by a single qdrant collection. - Qdrant
Vector Store Builder - Builder for
QdrantVectorStore.
Enums§
- Distance
Metric - Distance metric used for vector similarity. Mirrors qdrant’s own taxonomy 1:1 — operators familiar with qdrant pick the metric they would have picked there.
- Qdrant
Store Error - Errors that can surface from
QdrantVectorStore.
Constants§
- CONTENT_
KEY - Payload key carrying the document’s content text.
- DOC_
ID_ KEY - Payload key carrying the operator-supplied
doc_id. Distinct from qdrant’s internalPointIdso filters / scrolls can surface the operator id without a server-side reverse mapping. - METADATA_
KEY - Payload key carrying the document’s metadata (flat map). User
metadata fields ride here as nested JSON; filter expressions
targeting metadata reference them via
metadata.<key>paths. - NAMESPACE_
KEY - Payload key under which the rendered
Namespaceis stamped on every point. Indexed at collection-create time so themust-clause that always rides on every search/count/list query is a single index probe rather than a full scan.
Type Aliases§
- Qdrant
Store Result - Result alias used inside
entelix-memory-qdrant.