haiku.rag/haiku_rag_slim
Chris McDonough f33a4629e1 Handle sync_state write failure after mark_succeeded without crashing
If sync.upsert() or sync.delete() raises after a job is already
marked succeeded (e.g. disk full, DB locked), the unhandled
exception crashes the worker. The job stays succeeded but sync_state
is stale, and the crashed worker stops processing other jobs.

Wrap the post-success sync_state writes in a try/except. On failure,
log the error and continue. The worst case is a redundant re-ingest
on the next sweep — better than killing the worker.
2026-06-01 08:11:02 -04:00
..
haiku/rag Handle sync_state write failure after mark_succeeded without crashing 2026-06-01 08:11:02 -04:00
LICENSE
pyproject.toml vb 2026-05-29 11:47:12 +03:00
README.md

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

Document Processing:

  • docling - PDF, DOCX, HTML, and 40+ file formats

Embedding Providers:

  • voyageai - VoyageAI embeddings

Rerankers:

  • mxbai - MixedBread AI
  • cohere - Cohere
  • zeroentropy - Zero Entropy

Model Providers:

  • OpenAI/Ollama - included in core (OpenAI-compatible APIs)
  • anthropic - Anthropic Claude
  • groq - Groq
  • google - Google Gemini
  • mistral - Mistral AI
  • bedrock - AWS Bedrock
  • vertexai - Google Vertex AI
# Common combinations
uv pip install haiku.rag-slim[docling,anthropic,mxbai]
uv pip install haiku.rag-slim[docling,groq,logfire]

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/