Skip to main content

Where vectors come alive - A lightweight, visual-first vector database with embedded ML models

Project description

VectrixDB

License: Apache 2.0 Python Versions VectrixDB Version Downloads Issues Contact

Where vectors come alive.

A lightweight, visual-first vector database with embedded ML models - no API keys required.

Why VectrixDB?

Feature VectrixDB Qdrant Chroma Pinecone
Beautiful Dashboard Yes Basic No No
Embedded ML Models Yes No No No
4 Search Tiers Yes No No No
GraphRAG Built-in Yes No No No
Zero Config Yes No Yes Yes
No API Keys Needed Yes Yes No No
Open Source Yes Yes Yes No

Quick Start

pip install vectrixdb
from vectrixdb import Vectrix

# Create database with hybrid search (uses bundled English models)
db = Vectrix("my_docs", tier="hybrid", language="en")

# Add documents
db.add([
    "Python is great for data science",
    "JavaScript powers the web",
    "Rust is known for memory safety"
])

# Search
results = db.search("programming languages")
print(results.top.text)  # Best match

4-Tier System

Tier Features Use Case
dense Vector similarity Fast semantic search
hybrid + BM25 sparse Better keyword matching
ultimate + ColBERT late interaction Maximum accuracy
graph + Knowledge graph Complex reasoning (GraphRAG)
# Dense tier (fastest)
db = Vectrix("docs", tier="dense")

# Hybrid tier (balanced)
db = Vectrix("docs", tier="hybrid")

# Ultimate tier (best quality)
db = Vectrix("docs", tier="ultimate")

# Graph tier (GraphRAG)
db = Vectrix("docs", tier="graph")

Search Modes

# Dense - vector similarity
results = db.search("AI", mode="dense")

# Sparse - BM25 keyword
results = db.search("machine learning", mode="sparse")

# Hybrid - combined
results = db.search("neural networks", mode="hybrid")

# Rerank - with cross-encoder
results = db.search("deep learning", mode="rerank")

With Metadata

db.add(
    texts=["iPhone 15", "Galaxy S24", "Pixel 8"],
    metadata=[
        {"brand": "Apple", "price": 999},
        {"brand": "Samsung", "price": 899},
        {"brand": "Google", "price": 699}
    ]
)

# Filter by metadata
results = db.search("smartphone", filter={"brand": "Apple"})

Embedded Models

VectrixDB bundles English models (~386MB) - no downloads needed:

Model Purpose Size
e5-small-v2 Dense embeddings 129MB
ms-marco-MiniLM Reranking 129MB
answerai-colbert-small Late interaction 129MB
BM25 vocab Sparse search 17KB

Multilingual Models (auto-download)

For 100+ languages, models download from GitHub on first use:

# Multilingual (downloads ~450MB on first use)
db = Vectrix("docs", tier="hybrid")  # or language="multi"

# English only (bundled, no download)
db = Vectrix("docs", tier="hybrid", language="en")
Model Purpose Languages
multilingual-e5-small Dense 100+
mmarco-mMiniLMv2 Reranking 15+
BGE-M3 Late interaction 100+
mREBEL GraphRAG extraction 18

REST API & Dashboard

# Start server
VECTRIXDB_API_KEY=your_key vectrixdb serve --port 7337

# Open dashboard
# http://localhost:7337/dashboard
# Create collection
curl -X POST http://localhost:7337/api/v1/collections \
  -H "api-key: your_key" \
  -d '{"name": "docs", "dimension": 384}'

# Add with auto-embedding
curl -X POST http://localhost:7337/api/v1/collections/docs/text-upsert \
  -H "api-key: your_key" \
  -d '{"points": [{"id": "1", "text": "Hello world"}]}'

# Search
curl -X POST http://localhost:7337/api/v1/collections/docs/text-search \
  -H "api-key: your_key" \
  -d '{"query_text": "greeting", "limit": 10}'

Project Structure

VectrixDB/
├── vectrixdb/
│   ├── core/           # Vector index, storage, search
│   │   ├── graphrag/   # Knowledge graph
│   │   └── search/     # Search algorithms
│   ├── api/            # FastAPI server
│   ├── models/         # Embedded ONNX models
│   │   └── data/       # Bundled English models
│   ├── dashboard/      # Web UI
│   └── cli.py          # Command line
├── tests/              # Jupyter notebooks
└── requirements.txt

Installation from Source

git clone https://github.com/knowusuboaky/VectrixDB.git
cd VectrixDB
pip install -e .

Requirements

  • Python 3.9+
  • No external API keys
  • Models bundled or auto-downloaded

License

Apache 2.0

Author

Kwadwo Daddy Nyame Owusu - Boakye

GitHub: @knowusuboaky


Where vectors come alive.

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

vectrixdb-1.2.0.tar.gz (68.5 MB view details)

Uploaded Source

Built Distribution

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

vectrixdb-1.2.0-py3-none-any.whl (68.7 MB view details)

Uploaded Python 3

File details

Details for the file vectrixdb-1.2.0.tar.gz.

File metadata

  • Download URL: vectrixdb-1.2.0.tar.gz
  • Upload date:
  • Size: 68.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vectrixdb-1.2.0.tar.gz
Algorithm Hash digest
SHA256 d401f535e480927276673f9de1f951cbafba3564a887f924d3d8e0e7455fe7ef
MD5 c30b6473e3443158e20ccd749d2c6c38
BLAKE2b-256 a23ce01d3e60154da5c19d13f3580cf91a2e70eb3d9820b36995f13c188c4714

See more details on using hashes here.

File details

Details for the file vectrixdb-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: vectrixdb-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 68.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vectrixdb-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f6f5616455d619e182b1166ef6ac032bdce0fec3a9c2e3798eacf75e38285876
MD5 1d072ef295d8901eb77c46ea463be94c
BLAKE2b-256 3e69c1f714cee49595dd1e03114c73311080dec59bcff3c2f6cea12b1a64f839

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