Local Retrieval Augmented Generation system with Ollama. Ingest documents, crawl websites, and chat with your knowledge base — entirely offline.
Web UI and CLI with real-time streaming responses. Ask questions and get answers with source citations from your knowledge base.
Ingest PDF, Word, PowerPoint, Excel, HTML, Markdown, and text files. Automatic format detection and conversion via Docling.
Transcribe MP3, WAV, and M4A files using Whisper ASR. Audio content becomes fully searchable through the RAG pipeline.
Crawl documentation sites and ingest them into your knowledge base. Supports sitemaps, recursive crawling, and llms.txt.
LLM-driven semantic splitting with rule-based fallback. Configurable chunk sizes for optimal retrieval performance.
Runs entirely on your machine with Ollama. No API keys required, no data leaves your network. Complete privacy.
| Format | Extensions | Processing |
|---|---|---|
| Docling conversion | ||
| Word | .docx, .doc | Docling conversion |
| PowerPoint | .pptx, .ppt | Docling conversion |
| Excel | .xlsx, .xls | Docling conversion |
| HTML | .html, .htm | Docling conversion |
| Markdown | .md | Direct processing |
| Text | .txt | Direct processing |
| Audio | .mp3, .wav, .m4a | Whisper transcription |
Pre-built Docker image available for quick deployment.
Run entirely offline. No API costs.
LLM: mistral, llama3.2, qwen2.5, deepseek-r1
Embeddings: nomic-embed-text, mxbai-embed-large
Higher quality, requires API key.
LLM: gpt-4o-mini, gpt-4o
Embeddings: text-embedding-3-small
This is a server-side application that requires a local runtime environment to operate.
| Requirement | Purpose |
|---|---|
| Python 3.10+ | Runtime (3.11+ recommended) |
| UV | Package manager |
| Ollama | Local LLM inference |
| PostgreSQL + PGVector | Vector knowledge base |
| Docker (optional) | Containerized deployment |