infiniflow/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

📚 What is RAGFlow?

RAGFlow is an open‑source Retrieval‑Augmented Generation (RAG) platform that adds an agentic layer on top of large language models (LLMs). It lets you ingest all kinds of documents (PDFs, Word, spreadsheets, images, web pages, etc.), turn them into searchable embeddings, and then answer questions by retrieving the most relevant chunks and letting an LLM reason over them. The system also supports multi‑step “agentic” retrieval, where the model can break a complex query into sub‑questions, fetch evidence, and verify answers before responding.


🚀 Getting Started

  • Cloud – Try the hosted service at https://cloud.ragflow.io.
  • Local – Deploy with Docker (quick) or build from source (full control). The README provides step‑by‑step commands for both paths, including prerequisite hardware (e.g., 4 CPU / 16 GB RAM) and Docker‑Compose setup.

✨ Core Features

Feature What it does
Template‑based chunking Intelligent, explainable chunking with many preset templates for different document types.
Knowledge compilation Turns raw chunks into higher‑level artifacts such as wikis, graphs, mind‑maps, timelines, or skill trees.
Agentic retrieval Multi‑turn retrieval & reasoning; choose Low, Medium, High, Ultra thinking modes to control depth.
Grounded citations Shows which chunks were used, reducing hallucinations and giving traceable references.
Heterogeneous data sources Handles Word, PPT, Excel, PDFs (including scanned), images, structured data, web pages, etc.
Configurable models Plug in any LLM, embedding model, or reranker via a simple provider UI.
Scalable architecture Separate services (Admin, Ingestor, Syncer, API) that can run in Docker or on bare metal; supports MySQL, Elasticsearch or the built‑in Infinity engine.

🏗️ System Architecture (high‑level)

  • Frontend – React web UI.
  • API Service – REST endpoints used by the UI and SDKs.
  • Ingestor – Parses documents, runs OCR/layout analysis (DeepDoc), and creates embeddings.
  • Syncer – Periodically pulls data from external sources (e.g., Google BigQuery, sitemaps).
  • Admin – Management console for datasets, models, users, and system health.
  • Dependencies – MySQL, MinIO (object storage), NATS (messaging), KVROCKS (key‑value store), optional Elasticsearch/Infinity for vector search.

📦 Installation Quick‑Reference

Docker (recommended for most users)

  1. git clone https://github.com/infiniflow/ragflow.git && cd ragflow/docker
  2. git checkout v1.0.0-rc2
  3. docker compose up -d
  4. Verify health: curl -f http://localhost/api/v1/system/healthz
  5. Open a browser at http://<host> and log in.
  6. Add your LLM, embedding, and reranker in the Model Provider page.

Build from Source (developers)

  1. Install Go 1.27, Clang 20, CMake ≥ 4, PCRE2, Node.js (for UI).
  2. Run uv run tools/scripts/download_dev_deps.py to fetch native libs and DeepDoc models.
  3. ./build.sh --all to compile all services.
  4. Start dependency containers (docker compose … es01 mysql minio nats kvrocks).
  5. Run migrations: ./bin/ragflow_server --migrate.
  6. Launch each service (--admin, --ingestor, --syncer, --api) in separate terminals.
  7. (Optional) cd web && npm install && npm start for the React UI.

🎯 Typical Use Cases

  • Enterprise knowledge bases – Turn internal docs, manuals, and spreadsheets into a searchable AI assistant.
  • Customer support – Retrieve precise policy excerpts or troubleshooting steps when answering tickets.
  • Research assistants – Compile academic papers into graphs or timelines and let the agent answer synthesis questions.
  • Data‑driven apps – Combine structured sources (BigQuery, databases) with unstructured files for unified LLM‑powered analytics.

📚 Documentation & Resources

  • Quickstart & configuration: https://ragflow.io/docs/dev/
  • User guides, developer guides, FAQs, and API reference are all hosted on the same site.
  • Release notes and roadmap are publicly available on GitHub.

🤝 Community & Contribution


📄 License

Apache‑2.0 – permissive open‑source license allowing commercial use, modification, and distribution.


Bottom line: RAGFlow provides a production‑grade, self‑hostable RAG engine with built‑in agentic reasoning, extensive data‑source support, and tools for turning raw documents into structured knowledge artifacts. It is suitable for developers and enterprises that need a customizable, scalable AI‑augmented search and answer system.

Related

  • Project
  • Project
  • Project
  • Project
  • Project