Skip to main content
Qdrant is the default vector store for MemWire. Three deployment options are supported: embedded (no server), local Docker, or managed Qdrant Cloud.

Embedded mode

The simplest option. Qdrant runs in-process and stores data in a local directory. No Docker or external service required.
from memwire import MemWire, MemWireConfig

config = MemWireConfig(
    qdrant_path="./memwire_data",       # directory to store vector data
    qdrant_collection_prefix="app_",   # optional prefix for collection names
)
memory = MemWire(config=config)
Use qdrant_path=":memory:" in tests for a fast in-memory store that resets between runs.

Local Docker server

Run Qdrant as a container and connect over HTTP.
docker run -p 6333:6333 -p 6334:6334 qdrant/qdrant
config = MemWireConfig(
    qdrant_url="http://localhost:6333",
    qdrant_collection_prefix="app_",
)
memory = MemWire(config=config)
Or spin up Qdrant alongside the MemWire REST API using the provided docker-compose.yml:
cd api
docker compose up

Qdrant Cloud

Sign up at cloud.qdrant.io, create a cluster, and copy your cluster URL and API key.
config = MemWireConfig(
    qdrant_url="https://<cluster-id>.us-east4-0.gcp.cloud.qdrant.io",
    qdrant_api_key="your-qdrant-api-key",
    qdrant_collection_prefix="prod_",
)
memory = MemWire(config=config)

Configuration reference

ParameterDefaultDescription
qdrant_urlNoneQdrant server URL. Omit to use embedded mode.
qdrant_api_keyNoneAPI key for Qdrant Cloud. Not required for local servers.
qdrant_pathNoneLocal directory for embedded storage. Use ":memory:" for tests.
qdrant_collection_prefix""Prefix applied to all collection names. Useful for multi-tenant isolation.