Back to directory

Ennoia

A Python framework for declarative document indexing, where typed schemas describe what to extract from a document and Ennoia runs the extraction, stores the structured output, and serves combined filter and vector search over it.

Ennoia

Ennoia lets a developer describe what to extract from each document as a typed Python schema; the framework then runs the extraction with an LLM, persists the structured output, and exposes hybrid filter-plus-vector search on top of it. The same schemas drive a Python SDK, a CLI, a REST API and an MCP tool surface.

On the project's own product-discovery benchmark, Ennoia's schema-driven retrieval leads a plain one-embedding-per-product baseline on queries that give few details, since embeddings alone have little to latch onto, and reaches parity on queries with rich detail.

It installs with pip and offers extras for hosted LLM adapters (OpenAI, Anthropic, OpenRouter), a local Ollama adapter, local embeddings, and several storage backends including filesystem, Qdrant and pgvector. The project is in alpha, with an API that is still converging.

More in RAG

See all 540
  • ai·rete·rag

    ai-rete-rag.com

    A platform that pairs a Rete rule engine with retrieval-augmented generation, so deterministic rules decide an outcome and grounded retrieval explains the decision in plain language.

  • Xtriever

    github.com

    A hybrid retrieval engine for retrieval-augmented generation, written in Rust to run on-device on a phone or a laptop, combining lexical BM25 search, dense embedding search, reciprocal-rank fusion and cross-encoder re-ranking with no server.

  • FileFlux

    github.com

    A .NET library that turns PDF, DOCX, HWP and other documents into optimized chunks for RAG systems, through a five-stage pipeline built on high-performance Rust FFI readers.