Kotaemon

Normal
GitHub Python Apache-2.0

Description

Kotaemon is an open-source RAG-based tool for chatting with your documents, featuring a clean chat interface and support for multiple LLM and embedding model backends.

Key Features

  • Hybrid RAG pipeline — combines full-text and vector retrieval with re-ranking for best retrieval quality
  • Multimodal document QA — supports PDF, HTML, XLSX formats with figure and table extraction from documents
  • Advanced citations with document preview — relevance-scored citations with in-browser PDF viewer and highlight support
  • Multiple reasoning modes — question decomposition for complex multi-hop Q&A, plus ReAct and ReWOO agent-based reasoning
  • Configurable settings UI — adjust retrieval and generation parameters directly in the UI including prompt templates
  • Multi-user collaboration — supports multi-user login, private/public collection management, and chat sharing

Use Cases

💡 Personal document knowledge base: upload PDFs and chat with them through a conversational interface
💡 Team knowledge sharing platform: create private document collections for collaborative team use
💡 Academic literature research: multimodal Q&A on papers with figure data extraction and citation tracking
💡 Enterprise compliance document retrieval: quickly locate relevant clauses and explanations in compliance files
💡 Multilingual document processing: privacy-friendly offline Q&A using local LLMs like Ollama

Strengths & Limitations

Strengths

  • High community interest (25.7k stars)
  • Permissive open-source license (Apache-2.0)
  • Established track record (2 years in production)
  • Responsive to issues, low backlog

Quick Start

```bash
docker run -e GRADIO_SERVER_NAME=0.0.0.0 -e GRADIO_SERVER_PORT=7860 -v ./ktem_app_data:/app/ktem_app_data -p 7860:7860 -it --rm ghcr.io/cinnamon/kotaemon:main-full
```

Related Projects

MaxKB

22.7k · Python
Active A+

MaxKB is an open-source knowledge base Q&A and agent building platform powered by LLMs, with vector retrieval, workflow orchestration, and multi-model support out of the box.

knowledge-baseragchatbot +3
  • · RAG Pipeline — Document upload and online crawling with automatic splitting and vectorization to reduce hallucinations
  • · Agentic Workflow — Powerful workflow engine, function library and MCP tool-use for complex business scenarios
  • · Zero-code Integration — Seamlessly integrate into third-party business systems for smart Q&A capabilities

Khoj

37.0k · Python
Normal A

Khoj is a self-hostable AI second brain that answers questions from the web or your docs, builds custom agents, schedules automations, and performs deep research.

second-brainragself-hosted +2
  • · Multi-LLM support — Switch between local and cloud LLMs including llama3, qwen, gemma, mistral, gpt, claude, gemini, deepseek
  • · Multi-format document retrieval — Get answers from PDFs, Markdown, Word, Notion, org-mode, images and more
  • · Custom agent creation — Build custom agents with custom knowledge, persona, chat model and tools

Langchain-Chatchat

38.6k · Python
Stale B

A local knowledge base RAG and Agent application platform built on Langchain with support for ChatGLM, Qwen, Llama and other LLMs, offering conversation, knowledge base management, and agent capabilities.

ragllmpython +3
  • · Local knowledge base QA — Document loading, text splitting, vectorization and semantic retrieval via Langchain with BM25+KNN hybrid search
  • · Multi-framework model inference — Supports Xinference, Ollama, FastChat, LocalAI for GLM-4, Qwen2, Llama3 and more
  • · Agent tool calling — Optimized for ChatGLM3/Qwen with auto tool selection, single tool parameter parsing, and multimodal image chat

MemAgent

1.1k · Python
Stale B

A MemAgent framework that can extrapolate to 3.5M context tokens, along with a training framework for RL training of any agent workflow.

memoryagentrag +2
  • · Ultra-Long Context Processing: Extrapolate from 8K training context to 3.5M tokens with performance loss under 5%
  • · Reinforcement Learning Driven: Trained with RLVR (Reinforcement Learning from Verifiable Rewards), extends DAPO algorithm for end-to-end multi-turn conversation optimization
  • · Linear Time Complexity: Breaks through computational bottlenecks in long-text processing with linear resource scaling