跳转到内容

RAGFlow 项目介绍

RAGFlow 项目介绍

项目定位

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,通过融合深度文档理解与 Agent 能力,为 LLM 提供高质量的上下文层。它解决的核心问题是:从复杂非结构化文档中提取高保真知识,并以可控、可追溯的方式喂给大语言模型,从而减少幻觉、提升答案质量

核心能力

  • 深度文档理解(DeepDoc):基于视觉模型的 OCR、布局识别、表格结构识别(TSR),能从 PDF、DOCX、Excel、PPT、图片、扫描件等复杂格式中精准提取文本、表格、图片和结构信息
  • 模板化文本切分:提供多种可配置的切分模板(通用、论文、简历、法律、手册等),切分过程可视化、可控、可干预
  • 多路召回 + 融合重排:支持全文检索与向量检索混合召回,配合重排序模型提升召回质量
  • GraphRAG:内置知识图谱构建能力,包括实体识别、实体消歧与图谱检索
  • RAPTOR 递归摘要:通过树状聚类与递归摘要实现层次化知识组织,支持”大海捞针”级别的长上下文检索
  • Agent 工作流编排:基于 DSL 的可视化 Agent 编排,内置 20+ 组件(LLM、检索、分类、迭代、循环、浏览器、代码执行等)与 20+ 预置模板
  • MCP 集成:同时支持 MCP 客户端(调用外部 MCP 服务)与服务端(对外暴露 RAGFlow 能力)
  • 多模型适配:支持 50+ 模型提供商,覆盖 Chat、Embedding、Rerank、OCR、TTS、语音识别等多模态模型
  • 沙箱代码执行:基于 gVisor 的安全沙箱,支持 Agent 在隔离环境中执行 Python/JavaScript 代码

技术栈

层面技术
后端 APIPython 3.13,Flask/Quart(异步 Web 框架)
RAG 核心纯 Python,异步流水线(asyncio)
文档解析自研视觉模型(PyTorch)+ 第三方解析器(MinerU、Docling、PaddleOCR)
Agent 系统自定义 DAG 编排引擎,JSON DSL 定义工作流
前端React + TypeScript + Vite + shadcn/ui + Zustand
存储层MySQL(元数据)、Elasticsearch/Infinity(全文+向量)、Redis(缓存+会话)、MinIO(对象存储)
部署Docker Compose 微服务架构
SDKPython + JavaScript/TypeScript

架构概览

快速体验

Docker 一键启动

Terminal window
git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker
# 确保 vm.max_map_count >= 262144
docker compose -f docker-compose.yml up -d

启动后访问 http://IP_OF_YOUR_MACHINE 即可使用 Web UI。

源码开发模式

Terminal window
git clone https://github.com/infiniflow/ragflow.git
cd ragflow/
uv sync --python 3.13
uv run python3 download_deps.py
docker compose -f docker/docker-compose-base.yml up -d
source .venv/bin/activate
export PYTHONPATH=$(pwd)
bash docker/launch_backend_service.sh
cd web && npm install && npm run dev

教程导读

本教程基于 RAGFlow v0.25.6(commit 8f0632c),从源码出发,分为两条主线:

AI 应用知识线(/tutorials/ragflow/ai/

聚焦 RAGFlow 作为 RAG 引擎和 Agent 平台的通用知识,包括:

  • RAG 流水线的整体架构与数据流
  • 深度文档理解的视觉模型原理
  • 模板化文本切分的设计与实践
  • 多路召回与重排序策略
  • GraphRAG 知识图谱构建
  • RAPTOR 层次化知识组织
  • Agent 工作流编排与组件设计
  • MCP 协议集成

编程开发知识线(/tutorials/ragflow/dev/

聚焦 RAGFlow 的工程实践与架构决策,包括:

  • 微服务架构与部署拓扑
  • 异步流水线设计(asyncio)
  • DSL 驱动的 Agent 编排引擎
  • 多模型统一适配层
  • 安全沙箱(gVisor)集成
  • 前后端工程与构建流程

本教程涉及的部分通用知识已收录于 公共知识库,建议先阅读相关章节以获得更系统的理解。