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.1.2.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.1.2-py3-none-any.whl (68.7 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vectrixdb-1.1.2.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.1.2.tar.gz
Algorithm Hash digest
SHA256 c6003b6fdbb694fcb38f1f4fa301796e2beb7d2085cf8390ea6a9168acb6cdb2
MD5 64c1c639562c467b5ec8caecb5e64f33
BLAKE2b-256 ddd4a21507c50d19007ff3392873b411185bd8b1cb4d097db33bc1b1d966fc7b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vectrixdb-1.1.2-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.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d43340d691f655b43f1deb5fb2b9aeb2f2eb1352412359e4c6e01cab713f8466
MD5 6b346c2b69dad4ce6078263ab62b5f5a
BLAKE2b-256 ff5b769312be29ffcc706a573ef7bebdab1e397723496ca7021f6c798329f36a

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