[project] name = "haiku.rag-slim" description = "Opinionated agentic RAG powered by LanceDB, Pydantic AI, and Docling - Minimal dependencies" version = "0.46.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", "lancedb", "vector-database", "ml", "mcp"] 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.74.1", "haiku.skills>=0.16.0", "httpx>=0.28.1", "jinja2>=3.1.0", "jsonpatch>=1.33", "lancedb==0.30.2", "pathspec>=1.0.4", "pydantic>=2.12.5", "pydantic-ai-slim[openai,fastmcp,logfire,ag-ui]>=1.81.0", "pydantic-monty>=0.0.9", "python-dotenv>=1.2.2", "pyyaml>=6.0.3", "rich>=14.3.3", "typer>=0.21.0,<0.22.0", "watchfiles>=1.1.1", "zstandard>=0.23.0; python_version<'3.14'", ] [project.optional-dependencies] # Document processing docling = ["docling>=2.91.0", "opencv-python-headless>=4.13.0.92"] # S3 / object-storage monitoring s3 = ["obstore>=0.9,<0.10"] # Embedding providers voyageai = ["pydantic-ai-slim[voyageai]"] # Rerankers mxbai = ["mxbai-rerank>=0.1.6"] 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"] # TUI (chat and inspect commands) tui = ["textual>=8.2.4", "textual-image>=0.8.5"] # 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[vertexai]"] [project.entry-points."haiku.skills"] rag = "haiku.rag.skills.rag:create_skill" rag-analysis = "haiku.rag.skills.analysis:create_skill" [project.scripts] haiku-rag = "haiku.rag.cli:cli" [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["haiku"]