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.3.tar.gz (608.2 kB 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.3-py3-none-any.whl (629.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vectrixdb-1.0.3.tar.gz
Algorithm Hash digest
SHA256 3a4832dcd54a7519504ce4bdc38276ec16279ffa075b925a60b6002acdb17918
MD5 262e692240a1e76195529c61e2834888
BLAKE2b-256 d60d37ff2605674b1aa438a5799eac8279b453d99e59007c2f51df0a9900f30e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vectrixdb-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 629.7 kB
  • 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b5b8d05fa140c5fac952c351db625825bff3f80887df2c04d3bc66d93e598d0a
MD5 7b376db9bad32ed252db78128a885329
BLAKE2b-256 4ad4feff4808707a8784978fcdd956b9c0e74b9b120d7e45d298e2d2319da6ec

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