haiku.rag/haiku_rag_slim/pyproject.toml
Yiorgis Gozadinos a1738c9d3e
vb
2026-08-28 15:56:00 +03:00

110 lines
3.1 KiB
TOML

[project]
name = "haiku.rag-slim"
description = "Local-first agentic RAG with citations - hybrid search, reranking and multimodal retrieval over your own documents, no database server required - Minimal dependencies"
version = "0.79.0"
authors = [{ name = "Yiorgis Gozadinos", email = "ggozadinos@gmail.com" }]
license = { text = "MIT" }
readme = { file = "README.md", content-type = "text/markdown" }
requires-python = ">=3.12"
keywords = [
"RAG",
"agentic-rag",
"lancedb",
"vector-database",
"hybrid-search",
"reranking",
"multimodal-rag",
"embeddings",
"citations",
"document-ingestion",
"mcp",
"mcp-server",
"pydantic-ai",
"docling",
]
classifiers = [
"Development Status :: 4 - Beta",
"Environment :: Console",
"Intended Audience :: Developers",
"Operating System :: Microsoft :: Windows :: Windows 10",
"Operating System :: Microsoft :: Windows :: Windows 11",
"Operating System :: MacOS",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Typing :: Typed",
]
dependencies = [
"docling-core>=2.82.0,<3.0.0",
"httpx>=0.28.1",
"jinja2>=3.1.0",
"fastmcp>=3.3.0",
"lancedb==0.34.0",
"pathspec>=1.0.4",
"pydantic>=2.12.5",
"pydantic-ai-slim[openai,logfire,ag-ui]>=2.18.0,<3.0.0",
"pydantic-monty>=0.0.19",
"pypdfium2>=5.0",
"python-dotenv>=1.2.2",
"pyyaml>=6.0.3",
"rich>=14.3.3",
"textual-image>=0.8.5",
"typer>=0.21.0,<0.22.0",
"watchfiles>=1.1.1",
"zstandard>=0.23.0; python_version<'3.14'",
]
[project.urls]
Homepage = "https://ggozad.github.io/haiku.rag/"
Documentation = "https://ggozad.github.io/haiku.rag/"
Repository = "https://github.com/ggozad/haiku.rag"
Issues = "https://github.com/ggozad/haiku.rag/issues"
Changelog = "https://ggozad.github.io/haiku.rag/changelog/"
[project.optional-dependencies]
# Document processing
docling = ["docling>=2.102.2,<3.0.0", "opencv-python-headless>=4.6.0.66,<5.0.0.0"]
# S3 / object-storage monitoring
s3 = ["obstore>=0.9,<0.10"]
# Embedding providers
voyageai = ["pydantic-ai-slim[voyageai]"]
# Rerankers
cohere = ["cohere>=5.21.1"]
zeroentropy = ["zeroentropy>=0.1.0a11"]
jina = ["transformers>=4.40.0", "torch>=2.0.0"]
cross-encoder = ["sentence-transformers>=3.0.0"]
# Production ingester (queue, workers, API)
ingester = [
"fastapi>=0.125",
"uvicorn[standard]>=0.32",
"sqlalchemy[asyncio]>=2.0",
"aiosqlite>=0.20",
"asyncpg>=0.29",
"haiku.rag-slim[s3]",
]
# TUI (chat and inspect commands)
tui = [
"textual>=8.2.4",
"tree-sitter>=0.25.2",
"tree-sitter-json>=0.24.8",
]
# Model providers (delegated to pydantic-ai-slim)
anthropic = ["pydantic-ai-slim[anthropic]"]
groq = ["pydantic-ai-slim[groq]"]
google = ["pydantic-ai-slim[google]"]
mistral = ["pydantic-ai-slim[mistral]"]
bedrock = ["pydantic-ai-slim[bedrock]"]
vertexai = ["pydantic-ai-slim[google]"]
[project.scripts]
haiku-rag = "haiku.rag.cli:cli"
haiku-ingester = "haiku.rag.ingester.cli:cli"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["haiku"]