Skip to main content

xyberos-qdrant

Qdrant VectorStore plugin — RFC-0019, M4. Hosted or local Qdrant as an xyberos VectorStore. Passes the same parity scenarios as the stdlib SqliteVectorStore (the M4 Definition of Done).

Install

pip install -e ./qdrant
pip install qdrant-client        # or: pip install xyberos[vectors]

Usage

from xyberos import create_app
from xyberos_qdrant import QdrantPlugin

app = create_app()
app.load_plugin(QdrantPlugin(location=":memory:"))   # local, no infrastructure
# hosted: QdrantPlugin(url="https://...", api_key=os.getenv("QDRANT_API_KEY"))

store = app.resolve("vector_store")
store.upsert("ns", "doc-1", [1.0, 0.0, 0.0, 0.0], {"text": "alpha"})
hits = store.query("ns", [1.0, 0.0, 0.0, 0.0], top_k=3)

Or configure through the environment (QDRANT_URL, QDRANT_API_KEY, QDRANT_DIM) and let the xyberos.plugins entry point register it.

Design

  • Each namespace maps to a Qdrant collection using cosine distance (higher score = more relevant, matching the VectorStore contract).
  • The client is imported lazily and a clear ProviderError is raised when qdrant-client is missing.
  • Arbitrary string ids are mapped to deterministic UUIDs (Qdrant point ids are int/UUID); the original id round-trips through the payload, so the contract's string ids hold exactly.

Tests

pip install pytest
pytest tests/          # unit + parity + plugin tests

Parity tests run against Qdrant's in-memory local mode, so they need no server; they skip cleanly if qdrant-client is absent.

Ship location

[vectors] extra (qdrant-client already added to pyproject.toml).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xyberos_qdrant-0.1.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

xyberos_qdrant-0.1.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file xyberos_qdrant-0.1.0.tar.gz.

File metadata

  • Download URL: xyberos_qdrant-0.1.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for xyberos_qdrant-0.1.0.tar.gz
Algorithm Hash digest
SHA256 ca6c5b98c57fe1a6fb5945a06b369f2df03720cca71c664a0b9053576507a782
MD5 eb16ff3d549cd3b3041256209f298c65
BLAKE2b-256 7a52cb065887a35c07f05d8ccbe4faa652420e52c8392de9dae34a3c07bdcc5e

See more details on using hashes here.

Provenance

The following attestation bundles were made for xyberos_qdrant-0.1.0.tar.gz:

Publisher: pypi-plugins.yml on xyberos/xyberos-plugins

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xyberos_qdrant-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: xyberos_qdrant-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for xyberos_qdrant-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cb05297e7023625efa5f994a15ee85ab74544948371c7f1cf3f13de6b5314528
MD5 007a455983b43afa28abe38ffc0647b3
BLAKE2b-256 1591b2b7edabe2a4d92dee0a1283930ca2f0474dd5222768c56e5390dc2207ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for xyberos_qdrant-0.1.0-py3-none-any.whl:

Publisher: pypi-plugins.yml on xyberos/xyberos-plugins

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page