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.0.6.tar.gz (68.4 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.0.6-py3-none-any.whl (68.7 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vectrixdb-1.0.6.tar.gz
Algorithm Hash digest
SHA256 4da3ed42c4ae824ed5b1f2bac30bbc594b67a91a5aa0d1390629109627a2a347
MD5 123103c49b540e40b094bfaae8d24144
BLAKE2b-256 5456e50796d0a26e566cab0eaabb8562a7392822a871cc4e12e025c3e112e111

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vectrixdb-1.0.6-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.7

File hashes

Hashes for vectrixdb-1.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 f301e4f9d69f33208b809bc2bcdd53f4d46237631dba8890241549573bc42bee
MD5 4c615e6a87643b7b80e31d96e76c876e
BLAKE2b-256 45f051b4ecc436776bd907fd415fae118633045a79e53990e4a1f954e6fcbaf3

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