Skip to main content

Universal vector database client — query across multiple vector databases with different embedding models

Project description

Impera: Universal Vector Database Client

A universal client for querying across multiple vector databases that use different embedding models, returning a unified result to the caller.

The Problem

Vector databases are built around a single embedding model. When an application spans multiple vector databases — whether by design or circumstance — there is no standard way to query across them. Each database lives in an incompatible vector space, requiring the caller to manage embedding, querying, and result merging manually.

What This Is

A universal client that, given an intention as input:

  1. Identifies which embedding model each target database uses
  2. Embeds the input accordingly, once per model
  3. Queries each database in its own embedding space
  4. Returns a normalized, reconcilable result set to the caller

The loop, analysis, and reconciliation logic belong to the calling application. This client handles the embedding and search layer only.

What This Is Not

  • A vector database
  • A reconciliation or ranking engine
  • An agent or reasoning system
  • A wrapper around any single vector database or embedding provider

Specifications

This project is specification-first. The client behavior is defined by a set of open, versioned, machine-readable specs before any implementation. See spec/SPEC.md for how specs are written and governed.

The v1 spec set covers:

Spec Purpose
Registry Maps each source to its embedding model and access method
Query Format for an intention passed to the client
Result Normalized schema returned to the caller
Auth Credentials and access configuration per source
Error Error types and fallback behavior
Versioning How embedding model version changes are declared and handled

Status

Specification in progress. No implementation yet.

Contributing

Contributions to the specs are welcome via PR. See spec/SPEC.md for the process.

License

Apache 2.0

Project details


Download files

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

Source Distribution

impera-0.1.0.tar.gz (54.6 kB view details)

Uploaded Source

Built Distribution

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

impera-0.1.0-py3-none-any.whl (36.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: impera-0.1.0.tar.gz
  • Upload date:
  • Size: 54.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for impera-0.1.0.tar.gz
Algorithm Hash digest
SHA256 cdb154d2043f17f3fac17b60fd2105908a35c7cb480894b1a5f624d66ba08c9a
MD5 6ca74d4c8177cdc25e949b32d6afc531
BLAKE2b-256 357063f377a15bf0ff92b56a0ab0656cc9e9e2d6b73b6b809e336c38160d3709

See more details on using hashes here.

File details

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

File metadata

  • Download URL: impera-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 36.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.13

File hashes

Hashes for impera-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 83edae1e5b5f493ecc112669548f9824c9ee0e2938a0111c3d87f830f852cf3c
MD5 e89ba43b7c20691c9f29bb62f7837128
BLAKE2b-256 a124299337caddbe9271fcc605c1d2ed873acfb1f8dd9d9fecf706b1be05de99

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page