infiniflow/ragflowPublic

RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fuses cutting-edge RAG with Agent capabilities to create a superior context layer for LLMs

AI summary: An open-source RAG engine for enterprise that provides deep document understanding and verifiable AI responses.

Stars
91.7K
+48 today
Forks
10.9K
Watchers
361
Open issues
1.2K
Open PRs
401
Contributors
~851
Commits
9.8K
Branches
4

GoApache-2.0Created Dec 12, 2023Last push todayLatest release v1.0.0-rc1+310 stars this week+1.6K this month

Quick answers

What is ragflow?
An open-source RAG engine for enterprise that provides deep document understanding and verifiable AI responses.
What does ragflow do?
RAGFlow is an enterprise-grade Retrieval-Augmented Generation (RAG) engine designed to deeply understand and process complex documents. It bridges the gap between large language models and highly specific corporate data by parsing text, tables, and images accurately before ingestion. The engine prioritizes explainability by providing grounded citations that trace AI answers back to the exact source paragraphs or data points. Its robust architecture allows teams to build reliable, hallucination-free question-answering systems over their proprietary knowledge bases. The architecture natively incorporates intelligent agents to dynamically route and refine complex context retrieval tasks.
Who is ragflow for?
RAGFlow is for enterprise developers, data engineers, and AI architects building custom knowledge retrieval systems. It is ideal for organizations that require highly accurate, verifiable AI interactions based on their own complex documents. Users should have experience with Docker, API integration, and foundational RAG concepts.
How do I get started with ragflow?
https://ragflow.io/docs/dev/
How popular is ragflow on GitHub?
infiniflow/ragflow has 91,679 stars and 10,890 forks on GitHub, and gained 310 stars in the last 7 days.
What license does ragflow use?
infiniflow/ragflow is released under the Apache-2.0 license.

Star history

since Mar 31, 2024
025K50K75KMar 2024Jan 2025Nov 2025Oct 2026
91.7K stars as of Oct 4, 2026. Before Aug 13, 2026, reconstructed from public GitHub event archives (checked against the repository's real star total); since then measured daily.

Contribution activity

commits per day, last 52 weeks
OctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-10-05: 0 commits2025-10-06: 0 commits2025-10-07: 0 commits2025-10-08: 0 commits2025-10-09: 14 commits2025-10-10: 20 commits2025-10-11: 11 commits2025-10-12: 0 commits2025-10-13: 12 commits2025-10-14: 27 commits2025-10-15: 17 commits2025-10-16: 15 commits2025-10-17: 12 commits2025-10-18: 3 commits2025-10-19: 0 commits2025-10-20: 5 commits2025-10-21: 18 commits2025-10-22: 13 commits2025-10-23: 18 commits2025-10-24: 0 commits2025-10-25: 0 commits2025-10-26: 0 commits2025-10-27: 21 commits2025-10-28: 18 commits2025-10-29: 10 commits2025-10-30: 18 commits2025-10-31: 8 commits2025-11-01: 0 commits2025-11-02: 3 commits2025-11-03: 26 commits2025-11-04: 15 commits2025-11-05: 19 commits2025-11-06: 16 commits2025-11-07: 20 commits2025-11-08: 0 commits2025-11-09: 1 commit2025-11-10: 18 commits2025-11-11: 19 commits2025-11-12: 21 commits2025-11-13: 11 commits2025-11-14: 17 commits2025-11-15: 0 commits2025-11-16: 1 commit2025-11-17: 9 commits2025-11-18: 16 commits2025-11-19: 21 commits2025-11-20: 20 commits2025-11-21: 12 commits2025-11-22: 1 commit2025-11-23: 0 commits2025-11-24: 7 commits2025-11-25: 14 commits2025-11-26: 6 commits2025-11-27: 11 commits2025-11-28: 11 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 15 commits2025-12-02: 13 commits2025-12-03: 15 commits2025-12-04: 16 commits2025-12-05: 8 commits2025-12-06: 0 commits2025-12-07: 0 commits2025-12-08: 11 commits2025-12-09: 17 commits2025-12-10: 6 commits2025-12-11: 11 commits2025-12-12: 11 commits2025-12-13: 2 commits2025-12-14: 0 commits2025-12-15: 7 commits2025-12-16: 10 commits2025-12-17: 17 commits2025-12-18: 11 commits2025-12-19: 10 commits2025-12-20: 0 commits2025-12-21: 0 commits2025-12-22: 26 commits2025-12-23: 22 commits2025-12-24: 18 commits2025-12-25: 18 commits2025-12-26: 25 commits2025-12-27: 3 commits2025-12-28: 4 commits2025-12-29: 21 commits2025-12-30: 20 commits2025-12-31: 25 commits2026-01-01: 3 commits2026-01-02: 0 commits2026-01-03: 0 commits2026-01-04: 15 commits2026-01-05: 12 commits2026-01-06: 5 commits2026-01-07: 11 commits2026-01-08: 10 commits2026-01-09: 11 commits2026-01-10: 1 commit2026-01-11: 0 commits2026-01-12: 6 commits2026-01-13: 14 commits2026-01-14: 10 commits2026-01-15: 15 commits2026-01-16: 8 commits2026-01-17: 3 commits2026-01-18: 1 commit2026-01-19: 14 commits2026-01-20: 15 commits2026-01-21: 8 commits2026-01-22: 9 commits2026-01-23: 11 commits2026-01-24: 0 commits2026-01-25: 1 commit2026-01-26: 9 commits2026-01-27: 10 commits2026-01-28: 15 commits2026-01-29: 8 commits2026-01-30: 11 commits2026-01-31: 4 commits2026-02-01: 0 commits2026-02-02: 6 commits2026-02-03: 17 commits2026-02-04: 7 commits2026-02-05: 15 commits2026-02-06: 11 commits2026-02-07: 0 commits2026-02-08: 0 commits2026-02-09: 13 commits2026-02-10: 11 commits2026-02-11: 5 commits2026-02-12: 11 commits2026-02-13: 1 commit2026-02-14: 1 commit2026-02-15: 0 commits2026-02-16: 0 commits2026-02-17: 0 commits2026-02-18: 0 commits2026-02-19: 0 commits2026-02-20: 0 commits2026-02-21: 0 commits2026-02-22: 0 commits2026-02-23: 0 commits2026-02-24: 13 commits2026-02-25: 17 commits2026-02-26: 9 commits2026-02-27: 10 commits2026-02-28: 14 commits2026-03-01: 0 commits2026-03-02: 23 commits2026-03-03: 4 commits2026-03-04: 24 commits2026-03-05: 17 commits2026-03-06: 19 commits2026-03-07: 0 commits2026-03-08: 0 commits2026-03-09: 12 commits2026-03-10: 19 commits2026-03-11: 12 commits2026-03-12: 24 commits2026-03-13: 16 commits2026-03-14: 0 commits2026-03-15: 0 commits2026-03-16: 16 commits2026-03-17: 11 commits2026-03-18: 8 commits2026-03-19: 11 commits2026-03-20: 6 commits2026-03-21: 1 commit2026-03-22: 0 commits2026-03-23: 4 commits2026-03-24: 13 commits2026-03-25: 8 commits2026-03-26: 10 commits2026-03-27: 9 commits2026-03-28: 0 commits2026-03-29: 1 commit2026-03-30: 9 commits2026-03-31: 6 commits2026-04-01: 6 commits2026-04-02: 10 commits2026-04-03: 11 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 0 commits2026-04-07: 18 commits2026-04-08: 9 commits2026-04-09: 16 commits2026-04-10: 18 commits2026-04-11: 0 commits2026-04-12: 0 commits2026-04-13: 13 commits2026-04-14: 18 commits2026-04-15: 14 commits2026-04-16: 12 commits2026-04-17: 17 commits2026-04-18: 0 commits2026-04-19: 0 commits2026-04-20: 15 commits2026-04-21: 16 commits2026-04-22: 20 commits2026-04-23: 17 commits2026-04-24: 20 commits2026-04-25: 1 commit2026-04-26: 0 commits2026-04-27: 30 commits2026-04-28: 23 commits2026-04-29: 29 commits2026-04-30: 29 commits2026-05-01: 0 commits2026-05-02: 0 commits2026-05-03: 0 commits2026-05-04: 0 commits2026-05-05: 3 commits2026-05-06: 26 commits2026-05-07: 20 commits2026-05-08: 31 commits2026-05-09: 26 commits2026-05-10: 9 commits2026-05-11: 42 commits2026-05-12: 21 commits2026-05-13: 28 commits2026-05-14: 24 commits2026-05-15: 14 commits2026-05-16: 0 commits2026-05-17: 6 commits2026-05-18: 22 commits2026-05-19: 16 commits2026-05-20: 25 commits2026-05-21: 22 commits2026-05-22: 18 commits2026-05-23: 0 commits2026-05-24: 2 commits2026-05-25: 24 commits2026-05-26: 23 commits2026-05-27: 15 commits2026-05-28: 17 commits2026-05-29: 23 commits2026-05-30: 0 commits2026-05-31: 1 commit2026-06-01: 26 commits2026-06-02: 21 commits2026-06-03: 24 commits2026-06-04: 26 commits2026-06-05: 18 commits2026-06-06: 0 commits2026-06-07: 4 commits2026-06-08: 44 commits2026-06-09: 30 commits2026-06-10: 35 commits2026-06-11: 33 commits2026-06-12: 15 commits2026-06-13: 2 commits2026-06-14: 1 commit2026-06-15: 19 commits2026-06-16: 39 commits2026-06-17: 28 commits2026-06-18: 28 commits2026-06-19: 2 commits2026-06-20: 1 commit2026-06-21: 1 commit2026-06-22: 17 commits2026-06-23: 22 commits2026-06-24: 25 commits2026-06-25: 38 commits2026-06-26: 23 commits2026-06-27: 13 commits2026-06-28: 9 commits2026-06-29: 28 commits2026-06-30: 19 commits2026-07-01: 25 commits2026-07-02: 48 commits2026-07-03: 33 commits2026-07-04: 1 commit2026-07-05: 4 commits2026-07-06: 35 commits2026-07-07: 34 commits2026-07-08: 19 commits2026-07-09: 19 commits2026-07-10: 30 commits2026-07-11: 6 commits2026-07-12: 0 commits2026-07-13: 24 commits2026-07-14: 26 commits2026-07-15: 27 commits2026-07-16: 41 commits2026-07-17: 23 commits2026-07-18: 11 commits2026-07-19: 1 commit2026-07-20: 45 commits2026-07-21: 36 commits2026-07-22: 56 commits2026-07-23: 36 commits2026-07-24: 43 commits2026-07-25: 1 commit2026-07-26: 1 commit2026-07-27: 37 commits2026-07-28: 34 commits2026-07-29: 37 commits2026-07-30: 25 commits2026-07-31: 61 commits2026-08-01: 3 commits2026-08-02: 5 commits2026-08-03: 46 commits2026-08-04: 45 commits2026-08-05: 57 commits2026-08-06: 35 commits2026-08-07: 46 commits2026-08-08: 1 commit2026-08-09: 0 commits2026-08-10: 33 commits2026-08-11: 68 commits2026-08-12: 40 commits2026-08-13: 41 commits2026-08-14: 42 commits2026-08-15: 0 commits2026-08-16: 2 commits2026-08-17: 37 commits2026-08-18: 57 commits2026-08-19: 49 commits2026-08-20: 54 commits2026-08-21: 32 commits2026-08-22: 2 commits2026-08-23: 3 commits2026-08-24: 49 commits2026-08-25: 62 commits2026-08-26: 40 commits2026-08-27: 58 commits2026-08-28: 55 commits2026-08-29: 5 commits2026-08-30: 6 commits2026-08-31: 41 commits2026-09-01: 35 commits2026-09-02: 45 commits2026-09-03: 46 commits2026-09-04: 27 commits2026-09-05: 3 commits2026-09-06: 2 commits2026-09-07: 25 commits2026-09-08: 31 commits2026-09-09: 42 commits2026-09-10: 25 commits2026-09-11: 34 commits2026-09-12: 0 commits2026-09-13: 3 commits2026-09-14: 56 commits2026-09-15: 60 commits2026-09-16: 42 commits2026-09-17: 45 commits2026-09-18: 35 commits2026-09-19: 9 commits2026-09-20: 47 commits2026-09-21: 43 commits2026-09-22: 28 commits2026-09-23: 67 commits2026-09-24: 47 commits2026-09-25: 1 commit2026-09-26: 3 commits2026-09-27: 1 commit2026-09-28: 53 commits2026-09-29: 38 commits2026-09-30: 43 commits2026-10-01: 1 commit2026-10-02: 0 commits2026-10-03: 0 commits
5,802 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Landmark project

    91,679 stars

  • Very active

    5,802 commits in 52 weeks

  • Community-driven

    ~851 contributors

  • Permissive license

    Apache-2.0

  • Continuous integration

    Automated checks passing

  • Repeat trending

    4 trending appearances

  • Top 10% tracked

    Rank 86 of 1135

What ragflow does

RAGFlow is an enterprise-grade Retrieval-Augmented Generation (RAG) engine designed to deeply understand and process complex documents. It bridges the gap between large language models and highly specific corporate data by parsing text, tables, and images accurately before ingestion. The engine prioritizes explainability by providing grounded citations that trace AI answers back to the exact source paragraphs or data points. Its robust architecture allows teams to build reliable, hallucination-free question-answering systems over their proprietary knowledge bases. The architecture natively incorporates intelligent agents to dynamically route and refine complex context retrieval tasks.

RAGFlow is for enterprise developers, data engineers, and AI architects building custom knowledge retrieval systems. It is ideal for organizations that require highly accurate, verifiable AI interactions based on their own complex documents. Users should have experience with Docker, API integration, and foundational RAG concepts.

  • Deep Document Parsing: accurately extracts content from diverse and complex formats including PDFs, Word documents, Excel sheets, and images.
  • Grounded Citations: ensures every generated response is verifiable by linking back to the precise source material within the document.
  • Automated Chunking: intelligently segments text to optimize the context window and retrieval performance for large language models.
  • Enterprise Ready Integration: provides RESTful APIs and pre-built components for seamless embedding into existing corporate workflows and applications.
  • Visual Data Handling: processes and retrieves information embedded within charts and images to provide comprehensive answers.
  • Explainable AI Engine: minimizes hallucinations by strictly constraining the language model's output to the ingested and retrieved context.
  • Agentic Routing: Uses intelligent agents to categorize and distribute queries to the most appropriate context layers.

Where teams use it

Corporate Knowledge Base Queries

Used by employees to query vast repositories of internal HR policies, technical manuals, and financial reports with verifiable accuracy.

Legal Document Analysis

Used by legal teams to quickly locate specific clauses or precedents within hundreds of pages of contracts and case files.

Customer Support Automation

Used by support agents to instantly retrieve exact troubleshooting steps and product specifications from complex user manuals.

Financial Report Extraction

Used by analysts to pull specific data points and contextual explanations from dense, table-heavy quarterly earnings reports.

Enterprise Search

Organizations build highly accurate internal search tools backed by agent-curated documentation indices.

Getting started: https://ragflow.io/docs/dev/

README

main branch

README in English 简体中文版自述文件 繁體版中文自述文件 日本語のREADME 한국어 README en Français Bahasa Indonesia Português(Brasil) README in Arabic Türkçe README Русская версия README

follow on X(Twitter) Static Badge RAGFlow Docker image downloads Latest Release license

RAGFlow in the GitHub Octoverse
infiniflow%2Fragflow | Trendshift
📕 Table of Contents

💡 What is RAGFlow?

RAGFlow is a leading open-source Retrieval-Augmented Generation (RAG) engine that fuses cutting-edge RAG with Agent capabilities to create a superior context layer for LLMs. It offers a streamlined RAG workflow adaptable to enterprises of any scale. Powered by a converged context engine and pre-built agent templates, RAGFlow enables developers to transform complex data into high-fidelity, production-ready AI systems with exceptional efficiency and precision.

🎮 Get Started

Try our cloud service at https://cloud.ragflow.io.

For local deployment, see Local Deployment.

Chunking demonstration Agentic workflow demonstration

🔥 Latest Updates

  • 2026-09-29 RAGFlow 1.0.0-rc1 released.
  • 2026-09-10 Added website content ingestion through sitemaps.
  • 2026-08-19 Introduced Knowledge Compilation to generate Wikis, Graphs, Trees, PageIndex, Mind Maps, Timelines, and Skills at the document and dataset levels.
  • 2026-08-19 Introduced Agentic RAG with Low, Medium, High, and Ultra thinking modes.
  • 2026-07-02 Added Google BigQuery data source ingestion and incremental synchronization.

See the full release notes for more updates.

🎉 Stay Tuned

⭐️ Star our repository to stay up-to-date with exciting new features and improvements! Get instant notifications for new releases! 🌟

RAGFlow feature updates

🌟 Key Features

🍭 "Quality in, quality out"

  • Deep document understanding-based knowledge extraction from unstructured data with complicated formats.
  • Finds "needle in a data haystack" of literally unlimited tokens.

🍱 Template-based chunking

  • Intelligent and explainable.
  • Plenty of template options to choose from.

🧩 Knowledge Compilation

  • Compile content at the document and dataset levels into structured knowledge artifacts.
  • Use compilation templates to generate Wikis, Graphs, Trees, PageIndex, Mind Maps, Timelines, and Skills for different knowledge organization and reuse needs.
  • Configure compilation models and processing rules, and view, update, and regenerate knowledge artifacts.

🧠 Agentic Retrieval

  • Perform multi-step retrieval for complex questions: the model analyzes the question and, when needed, breaks it down, retrieves knowledge, and verifies evidence.
  • Gather more complete context through multiple rounds of retrieval and reasoning to help generate well-grounded answers.
  • Choose Low, Medium, High, or Ultra thinking modes to control retrieval and reasoning depth according to question complexity.

⚙️ Go-native service architecture

  • API, Admin, Ingestor, and Syncer are provided by a unified Go service.
  • DeepDoc runs within the Go process and handles layout analysis, OCR, and table recognition.
  • Go services use CGO to call native document parsing libraries and ONNX Runtime.
  • MCP and Sandbox Executor are optional capabilities that can be enabled as needed.

🌱 Grounded citations with reduced hallucinations

  • Visualization of text chunking to allow human intervention.
  • Quick view of the key references and traceable citations to support grounded answers.

🍔 Compatibility with heterogeneous data sources

  • Supports Word, Slides, Excel, TXT, images, scanned copies, structured data, web pages, and more.

🛀 Automated and effortless RAG workflow

  • Streamlined RAG orchestration catered to both personal and large businesses.
  • Configurable LLMs as well as embedding models.
  • Multiple recall paired with fused re-ranking.
  • Intuitive APIs for seamless integration with business.

🔎 System Architecture

RAGFlow system architecture

🏠 Local Deployment

🐳 Docker Deployment

📝 Docker Deployment Prerequisites
  • Recommended starting configuration: 4 CPU cores, 16 GB RAM, and 50 GB of available disk space. Actual requirements depend on the document engine, data volume, parsing tasks, and concurrency. Local models and other optional components may require additional resources.
  • Docker >= 24.0.0 & Docker Compose >= v2.26.1
  • gVisor: Required only when using the Self-Managed container Sandbox.

Docker deployment does not require Go on the host. Self-Managed container Sandbox requires gVisor; other Sandbox providers do not require gVisor on the RAGFlow host.

Tip

If you have not installed Docker on your local machine (Windows, Mac, or Linux), see Install Docker Engine.

🚀 Start up the server
  1. If using Elasticsearch, set vm.max_map_count on the Docker host to at least 262144. This step is usually unnecessary with Infinity:

    To check the value of vm.max_map_count:

    sysctl vm.max_map_count

    If you use Elasticsearch and the value is below 262144, reset it:

    # In this case, we set it to 262144:
    sudo sysctl -w vm.max_map_count=262144

    This change will be reset after a system reboot. To ensure your change remains permanent, add or update the vm.max_map_count value in /etc/sysctl.conf accordingly:

    vm.max_map_count=262144
  2. Clone the repository:

    git clone https://github.com/infiniflow/ragflow.git
  3. Check out the Go release tag and start the prebuilt Go image with Docker Compose:

    [!NOTE] The v1.0.0-rc1 tag and later release tags use the Go implementation. See the Go Docker image build and platform support guide only if you need to build an image locally.

    # Enter the Docker deployment directory.
    cd ragflow/docker
    # Check out the Go v1.0.0-rc1 release tag.
    git checkout v1.0.0-rc1
    # Start the Go services and their dependencies in the background.
    docker compose -f docker-compose.yml up -d

    In the default MySQL configuration, the Go image entrypoint runs database migrations before starting Syncer, Admin, API, and Ingestor through bin/ragflow_server.

    In the RAGFlow open-source 1.0 release, DeepDoc uses CPU inference for layout analysis, OCR, and table recognition.

  4. Check service status and API readiness after startup:

    docker ps

    The command above displays dependency status. RAGFlow itself does not define a Compose healthcheck; confirm readiness through its API:

    curl -f http://localhost/api/v1/system/healthz

    An HTTP 200 response indicates readiness. If you changed SVR_WEB_HTTP_PORT, use that port in the health-check URL. If startup fails, inspect the relevant service logs with docker logs --tail 50 <service>.

  5. In your web browser, enter the IP address of your server and log in to RAGFlow.

    With the default settings, you only need to enter http://IP_OF_YOUR_MACHINE (sans port number) as the default HTTP serving port 80 can be omitted when using the default configurations.

  6. After signing in, add an LLM, embedding, and reranker on the model provider page, including the model name, service address, and API key.

⚙️ Docker Configuration and Adjustment

Go Docker deployment uses docker/.env and docker/docker-compose.yml, uses Kvrocks for cache and Checkpoint storage, and uses NATS JetStream as the message queue. Configure the image, ports, passwords, document engine, and model image source as described in the Docker configuration guide. For platform limitations and macOS requirements, see the Go Docker image build and platform support guide.

For document-engine changes, configuration updates, restarting services, and retaining or removing existing data, follow the Docker configuration guide.

🔨 Launch Go Services from Source

📝 Source Build Prerequisites

Install the Go version specified in go.mod (currently Go 1.27), Clang 20, LLD 20, CMake ≥ 4.0, PCRE2 development files, and the native libraries required by CGO. Node.js and npm are required only when developing the React frontend.

  1. Clone the repository and install the Go version specified in go.mod (currently Go 1.27), Clang 20, LLD 20, CMake ≥ 4.0, and PCRE2 development files. Go services depend on CGO and native static libraries; build.sh sets the required build parameters.

    git clone https://github.com/infiniflow/ragflow.git
    cd ragflow
  2. Prepare native libraries, model files, and tokenizer assets with the Go dependency download script, then build the Go services:

    python3 -m venv /tmp/ragflow-go-download-venv
    /tmp/ragflow-go-download-venv/bin/python -m pip install requests huggingface-hub
    /tmp/ragflow-go-download-venv/bin/python ragflow_deps/download_deps.py
    bash build.sh --all

    The script prepares native libraries and model resources required for the Go build and needs requests and huggingface-hub. Skip this step if you have prepared the same resources by other means. When started from the repository root, Go services automatically find internal/rag/res/deepdoc; to start from another directory, set DEEPDOC_MODEL_DIR to its absolute path.

  3. Start the local dependencies and make sure the hosts and ports in conf/service_conf.yaml point to addresses accessible from the host. Go source services connect to Compose-exposed Kvrocks at localhost:6379, while Go Docker services connect to Kvrocks on the container network. If using the default Elasticsearch engine, set vm.max_map_count on the Docker host to at least 262144 first.

    sudo sysctl -w vm.max_map_count=262144
    docker compose --env-file docker/.env -f docker/docker-compose-base.yml \
      up -d --wait es01 mysql minio nats kvrocks clickhouse
  4. Migrate the database first, then start the Go services in order in five separate terminals. Run each command below from the repository root. Keep the four service terminals running. The migration command does not need RAGFLOW_DEV_MODE; set RAGFLOW_DEV_MODE=true for Admin, Ingestor, Syncer, and API in a development environment. Close the migration terminal after the migration completes.

    Terminal 1: migrate the database.

    ./bin/ragflow_server --migrate

    Terminal 2: start Admin (target port 9381).

    RAGFLOW_DEV_MODE=true ./bin/ragflow_server --admin

    Terminal 3: start Ingestor.

    RAGFLOW_DEV_MODE=true ./bin/ragflow_server --ingestor

    Terminal 4: start Syncer.

    RAGFLOW_DEV_MODE=true ./bin/ragflow_server --syncer

    Terminal 5: start API (target port 9380).

    RAGFLOW_DEV_MODE=true ./bin/ragflow_server --api

    The startup modes work as follows:

    • --migrate: Runs database migrations and exits when complete.
    • --admin: Starts the Admin service for management and initialization operations.
    • --ingestor: Starts the Ingestor service for data ingestion and parsing tasks.
    • --syncer: Starts the Syncer service for data synchronization tasks.
    • --api: Starts the API service for the Web UI, SDKs, and external clients.

    RAGFLOW_DEV_MODE=true is only for development; it disables the downgrade check between code and database migration versions, but does not run migrations or change the database schema. Do not set it in production. Start Admin before the other services. After database migration, RAGFLOW_DEV_MODE=true bash build.sh --run can conveniently start Admin, Ingestor, and API. It does not start Syncer; start it separately with RAGFLOW_DEV_MODE=true ./bin/ragflow_server --syncer for the complete service chain.

  5. Only when developing the frontend, install Node.js and npm, then start the React frontend:

    cd web
    npm install
    API_PROXY_SCHEME=go npm run dev

    In another terminal, confirm that the Go API is ready:

    curl -f http://127.0.0.1:9380/api/v1/system/healthz

    An HTTP 200 response indicates that the API is responding. See Launch Service from Source for complete frontend, ClickHouse, and DeepDoc verification steps.

    When development is complete, press Ctrl+C in each service terminal to stop the processes. To stop dependencies but keep the containers for next time, run docker compose --env-file docker/.env -f docker/docker-compose-base.yml stop es01 mysql minio nats kvrocks clickhouse. To remove the dependency containers and Compose network while keeping named data volumes, run docker compose --env-file docker/.env -f docker/docker-compose-base.yml down.

See Launch Service from Source for details.

📚 Documentation

📜 Roadmap

See the RAGFlow Roadmap 2026

🏄 Community

🙌 Contributing

RAGFlow flourishes via open-source collaboration. In this spirit, we embrace diverse contributions from the community. If you would like to be a part, review our Contribution Guidelines first.

View on GitHub

Recent activity

commits and pull requests

Releases and announcements

56 total
  1. nightlynightlyDec 1, 2025pre-release806 downloads

    Release nightly created from 519e7d98a5651564d4e35d6648f006cba4baaf4f at 2026-10-01 21:21:47+08:00

  2. v1.0.0-rc1v1.0.0-rc1Sep 29, 2026128 downloads

    RAGFlow v1.0.0-rc1 is a preview release of v1.0.0. This release marks a comprehensive rewrite of RAGFlow in Go, delivering a substantial reduction in system resource consumption and replacing the previous heavyweight deployment model with a lightweight architecture. ## Architecture changes - **Message queue:** Migrated from Redis to NATS. - **Cache and checkpoints:** Kvrocks now serves as the backing store for both cache and checkpoints. ## Data upgrade Upon container startup, RAGFlow automatically initiates the data upgrade process, migrating existing data from v0.27.2 to v1.0.0-rc1. Note that this upgrade is irreversible — once completed, data cannot be rolled back to v0.27.2. ## Upgrade prerequisites and precautions 1. Back up all data prior to upgrading. 2. Ensure your existing deployment is already on v0.27.2 before proceeding. 3. Should the upgrade fail, restore your system from the backup and submit an issue detailing the failure. ## Compatibility 1. **RAGFlow CLI:** Reimplemented in Go, replacing the previous Python version. 2. **API compatibility:** [Deprecated APIs](https://ragflow.io/docs/http_api_reference#removed-api-aliases) are no longer support

  3. v0.27.2v0.27.2Sep 10, 2026864 downloads

    ## New features - Agentic RAG: Refactored the Agentic RAG retrieval framework, significantly improving reasoning speed and benchmark performance. ([#19046](https://github.com/infiniflow/ragflow/pull/19046), [#19112](https://github.com/infiniflow/ragflow/pull/19112), [#19172](https://github.com/infiniflow/ragflow/pull/19172), [#19209](https://github.com/infiniflow/ragflow/pull/19209), [#19424](https://github.com/infiniflow/ragflow/pull/19424), [#19459](https://github.com/infiniflow/ragflow/pull/19459)) - Knowledge compilation runtime settings ([#19254](https://github.com/infiniflow/ragflow/pull/19254)) - Enforce a rate limit on the knowledge compilation pipeline ([#19156](https://github.com/infiniflow/ragflow/pull/19156)) - Knowledge graph shows total and current node counts ([#19142](https://github.com/infiniflow/ragflow/pull/19142),[#19095](https://github.com/infiniflow/ragflow/pull/19095), [#19114](https://github.com/infiniflow/ragflow/pull/19114)) - Graph search highlights the node when pressing Enter on an entity name ([#19320](https://github.com/infiniflow/ragflow/pull/19320)) - New Sitemap data source for sitemap.xml-based web ingestion ([#19344](https://github.com/infi

  4. v0.27.1v0.27.1Aug 28, 2026775 downloads

    ## New features - New Azure DevOps connector for data sources ([#18715](https://github.com/infiniflow/ragflow/pull/18715)) - New You.com web search provider for chat and agent ([#18478](https://github.com/infiniflow/ragflow/pull/18478)) - New Serply web search provider for chat ([#18475](https://github.com/infiniflow/ragflow/pull/18475)) ## Model Support - New Synthorai model provider ([#18830](https://github.com/infiniflow/ragflow/pull/18830)) - Missing DeepSeek models added ([#18678](https://github.com/infiniflow/ragflow/pull/18678)) - AWS Bedrock API key authentication support ([#18301](https://github.com/infiniflow/ragflow/pull/18301)) ## Improvements - Retrieval API exposes rerank_candidates_count, knn top_k, and num_candidates ([#18768](https://github.com/infiniflow/ragflow/pull/18768), [#18737](https://github.com/infiniflow/ragflow/pull/18737)) - Metadata filters pushed down to the metadata index for faster retrieval ([#18219](https://github.com/infiniflow/ragflow/pull/18219)) - Chat settings form auto-scrolls to the error location on save ([#18811](https://github.com/infiniflow/ragflow/pull/18811)) - Search page validates deleted knowledge bases ([#18522](ht

  5. v0.27.0v0.27.0Aug 19, 2026698 downloads

    ## New features - Brand new document level and dataset level knowledge compilation, supporting Wiki, Graph, Tree, Page Index, Mind Map, Timeline, and To Skills (#16777, #17546, #16797, #16749, #16899, #17996) - The previous GraphRAG and RAPTOR features have been deprecated and are no longer available in the UI. Their replacements, Graph and Tree, are now integrated into Knowledge Compilation. Previously generated GraphRAG and RAPTOR content remains searchable. - Brand new Agentic RAG with four thinking modes when answering - Low, Medium, High, and Ultra (#18303, #18138, #17342, #17444) ## Improvements - Fully revamped model provider system for easier model configuration and management (#16604) ## Model Support - Qwen 3.8 series (#18368) - Kimi K3 (#17106) - AIMLAPI (#17311) - GreenPT models (#17447) - AWS Bedrock Reranker (#16960) - OpenRouter Embedding (#17213) - FunASR/SenseVoice STT (#16473) - Fun-ASR-Flash support for Tongyi-Qianwen (#16844) - Mistral OCR document parser (#17057) ## Infrastructure - New GaussDB database adapter (#17703) - SereneDB document storage engine support (#17375) - Tenki sandbox provider support (#17305) - Upgraded Infinity

Code frequency

additions and deletions
+576.4K-576.4KWeek of 2025-09-28: +2,103 linesWeek of 2025-09-28: -409 linesWeek of 2025-10-05: +19,332 linesWeek of 2025-10-05: -38,794 linesWeek of 2025-10-12: +16,335 linesWeek of 2025-10-12: -8,113 linesWeek of 2025-10-19: +7,209 linesWeek of 2025-10-19: -6,142 linesWeek of 2025-10-26: +24,438 linesWeek of 2025-10-26: -15,757 linesWeek of 2025-11-02: +28,257 linesWeek of 2025-11-02: -14,087 linesWeek of 2025-11-09: +19,917 linesWeek of 2025-11-09: -23,449 linesWeek of 2025-11-16: +26,493 linesWeek of 2025-11-16: -17,860 linesWeek of 2025-11-23: +16,034 linesWeek of 2025-11-23: -23,861 linesWeek of 2025-11-30: +18,345 linesWeek of 2025-11-30: -576,416 linesWeek of 2025-12-07: +18,878 linesWeek of 2025-12-07: -6,115 linesWeek of 2025-12-14: +8,810 linesWeek of 2025-12-14: -3,279 linesWeek of 2025-12-21: +16,210 linesWeek of 2025-12-21: -7,255 linesWeek of 2025-12-28: +12,469 linesWeek of 2025-12-28: -5,710 linesWeek of 2026-01-04: +33,074 linesWeek of 2026-01-04: -44,994 linesWeek of 2026-01-11: +11,527 linesWeek of 2026-01-11: -5,109 linesWeek of 2026-01-18: +10,584 linesWeek of 2026-01-18: -4,514 linesWeek of 2026-01-25: +24,979 linesWeek of 2026-01-25: -9,998 linesWeek of 2026-02-01: +8,512 linesWeek of 2026-02-01: -4,453 linesWeek of 2026-02-08: +10,914 linesWeek of 2026-02-08: -7,130 linesWeek of 2026-02-15: +0 linesWeek of 2026-02-15: -0 linesWeek of 2026-02-22: +31,161 linesWeek of 2026-02-22: -4,402 linesWeek of 2026-03-01: +111,390 linesWeek of 2026-03-01: -9,631 linesWeek of 2026-03-08: +19,865 linesWeek of 2026-03-08: -8,289 linesWeek of 2026-03-15: +20,604 linesWeek of 2026-03-15: -11,930 linesWeek of 2026-03-22: +26,727 linesWeek of 2026-03-22: -14,043 linesWeek of 2026-03-29: +31,246 linesWeek of 2026-03-29: -25,401 linesWeek of 2026-04-05: +19,789 linesWeek of 2026-04-05: -7,834 linesWeek of 2026-04-12: +10,770 linesWeek of 2026-04-12: -8,452 linesWeek of 2026-04-19: +28,073 linesWeek of 2026-04-19: -22,791 linesWeek of 2026-04-26: +38,045 linesWeek of 2026-04-26: -17,010 linesWeek of 2026-05-03: +16,333 linesWeek of 2026-05-03: -4,321 linesWeek of 2026-05-10: +37,564 linesWeek of 2026-05-10: -5,484 linesWeek of 2026-05-17: +45,411 linesWeek of 2026-05-17: -7,847 linesWeek of 2026-05-24: +51,428 linesWeek of 2026-05-24: -5,998 linesWeek of 2026-05-31: +34,943 linesWeek of 2026-05-31: -13,160 linesWeek of 2026-06-07: +136,002 linesWeek of 2026-06-07: -34,114 linesWeek of 2026-06-14: +187,831 linesWeek of 2026-06-14: -43,374 linesWeek of 2026-06-21: +124,251 linesWeek of 2026-06-21: -14,841 linesWeek of 2026-06-28: +153,259 linesWeek of 2026-06-28: -122,747 linesWeek of 2026-07-05: +98,255 linesWeek of 2026-07-05: -34,727 linesWeek of 2026-07-12: +78,844 linesWeek of 2026-07-12: -39,621 linesWeek of 2026-07-19: +68,707 linesWeek of 2026-07-19: -34,891 linesWeek of 2026-07-26: +89,116 linesWeek of 2026-07-26: -45,805 linesWeek of 2026-08-02: +86,403 linesWeek of 2026-08-02: -48,643 linesWeek of 2026-08-09: +76,640 linesWeek of 2026-08-09: -18,243 linesWeek of 2026-08-16: +104,853 linesWeek of 2026-08-16: -23,912 linesWeek of 2026-08-23: +74,038 linesWeek of 2026-08-23: -22,512 linesWeek of 2026-08-30: +55,114 linesWeek of 2026-08-30: -14,348 linesWeek of 2026-09-06: +81,850 linesWeek of 2026-09-06: -28,000 linesWeek of 2026-09-13: +158,128 linesWeek of 2026-09-13: -74,144 linesWeek of 2026-09-20: +54,097 linesWeek of 2026-09-20: -14,905 linesSep 28, 2025Sep 20, 2026
+2.5M lines added, -1.6M removed over the last year.

Commits per week

last 52 weeks
2720Week of 2025-10-05: 45 commitsWeek of 2025-10-12: 86 commitsWeek of 2025-10-19: 54 commitsWeek of 2025-10-26: 75 commitsWeek of 2025-11-02: 99 commitsWeek of 2025-11-09: 87 commitsWeek of 2025-11-16: 80 commitsWeek of 2025-11-23: 49 commitsWeek of 2025-11-30: 67 commitsWeek of 2025-12-07: 58 commitsWeek of 2025-12-14: 55 commitsWeek of 2025-12-21: 112 commitsWeek of 2025-12-28: 73 commitsWeek of 2026-01-04: 65 commitsWeek of 2026-01-11: 56 commitsWeek of 2026-01-18: 58 commitsWeek of 2026-01-25: 58 commitsWeek of 2026-02-01: 56 commitsWeek of 2026-02-08: 42 commitsWeek of 2026-02-15: 0 commitsWeek of 2026-02-22: 63 commitsWeek of 2026-03-01: 87 commitsWeek of 2026-03-08: 83 commitsWeek of 2026-03-15: 53 commitsWeek of 2026-03-22: 44 commitsWeek of 2026-03-29: 43 commitsWeek of 2026-04-05: 61 commitsWeek of 2026-04-12: 74 commitsWeek of 2026-04-19: 89 commitsWeek of 2026-04-26: 111 commitsWeek of 2026-05-03: 106 commitsWeek of 2026-05-10: 138 commitsWeek of 2026-05-17: 109 commitsWeek of 2026-05-24: 104 commitsWeek of 2026-05-31: 116 commitsWeek of 2026-06-07: 163 commitsWeek of 2026-06-14: 118 commitsWeek of 2026-06-21: 139 commitsWeek of 2026-06-28: 163 commitsWeek of 2026-07-05: 147 commitsWeek of 2026-07-12: 152 commitsWeek of 2026-07-19: 218 commitsWeek of 2026-07-26: 198 commitsWeek of 2026-08-02: 235 commitsWeek of 2026-08-09: 224 commitsWeek of 2026-08-16: 233 commitsWeek of 2026-08-23: 272 commitsWeek of 2026-08-30: 203 commitsWeek of 2026-09-06: 159 commitsWeek of 2026-09-13: 250 commitsWeek of 2026-09-20: 236 commitsWeek of 2026-09-27: 136 commitsOct 5, 2025Sep 27, 2026
5.8K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 3 commitsSun 1:00 — 1 commitsSun 2:00 — 1 commitsSun 3:00 — 0 commitsSun 4:00 — 1 commitsSun 5:00 — 0 commitsSun 6:00 — 2 commitsSun 7:00 — 1 commitsSun 8:00 — 3 commitsSun 9:00 — 14 commitsSun 10:00 — 14 commitsSun 11:00 — 15 commitsSun 12:00 — 14 commitsSun 13:00 — 12 commitsSun 14:00 — 14 commitsSun 15:00 — 10 commitsSun 16:00 — 18 commitsSun 17:00 — 15 commitsSun 18:00 — 18 commitsSun 19:00 — 23 commitsSun 20:00 — 15 commitsSun 21:00 — 11 commitsSun 22:00 — 18 commitsSun 23:00 — 16 commitsMon 0:00 — 4 commitsMon 1:00 — 6 commitsMon 2:00 — 14 commitsMon 3:00 — 9 commitsMon 4:00 — 28 commitsMon 5:00 — 10 commitsMon 6:00 — 13 commitsMon 7:00 — 10 commitsMon 8:00 — 19 commitsMon 9:00 — 104 commitsMon 10:00 — 158 commitsMon 11:00 — 156 commitsMon 12:00 — 127 commitsMon 13:00 — 136 commitsMon 14:00 — 145 commitsMon 15:00 — 151 commitsMon 16:00 — 143 commitsMon 17:00 — 175 commitsMon 18:00 — 113 commitsMon 19:00 — 213 commitsMon 20:00 — 65 commitsMon 21:00 — 42 commitsMon 22:00 — 26 commitsMon 23:00 — 16 commitsTue 0:00 — 9 commitsTue 1:00 — 6 commitsTue 2:00 — 7 commitsTue 3:00 — 10 commitsTue 4:00 — 10 commitsTue 5:00 — 16 commitsTue 6:00 — 11 commitsTue 7:00 — 6 commitsTue 8:00 — 9 commitsTue 9:00 — 137 commitsTue 10:00 — 144 commitsTue 11:00 — 155 commitsTue 12:00 — 101 commitsTue 13:00 — 143 commitsTue 14:00 — 141 commitsTue 15:00 — 158 commitsTue 16:00 — 160 commitsTue 17:00 — 199 commitsTue 18:00 — 118 commitsTue 19:00 — 240 commitsTue 20:00 — 74 commitsTue 21:00 — 31 commitsTue 22:00 — 23 commitsTue 23:00 — 26 commitsWed 0:00 — 6 commitsWed 1:00 — 12 commitsWed 2:00 — 9 commitsWed 3:00 — 10 commitsWed 4:00 — 17 commitsWed 5:00 — 7 commitsWed 6:00 — 20 commitsWed 7:00 — 11 commitsWed 8:00 — 16 commitsWed 9:00 — 134 commitsWed 10:00 — 138 commitsWed 11:00 — 153 commitsWed 12:00 — 124 commitsWed 13:00 — 128 commitsWed 14:00 — 161 commitsWed 15:00 — 163 commitsWed 16:00 — 155 commitsWed 17:00 — 139 commitsWed 18:00 — 133 commitsWed 19:00 — 230 commitsWed 20:00 — 86 commitsWed 21:00 — 42 commitsWed 22:00 — 29 commitsWed 23:00 — 19 commitsThu 0:00 — 16 commitsThu 1:00 — 12 commitsThu 2:00 — 11 commitsThu 3:00 — 15 commitsThu 4:00 — 11 commitsThu 5:00 — 14 commitsThu 6:00 — 4 commitsThu 7:00 — 10 commitsThu 8:00 — 14 commitsThu 9:00 — 147 commitsThu 10:00 — 134 commitsThu 11:00 — 170 commitsThu 12:00 — 103 commitsThu 13:00 — 120 commitsThu 14:00 — 146 commitsThu 15:00 — 170 commitsThu 16:00 — 161 commitsThu 17:00 — 181 commitsThu 18:00 — 137 commitsThu 19:00 — 190 commitsThu 20:00 — 86 commitsThu 21:00 — 26 commitsThu 22:00 — 20 commitsThu 23:00 — 19 commitsFri 0:00 — 12 commitsFri 1:00 — 12 commitsFri 2:00 — 11 commitsFri 3:00 — 9 commitsFri 4:00 — 18 commitsFri 5:00 — 9 commitsFri 6:00 — 12 commitsFri 7:00 — 13 commitsFri 8:00 — 17 commitsFri 9:00 — 132 commitsFri 10:00 — 118 commitsFri 11:00 — 131 commitsFri 12:00 — 100 commitsFri 13:00 — 113 commitsFri 14:00 — 137 commitsFri 15:00 — 127 commitsFri 16:00 — 148 commitsFri 17:00 — 154 commitsFri 18:00 — 158 commitsFri 19:00 — 154 commitsFri 20:00 — 73 commitsFri 21:00 — 29 commitsFri 22:00 — 25 commitsFri 23:00 — 11 commitsSat 0:00 — 3 commitsSat 1:00 — 1 commitsSat 2:00 — 1 commitsSat 3:00 — 2 commitsSat 4:00 — 7 commitsSat 5:00 — 2 commitsSat 6:00 — 2 commitsSat 7:00 — 0 commitsSat 8:00 — 2 commitsSat 9:00 — 3 commitsSat 10:00 — 11 commitsSat 11:00 — 15 commitsSat 12:00 — 5 commitsSat 13:00 — 6 commitsSat 14:00 — 14 commitsSat 15:00 — 15 commitsSat 16:00 — 14 commitsSat 17:00 — 13 commitsSat 18:00 — 18 commitsSat 19:00 — 18 commitsSat 20:00 — 13 commitsSat 21:00 — 6 commitsSat 22:00 — 10 commitsSat 23:00 — 9 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Aug 16, 2026daily#9+473
Aug 15, 2026daily#9+473
Aug 14, 2026daily#11+465
Aug 13, 2026daily#6+139
  • openclaw/openclaw

    The AI that really does things. Any OS. Any Platform. The lobster way. 🦞

    391.3K stars · TypeScript

  • obra/superpowers

    An agentic skills framework & software development methodology that works.

    295.3K stars · Shell

  • affaan-m/ECC

    The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

    272.9K stars · JavaScript

  • NousResearch/hermes-agent

    The agent that grows with you

    251.2K stars · Python

  • n8n-io/n8n

    Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

    206.7K stars · TypeScript

  • firecrawl/firecrawl

    Supercharge your AI agents with data from the web and beyond. Building the library for superintelligence. 🔥

    188.6K stars · TypeScript