haiku.rag/haiku_rag_slim
Yiorgis Gozadinos 581ddf4f41
Bound vacuum compaction memory on the tables holding docling blobs
Vacuum compacts documents and document_items through lance directly
with a fragment target derived from storage.compaction_target_bytes
(default 2 GiB), instead of AsyncTable.optimize, whose default
1,048,576-row fragment target re-merges the whole table on every pass
and peaks at 5-6x the table's bytes. The target is sized from the
widest fragment's bytes per row, so peak memory is bounded by the
target instead of the corpus. lancedb's async API exposes no
compaction options (lancedb/lancedb#2325), hence the pylance
dependency.
2026-09-04 10:35:26 +03:00
..
haiku/rag Bound vacuum compaction memory on the tables holding docling blobs 2026-09-04 10:35:26 +03:00
LICENSE Restructure into uv workspace to support minimal and full installations 2025-11-04 17:59:12 +02:00
pyproject.toml Bound vacuum compaction memory on the tables holding docling blobs 2026-09-04 10:35:26 +03:00
README.md Give the docs an architecture page and one extras list 2026-08-20 15:07:06 +03:00

haiku.rag-slim

Opinionated agentic RAG powered by LanceDB, Pydantic AI, and Docling - Core package with minimal dependencies.

haiku.rag-slim is the core package for users who want to install only the dependencies they need. Document processing (docling), and reranker support are all optional extras.

For most users, we recommend installing haiku.rag instead, which includes all features out of the box.

Installation

Python 3.12 or newer required

Minimal Installation

uv pip install haiku.rag-slim

Core functionality with OpenAI/Ollama support, MCP server, and Logfire observability. Document processing (docling) is optional.

With Document Processing

uv pip install haiku.rag-slim[docling]

Adds support for 40+ file formats including PDF, DOCX, HTML, and more.

Available Extras

docling, tui, voyageai, cohere, zeroentropy, cross-encoder, jina, s3, ingester, and one per model provider: anthropic, google, groq, mistral, bedrock, vertexai. Ollama and any OpenAI-compatible endpoint need no extra.

What each provides, and which ones the full haiku.rag package already includes: Installation.

# Common combinations
uv pip install 'haiku.rag-slim[docling,anthropic,cross-encoder]'
uv pip install 'haiku.rag-slim[docling,groq]'

Usage

See the main haiku.rag repository for:

  • Quick start guide
  • CLI examples
  • Python API usage
  • MCP server setup

Documentation

Full documentation: https://ggozad.github.io/haiku.rag/