ragflow

GitHub
77.1k 8.7k 中等 38 次阅读 昨天Apache-2.0Agent图像开发框架语言模型其他
AI 解读 由 AI 自动生成,仅供参考

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。

在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。

这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。

使用场景

某大型制造企业的技术文档团队正试图构建一个内部智能问答系统,让工程师能快速从数千份复杂的设备维护手册和故障排查报告中获取精准信息。

没有 ragflow 时

  • 解析效果差:传统方案难以处理手册中大量的混合排版、复杂表格和工程图纸,导致关键数据在提取时丢失或错乱。
  • 检索不精准:简单的关键词匹配无法理解工程师的自然语言提问(如“液压泵异响怎么处理”),经常返回无关文档片段。
  • 回答不可信:大模型因缺乏准确的上下文依据,容易产生“幻觉”,编造不存在的维修步骤,存在严重安全隐患。
  • 调试黑盒化:当回答错误时,开发人员无法追溯是文档解析、检索排序还是生成环节出了问题,排查问题如同大海捞针。

使用 ragflow 后

  • 深度文档解析:ragflow 内置的深度文档解析引擎能完美还原手册中的表格结构和图文关系,确保技术参数完整入库。
  • 语义精准匹配:利用先进的混合检索策略,ragflow 能准确理解工程师的意图,从海量非结构化数据中锁定最相关的知识片段。
  • 可解释的回答:ragflow 在生成答案时会明确标注引用来源(具体到页码和段落),让每一条维修建议都有据可查,杜绝胡编乱造。
  • 全链路可视化:通过可视化的调试界面,团队可以清晰看到数据流转的每一步,快速优化检索策略,将系统迭代周期从周缩短至小时。

ragflow 通过将深度的文档理解能力与可追溯的检索生成流程相结合,为企业构建了真正可信、可控且高精度的专业知识大脑。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU
  • 非必需(可选用于加速 DeepDoc 任务)
  • README 未指定具体显卡型号、显存大小或 CUDA 版本,但指出 Docker 镜像仅支持 x86 平台,ARM64 需自行构建
内存

最低 16GB

依赖
notes1. 必须设置系统参数 vm.max_map_count >= 262144。2. 官方提供的 Docker 镜像仅适用于 x86 架构,ARM64 用户需参考文档自行构建镜像。3. 若需使用代码执行器(沙箱)功能,需安装 gVisor。4. 默认通过 Docker Compose 部署,无需手动安装 Python 依赖库。
python未说明
Docker >= 24.0.0
Docker Compose >= v2.26.1
gVisor (可选,用于代码执行器沙箱)
ragflow hero image

快速开始

英文自述文件 简体中文版自述文件 繁體版中文自述文件 日本語のREADME 한국어 Bahasa Indonesia Português(Brasil) README en Français README in Arabic Türkçe README

关注X(Twitter) 静态徽章 docker pull infiniflow/ragflow:v0.24.0 最新版本 许可证 Ask DeepWiki

文档 | 路线图 | Twitter | Discord | 演示

infiniflow%2Fragflow | Trendshift
📕 目录

💡 什么是RAGFlow?

RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,它将前沿的RAG技术与智能体能力相结合,为大语言模型打造卓越的上下文层。RAGFlow提供了一套可扩展的RAG工作流,适用于各种规模的企业。凭借融合的上下文引擎和预构建的智能体模板,RAGFlow使开发者能够以极高的效率和精准度,将复杂数据转化为高保真、可投入生产的AI系统。

🎮 演示

请访问 https://cloud.ragflow.io 体验我们的演示。

🔥 最新动态

  • 2026年3月24日 RAGFlow技能上线OpenClaw — 提供官方技能,可通过OpenClaw访问RAGFlow数据集。
  • 2025年12月26日 支持AI智能体的“记忆”功能。
  • 2025年11月19日 支持Gemini 3 Pro。
  • 2025年11月12日 支持从Confluence、S3、Notion、Discord、Google Drive同步数据。
  • 2025年10月23日 支持MinerU和Docling作为文档解析方法。
  • 2025年10月15日 支持可编排的数据摄取管道。
  • 2025年8月8日 支持OpenAI最新的GPT-5系列模型。
  • 2025年8月1日 支持智能体工作流和MCP。
  • 2025年5月23日 为智能体新增Python/JavaScript代码执行组件。
  • 2025年5月5日 支持跨语言查询。
  • 2025年3月19日 支持使用多模态模型理解PDF或DOCX文件中的图像。

🎉 敬请期待

⭐️ 请给我们的仓库点个星,以便及时获取激动人心的新功能和改进!您将立即收到新版本发布的通知!🌟

🌟 核心功能

🍭 “高质量输入,高质量输出”

  • 基于深度文档理解,从格式复杂的非结构化数据中提取知识。
  • 能够在字数几乎不受限制的数据中精准定位所需信息。

🍱 基于模板的分块处理

  • 智能且可解释。
  • 提供多种模板选项供选择。

🌱 基于证据的引用,减少幻觉

  • 文本分块可视化,便于人工干预。
  • 快速查看关键参考文献,并可追溯引用来源,确保答案有据可依。

🍔 兼容多种异构数据源

  • 支持Word、PPT、Excel、TXT、图片、扫描件、结构化数据、网页等多种格式。

🛀 自动化且无负担的 RAG 工作流

  • 精简高效的 RAG 编排,适用于个人与大型企业。
  • 可配置的语言模型及嵌入模型。
  • 多种召回策略结合融合重排序。
  • 直观的 API,便于与业务系统无缝集成。

🔎 系统架构

🎬 开始使用

📝 前置条件

  • CPU ≥ 4 核
  • 内存 ≥ 16 GB
  • 磁盘空间 ≥ 50 GB
  • Docker ≥ 24.0.0 & Docker Compose ≥ v2.26.1
  • gVisor:仅在您计划使用 RAGFlow 的代码执行器(沙箱)功能时需要安装。

[!TIP] 如果您的本地机器尚未安装 Docker(Windows、Mac 或 Linux),请参阅 安装 Docker Engine

🚀 启动服务器

  1. 确保 vm.max_map_count ≥ 262144:

    检查 vm.max_map_count 的值:

    $ sysctl vm.max_map_count
    

    如果该值不足,则将其重置为至少 262144:

    # 在此例中,我们将其设置为 262144:
    $ sudo sysctl -w vm.max_map_count=262144
    

    此更改在系统重启后会失效。为使更改永久生效,请在 /etc/sysctl.conf 中添加或更新以下内容:

    vm.max_map_count=262144
    
  2. 克隆仓库:

    $ git clone https://github.com/infiniflow/ragflow.git
    
  3. 使用预构建的 Docker 镜像启动服务器:

[!CAUTION] 所有 Docker 镜像均基于 x86 平台构建。目前我们尚未提供 ARM64 平台的 Docker 镜像。 如果您使用的是 ARM64 平台,请按照 此指南 构建与您的系统兼容的 Docker 镜像。

下述命令将下载 RAGFlow 的 v0.24.0 版本镜像。不同版本的说明见下表。如需下载非 v0.24.0 版本的 RAGFlow,请在使用 docker compose 启动服务器前,相应地更新 docker/.env 文件中的 RAGFLOW_IMAGE 变量。

   $ cd ragflow/docker

   # 切换至 v0.24.0 分支
   # (可选:使用稳定标签,详见发布页面:https://github.com/infiniflow/ragflow/releases)
   # 此步骤确保代码中的 `entrypoint.sh` 文件与 Docker 镜像版本一致。

   # 使用 CPU 处理 DeepDoc 任务:
   $ docker compose -f docker-compose.yml up -d

   # 如需使用 GPU 加速 DeepDoc 任务:
   # sed -i '1i DEVICE=gpu' .env
   # docker compose -f docker-compose.yml up -d

注意:在 v0.22.0 之前,我们同时提供了包含嵌入模型的完整镜像和不含嵌入模型的精简版镜像,具体如下:

RAGFlow 镜像标签 镜像大小 (GB) 是否包含嵌入模型 是否稳定?
v0.21.1 ≈9 ✔️ 稳定版
v0.21.1-slim ≈2 稳定版

v0.22.0 起,我们仅提供精简版镜像,并取消了镜像标签中的 -slim 后缀。

  1. 服务器启动后,检查运行状态:

    $ docker logs -f docker-ragflow-cpu-1
    

    以下输出表明系统已成功启动:

    
          ____   ___    ______ ______ __
         / __ \ /   |  / ____// ____// /____  _      __
        / /_/ // /| | / / __ / /_   / // __ \| | /| / /
       / _, _// ___ |/ /_/ // __/  / // /_/ /| |/ |/ /
      /_/ |_|/_/  |_|\____//_/    /_/ \____/ |__/|__/
    
     * Running on all addresses (0.0.0.0)
    

    如果跳过此确认步骤直接登录 RAGFlow,浏览器可能会提示 network abnormal 错误,因为此时 RAGFlow 可能尚未完全初始化。

  2. 在您的浏览器中输入服务器的 IP 地址,登录 RAGFlow。

    在默认配置下,您只需输入 http://IP_OF_YOUR_MACHINE 即可,因为默认的 HTTP 服务端口 80 在使用默认配置时可以省略。

  3. service_conf.yaml.template 中,在 user_default_llm 中选择所需的语言模型工厂,并在 API_KEY 字段中填写相应的 API 密钥。

    更多信息请参阅 llm_api_key_setup

    演出正式开始!

🔧 配置说明

在系统配置方面,您需要管理以下文件:

  • .env:保存系统的基础设置,例如 SVR_HTTP_PORTMYSQL_PASSWORDMINIO_PASSWORD
  • service_conf.yaml.template:用于配置后端服务。该文件中的环境变量将在 Docker 容器启动时自动填充。容器内设置的任何环境变量均可使用,从而允许您根据部署环境自定义服务行为。
  • docker-compose.yml:系统依赖于 docker-compose.yml 来启动。

./docker/README 文件详细介绍了环境设置和服务配置,这些内容可用作 service_conf.yaml.template 文件中的 ${ENV_VARS}

如需更改默认的 HTTP 服务端口(80),请前往 docker-compose.yml80:80 修改为 <YOUR_SERVING_PORT>:80

上述配置的更新需要重启所有容器才能生效:

$ docker compose -f docker-compose.yml up -d

将文档引擎从 Elasticsearch 切换至 Infinity

RAGFlow 默认使用 Elasticsearch 存储全文和向量数据。如需切换至 Infinity,请按以下步骤操作:

  1. 停止所有正在运行的容器:

    $ docker compose -f docker/docker-compose.yml down -v
    

[!WARNING] -v 选项会删除 Docker 容器卷,现有数据将被清空。

  1. docker/.env 文件中的 DOC_ENGINE 设置为 infinity

  2. 启动容器:

    $ docker compose -f docker-compose.yml up -d
    

[!WARNING] 目前尚未正式支持在 Linux/arm64 机器上切换至 Infinity。

🔧 构建 Docker 镜像

该镜像大小约为 2 GB,依赖外部的 LLM 和嵌入服务。

git clone https://github.com/infiniflow/ragflow.git
cd ragflow/
docker build --platform linux/amd64 -f Dockerfile -t infiniflow/ragflow:nightly .

或者,如果您在代理后面,可以传递代理参数:

docker build --platform linux/amd64 \
  --build-arg http_proxy=http://YOUR_PROXY:PORT \
  --build-arg https_proxy=http://YOUR_PROXY:PORT \
  -f Dockerfile -t infiniflow/ragflow:nightly .

🔨 从源码启动服务以进行开发

  1. 安装 uvpre-commit,如果已安装则可跳过此步骤:

    pipx install uv pre-commit
    
  2. 克隆源代码并安装 Python 依赖项:

    git clone https://github.com/infiniflow/ragflow.git
    cd ragflow/
    uv sync --python 3.12 # 安装 RAGFlow 所需的 Python 模块
    uv run download_deps.py
    pre-commit install
    
  3. 使用 Docker Compose 启动依赖的服务(MinIO、Elasticsearch、Redis 和 MySQL):

    docker compose -f docker/docker-compose-base.yml up -d
    

    将以下内容添加到 /etc/hosts 文件中,以便将 docker/.env 中指定的所有主机解析为 127.0.0.1

    127.0.0.1       es01 infinity mysql minio redis sandbox-executor-manager
    
  4. 如果无法访问 HuggingFace,请设置 HF_ENDPOINT 环境变量以使用镜像站点:

    export HF_ENDPOINT=https://hf-mirror.com
    
  5. 如果您的操作系统没有 jemalloc,请按如下方式安装:

    # Ubuntu
    sudo apt-get install libjemalloc-dev
    # CentOS
    sudo yum install jemalloc
    # OpenSUSE
    sudo zypper install jemalloc
    # macOS
    sudo brew install jemalloc
    
  6. 启动后端服务:

    source .venv/bin/activate
    export PYTHONPATH=$(pwd)
    bash docker/launch_backend_service.sh
    
  7. 安装前端依赖项:

    cd web
    npm install
    
  8. 启动前端服务:

    npm run dev
    

    以下输出确认系统已成功启动:

  9. 开发完成后停止 RAGFlow 前后端服务:

    pkill -f "ragflow_server.py|task_executor.py"
    

📚 文档

📜 路线图

请参阅 RAGFlow 2026 年路线图

🏄 社区

🙌 贡献

RAGFlow 的蓬勃发展离不开开源社区的合作。我们欢迎来自社区的各种贡献。如果您希望参与其中,请先阅读我们的 贡献指南

版本历史

nightly2025/12/01
v0.24.02026/02/10
v0.23.12025/12/31
v0.23.02025/12/27
v0.22.12025/11/19
v0.22.02025/11/12
v0.21.12025/10/23
v0.21.02025/10/15
v0.20.52025/09/10
v0.20.42025/08/27
v0.20.32025/08/20
v0.20.22025/08/19
v0.20.12025/08/08
v0.20.02025/08/01
v0.19.12025/06/20
v0.19.02025/05/23
v0.18.02025/04/23
v0.17.22025/03/13
v0.17.12025/03/11
v0.17.02025/03/02

常见问题

相似工具推荐

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|今天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

139k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.7k|★★☆☆☆|2天前
开发框架图像Agent

NextChat

NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。

87.6k|★★☆☆☆|今天
开发框架语言模型

ML-For-Beginners

ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。

85k|★★☆☆☆|今天
图像数据工具视频

PaddleOCR

PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来,转换成计算机可读取的结构化数据,让机器真正“看懂”图文内容。 面对海量纸质或电子文档,PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域,它扮演着连接图像与大型语言模型(LLM)的桥梁角色,能将视觉信息直接转化为文本输入,助力智能问答、文档分析等应用场景落地。 PaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显:不仅支持全球 100 多种语言的识别,还能在 Windows、Linux、macOS 等多个系统上运行,并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目,PaddleOCR 既能满足快速集成的需求,也能支撑前沿的视觉语言研究,是处理文字识别任务的理想选择。

74.9k|★★★☆☆|今天
语言模型图像开发框架