RAGFlow is an open-source Retrieval-Augmented Generation (RAG) engine that integrates deep document understanding with agentic workflow capabilities. It is engineered to transform complex, unstructured data into high-fidelity, production-ready AI systems by combining intelligent document parsing, embedding, and retrieval with configurable LLM-powered agents and workflows. README.md76-78 pyproject.toml4
Core Characteristics: RAGFlow specializes in parsing complex document formats such as PDF, DOCX, Excel, and PPT using state-of-the-art deep learning models for document layout and table extraction. It segments documents into meaningful chunks using multiple, template-driven chunking strategies, generates contextual embeddings for these chunks, and stores them in a hybrid vector and keyword index. It supports conversational AI applications backed by traceable, grounded citations. Additionally, RAGFlow includes a visual agent workflow system for creating multi-step AI agents with persistent memory and tool-calling capabilities. README.md112-122 pyproject.toml4 README.md99-100
Key Value Statement: "Quality in, quality out" — the system prioritizes deep document understanding to reliably find relevant information even from vast, unbounded token spaces. README.md114-118
Sources: README.md75-122 pyproject.toml1-8
RAGFlow is built upon a multi-tier microservices architecture, optimizing scalability and decoupling synchronous API operations from intensive background processing tasks. The architecture follows a producer-consumer pattern with Redis Streams managing task queues. docker/.env140-146 docker/.env20
Sources: README.md141-145 docker/.env13-182 docker/docker-compose-base.yml1-250 Dockerfile1-160 docker/.env180-181
RAGFlow is logically divided into three tiers:
Frontend/API Tier:
API_PROXY_SCHEME=hybrid) where a Go-based server handles high-performance native components (ingestion, sync, search) and the Python server handles logic. docker/.env183-184Asynchronous Task Tier:
TaskExecutor. docker/.env140-146Persistence Tier:
Sources: pyproject.toml9-182 docker/.env13-184 docker/docker-compose-base.yml1-250
This diagram associates high-level RAG concepts with their primary implementation entities in the codebase.
Sources: docker/docker-compose-base.yml158-161 docker/.env180-184 README.md116-120
| Service/Subsystem | Main File(s) | Description |
|---|---|---|
| Python API Server | api/ragflow_server.py | Quart-based async server for REST API and SDK. |
| Go Server | cmd/ragflow_server.go | Native high-performance service layer (API/Admin/Ingestor/Syncer). |
| Task Executor Worker | rag/svr/task_executor.py | Background consumer for ingestion/chunking tasks (Python). |
| Sandbox Manager | sandbox-executor-manager (image) | GVisor-based isolated code execution service. |
| MCP Server | mcp/server/server.py | Model Context Protocol implementation. |
Sources: docker/.env175-182 docker/docker-compose-base.yml158-184 docs/quickstart.mdx35
Sources: README.md88-140 docs/release_notes.md1-100 docs/references/python_api_reference.md120-210
Sources: pyproject.toml1-182 README.md1-140 docs/quickstart.mdx28-36 docs/release_notes.md12-100
Refresh this wiki
This wiki was recently refreshed. Please wait 4 days to refresh again.