Skip to main content

Embedded local vector database (SQLite for vectors)

Project description

ELIPS (Python Bindings)

Embedded Local Index & Persistence System (ELIPS) Python package.

ELIPS is an in-process vector and document retrieval engine built in C++23 with native Python bindings. It keeps the embedded deployment model of SQLite, but adds ANN indexes, typed metadata filters, first-class document lineage, hybrid retrieval, segmented persistence, and optional GPU-backed indexes.

Installation

From PyPI

pip install elips

From Source

pip install .

Note: Building from source requires a C++23 compatible compiler (GCC 13+ or Clang 17+), CMake >= 3.24, and Ninja.

Quick Start

import elips

# Connect to database (either path or ":memory:")
engine = elips.connect(":memory:", dimension=128)

# Access or create a documents arena
arena = engine.arena("documents")

# Ingest documents with text and optional metadata
arena.ingest(
    texts=["alpha design note", "beta incident runbook"],
    meta=[{"kind": "design"}, {"kind": "ops"}],
)

# Run semantic search
for hit in arena.probe_text("alpha", top=2):
    print(hit.key, hit.distance, hit.text, hit.meta)

Features

  • Vector Search: Optimized HNSW (graph) and exact index backends.
  • Embedded Deployment: Simple SQLite-like single-writer/multi-reader lock model.
  • Local Embedding: Built-in local text embedding using local models.
  • Metadata Filters: Rich metadata equality filters via MetadataIndex and Filter.
  • Hybrid Retrieval: Combine dense semantic search and document retrieval out of the box.
  • Segmented Persistence: Durable writes with WAL crash recovery and snapshot checkpoints.
  • GPU Acceleration: Optional Metal backend on Apple Silicon and CUDA/Vulkan backends on Linux.

License

ELIPS Python bindings are released under the MIT License.

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

elips-1.0.0.tar.gz (150.1 kB view details)

Uploaded Source

Built Distribution

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

elips-1.0.0-cp313-cp313-macosx_26_0_arm64.whl (440.2 kB view details)

Uploaded CPython 3.13macOS 26.0+ ARM64

File details

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

File metadata

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

File hashes

Hashes for elips-1.0.0.tar.gz
Algorithm Hash digest
SHA256 712aec25c96a84b8b40f20ad33dde1abf675924ad87a9c81b507130dc8199b75
MD5 3e41efd9e21636d9a0e1818ea2d6f514
BLAKE2b-256 42fdd6c69e6def7baf4fa085f71a55bd293634c765b2f55b1aa2964f72e3306e

See more details on using hashes here.

File details

Details for the file elips-1.0.0-cp313-cp313-macosx_26_0_arm64.whl.

File metadata

File hashes

Hashes for elips-1.0.0-cp313-cp313-macosx_26_0_arm64.whl
Algorithm Hash digest
SHA256 eeb0aa418468f353453f8bfe1d9ce183daecfc1935f33540f84d26e4b5ad3f48
MD5 9432c20bbbed98c9404682b746c73bcf
BLAKE2b-256 8fde3372eef8a63301bbc7e9efc814ce8f24d865aa9b4a47244c7b443948422e

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