OneRAG
A self-hosted RAG framework for document Q&A, with offline Ollama support, interchangeable search backends and an OpenAI-compatible API.
OneRAG is a self-hosted RAG framework for developers building chatbots that answer questions using their own documents. It combines document retrieval and AI answers, with replaceable components for different models and search needs.
- Search and retrieval: Combine vector and keyword search, rerank results, and use GraphRAG for questions involving relationships between information.
- Backend choice: Choose Ollama, Gemini, OpenAI, Claude or OpenRouter for answers, alongside search backends including Weaviate, ChromaDB, Qdrant, pgvector, Pinecone and MongoDB.
- API integrations: Connect applications through an OpenAI-compatible API with streaming responses, including clients such as Open WebUI, Cursor and LangChain.
- Document workspace: Use the included React web interface to upload PDF, Word, Excel and Markdown files, manage documents, and chat with streaming answers.
- Agents and data controls: Add tool execution through MCP, detect and mask personal information, and keep audit logs.
OneRAG is open source under the MIT license and uses Python and FastAPI. The full API server runs with Docker; a separate local terminal chatbot uses ChromaDB and doesn't require Docker. With Ollama, it can operate fully offline without an API key. Choosing Gemini, OpenAI, Claude or OpenRouter sends answer-generation requests to an external service.