The blazingly fast in-memory vector database

EigenDB is a light-weight, in-memory vector database that drops straight into your Python stack.

$ pip install eigen-client
Beverages Produce Bakery Sourdough Baguette Focaccia search_docs("Bread", k=3)

What's inside

01

HNSW similarity search

Approximate nearest-neighbor search over HNSW giving you fast lookups that scale with your index.

02

Written in Go

A small, dependency-light core built for throughput, with an in-memory design that keeps latency low.

03

Python SDK

Insert, upsert, retrieve, and search embeddings from your Python application with a few lines of code.

04

Open Source ๐Ÿ’š

EigenDB is fully open source!

Create an index in a few lines

Create an index, insert your embeddings, then run a similarity search. Full walkthrough in the quickstart guide.

from eigen_client.client import Client
from eigen_client.data_types import Document

client = Client(url="...", api_key="...")

index = client.create_index_from_model(
    index_name="products",
    model_name="text-embedding-3-small",
    model_provider="openai",
    model_provider_api_key="..."
)

documents = [
    Document(id=1, data="Organic sourdough"),
    Document(id=2, data="Rustic baguette"),
    Document(id=3, data="Rosemary focaccia")
]

index.upsert_docs(documents)

results = index.search_docs(string="Bread", k=3)