Skip to main content

EzDB B-Class - Free & open source vector database for semantic search

Project description

EzDB B-Class (Basic) - Free & Open Source Vector Database

Version License Python Status

EzDB is a lightweight, easy-to-use vector database built in Python for semantic search and AI applications.

📦 This is EzDB B-Class (Basic) - The free, open-source version. For production features, see EzDB Professional and EzDB Enterprise.

⚡ Quick Links

Features

  • Vector Storage: Store and search high-dimensional vectors efficiently
  • Multiple Metrics: Cosine similarity, Euclidean distance, Dot product
  • Fast Indexing: HNSW (Hierarchical Navigable Small World) for ANN search
  • Metadata Filtering: Search with metadata constraints
  • Persistence: Save/load databases to disk
  • Dual Mode: Use as embedded library OR REST API server
  • REST API: Full HTTP API with Python/JavaScript/Go clients
  • Collections: Manage multiple isolated vector collections
  • Docker Ready: Easy deployment with Docker and docker-compose

Installation

pip install -r requirements.txt

Quick Start

Embedded Mode (Python Library)

from ezdb import EzDB

# Create a new database
db = EzDB(dimension=384)

# Insert vectors with metadata
db.insert(
    vector=[0.1, 0.2, 0.3, ...],
    metadata={"text": "Hello world", "category": "greeting"}
)

# Search for similar vectors
results = db.search(query_vector=[0.1, 0.2, 0.3, ...], top_k=5)

# Save and load
db.save("my_database.ezdb")
db = EzDB.load("my_database.ezdb")

REST API Server (Network Access)

Start Server:

pip install -r requirements-server.txt
python -m uvicorn ezdb.server.app:app --host 0.0.0.0 --port 8000

Use Client:

from ezdb.client import EzDBClient

client = EzDBClient("http://localhost:8000")
client.insert(vector=[0.1, 0.2, 0.3, ...], metadata={"text": "Hello"})
results = client.search(vector=[0.1, 0.2, 0.3, ...], top_k=5)

Interactive API Docs: http://localhost:8000/docs

See API.md for complete API documentation.

Architecture

  • Storage Engine: Efficient in-memory vector storage with metadata
  • Indexing: HNSW (Hierarchical Navigable Small World) for fast ANN search
  • Similarity: Cosine, Euclidean, and Dot Product metrics
  • Persistence: JSON-based serialization for easy inspection

Use Cases

  • Semantic search
  • Recommendation systems
  • RAG (Retrieval Augmented Generation)
  • Document similarity
  • Image search
  • Anomaly detection

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

jokerr-1.0.0.tar.gz (131.4 kB view details)

Uploaded Source

Built Distribution

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

jokerr-1.0.0-py3-none-any.whl (137.6 kB view details)

Uploaded Python 3

File details

Details for the file jokerr-1.0.0.tar.gz.

File metadata

  • Download URL: jokerr-1.0.0.tar.gz
  • Upload date:
  • Size: 131.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for jokerr-1.0.0.tar.gz
Algorithm Hash digest
SHA256 84036be042d19d88c4fa094c61d8f99e1e2327868a1f954865b3d9abf983bebf
MD5 cb3077cf2f89ad07138de8d4648d7d0b
BLAKE2b-256 1ce31e63fc3dde8a132fdf4cb11283d71153eee888dfc02c3f326d3bc4107741

See more details on using hashes here.

File details

Details for the file jokerr-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: jokerr-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 137.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for jokerr-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f7f19f7c7d5863ff5dc6702047f4e09bc49bb9c3295e5608d75dca03bd63d105
MD5 b3c7b1513ad0ea8a1e8da1b341891d85
BLAKE2b-256 b66d6c7def23d6f11dbb8d47db9f64bd236652a341b2d184df02e39297d67632

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