RAGFlow 教学:开源 RAG 引擎怎么装、怎么喂文件、怎么让 AI 不乱讲
把公司一整柜的 PDF 丢给 AI,然后它开始一本正经地胡说八道——这大概是每个想做企业知识库的人都遇过的场面。RAGFlow 用「深度文件理解」加上可追溯引用来治这个病。这篇从 Docker 安装、建知识库、设模型,一路讲到怎么让答案附上出处。
前言:当 AI 把 PDF 读成一团乱
我看过一个真实案例:某公司想做内部知识库,把三百多份产品手册的 PDF 丢进一套 RAG 系统,结果 AI 回答时把表格的数字接到别段文字、把页尾的版权声明当成正文引用。问它「A 型号的功率是多少」,它信誓旦旦回了一个其实是 B 型号的数字。负责的工程师苦笑说,问题不在模型笨,是「文件根本没被好好读进去」。
这就是 RAG 真正难的地方——不是接模型,是把那些版面复杂、有表格、有扫描档的文件,正确地切成模型吃得下的片段。RAGFlow 主打的就是这件事。这篇带你实际装起来、喂文件、让它附上出处。
RAGFlow 是什么
RAGFlow 是 InfiniFlow 出的开源 RAG(检索增强生成)引擎,程式码在 GitHub 上公开。如果你还不确定 RAG 是什么,先看我们的 什么是 RAG 会比较好懂——简单说,就是让 AI 回答前先去你的资料堆里查资料,再根据查到的东西作答,而不是凭记忆乱讲。
RAGFlow 跟其他 RAG 工具最不一样的地方,是它叫做 DeepDoc 的「深度文件理解」。一般工具读 PDF 就是把文字硬抽出来,版面一复杂就乱套。RAGFlow 会去理解版面结构——哪里是标题、哪里是表格、哪里是段落,连扫描档(图片型 PDF)都能透过 OCR 处理。它支援 Word、简报、Excel、纯文字、图片、扫描档、结构化资料、网页等多种格式。
另一个重点是可追溯的引用。它回答时会把答案的依据标出来,让你看到「这句话是从哪份文件的哪一段来的」,大幅降低你被 AI 唬住的机率。它也整合了 Dify 那类平台在做的 Agent 编排,支援把 RAG、工具、MCP 兜成视觉化工作流。
能拿来做什么
- 企业内部知识库:把产品手册、SOP、合约范本喂进去,员工用自然语言问,答案附出处。
- 客服问答后台:接上常见问题与技术文件,当聊天机器人的大脑。
- 研究与分析:法律判例、财报、论文这类版面复杂、需要精准引用的文件,正好打中 DeepDoc 的强项。
- 个人第二大脑:把你长年累积的笔记、电子书丢进去,变成能对话的知识库。
想搞懂 RAG 系统整体怎么搭,可以搭配 RAG 实作指南 一起看。
怎么用:第一次上手
RAGFlow 用 Docker 部署,流程不算难,但对机器有点要求,先看规格。
1. 确认系统需求
官方建议:CPU 至少 4 核、记忆体至少 16GB、硬碟至少 50GB,Docker 24 以上、Docker Compose v2.26 以上。记忆体这条很关键——它要跑向量检索引擎,记忆体不够会一直当,别想用 4GB 的小机器硬上。
2. 拉专案、启动
从 GitHub clone 下来后,进到 docker 目录,启动:
git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker
docker compose up -d
第一次跑会抓不少映像档,泡杯咖啡等它。跑完用 docker ps 确认容器都起来了。
3. 开后台、设模型
服务起来后,浏览器开 http://你的主机IP(预设 80 埠)。注册一个帐号登入,接着去设定里填模型的 API 金钥——这步不能跳过。RAGFlow 自己不附模型,你要告诉它用哪个 LLM(回答用)跟哪个嵌入模型(embedding,把文字转成向量用)。可以填 OpenAI、各家云端模型,也能接本地的 Ollama。
4. 建知识库、喂文件
建立一个 Knowledge Base,把你的 PDF、Word 上传进去。重点来了:上传后要选一个切块模板(chunk method)。RAGFlow 提供多种模板对应不同文件型态——一般文件、论文、书本、法律、简报、表格、问答对等等。选对模板,切块品质差很多。选好后按解析(parse),它会跑 DeepDoc 把文件拆成片段。
5. 检查切块结果
这是 RAGFlow 最该用的功能:解析完它会把切块结果视觉化给你看,你能看到每一块长什么样、对应原文哪个位置。发现切坏了——比如表格被切断——可以人工调整。别嫌麻烦,这一步直接决定后面回答准不准。
6. 建聊天助理、测问答
切块没问题后,建一个 Chat,把这个知识库挂上去,就能开始问问题了。它回答时会附上引用来源,点下去能跳到原文片段。
进阶技巧
模板要按文件型态分库:不要把法律合约跟产品简报丢同一个知识库用同一个模板。版面差太多,切块逻辑不一样。分开建库、各选各的模板,准确率会明显提升。
善用混合检索:RAGFlow 同时做向量检索跟 BM25 关键字检索,再加重排序(re-rank)。纯向量检索对「精确名词、料号、条文编号」这种查询常常抓不准,关键字检索正好补上。预设就有,但你可以调权重。
接 Ollama 跑本地模型:在意资料隐私、不想把公司文件送上云端的,可以把 LLM 跟嵌入模型都指向本地 Ollama,整套离线跑。代价是要更好的硬体。
用 API 串进自己的系统:RAGFlow 有提供 API,你可以把它当成后端检索层,前端用自己的介面,或接到既有的客服系统。要做更复杂的工作流,也能用它的 Agent 编排功能,概念跟 AI Agent 开发 那套相通。
常见错误与注意事项
- 记忆体开太小硬装:16GB 是底线不是建议,低于这个容器会反复崩溃,新手常卡在这里找不到原因。
- 忘了设嵌入模型:很多人只设了回答用的 LLM,忘了嵌入模型,结果文件根本没被正确向量化,问什么都答不准。两个都要设。
- 切块模板随便选或不检查:用预设模板喂一份结构复杂的 PDF,然后抱怨答案烂——问题八成出在切块。一定要看视觉化结果,坏了就调。
- 以为有引用就 100% 正确:可追溯引用是让你「能验证」,不是「保证对」。引用降低幻觉风险,但模型仍可能误读片段。重要场景请人工复核出处。想多了解 AI 为什么会乱讲,看 AI 幻觉是什么。
- 资料隐私没想清楚:用云端模型,你的文件片段会送到模型厂商那。敏感资料请走本地模型方案。
TheAI学院 评语
市面上能接 RAG 的工具一大堆,但多数把重心放在「怎么接模型、怎么存向量」,却假设文件能干净地读进来。实务上,文件解析才是九成专案翻车的地方。RAGFlow 把力气花在 DeepDoc 跟切块视觉化,等于是承认并正面处理这个最脏的工。对要做企业知识库、又被表格跟扫描档搞疯的团队,这个取舍很对。
做 RAG 久了会懂一句话:答案的品质不是赢在模型多强,是赢在文件有没有被好好读进去。RAGFlow 把赌注押在这里,押对了。
要注意它是工程取向的工具,得会 Docker、要一台像样的机器,不是装了就能用的云端服务。如果你只是个人想简单试 RAG,门槛可能偏高;但若你要自架、要可控、要处理复杂文件,它值得花一个下午装起来玩。
资料来源
常见问题
RAGFlow 是免费的吗?自架要钱吗?
RAGFlow 本身是开源的,你自己用 Docker 部署在自己的伺服器上,软体不用付费。但要花的成本有两块:一是硬体(建议 16GB 记忆体以上的机器),二是模型费用——你接的云端 LLM 跟嵌入模型 API 是另外算钱的。如果全部改用本地 Ollama 模型,理论上可以做到零 API 费用,代价是需要更好的硬体。官方另外也有提供云端版的付费方案,不想自己架的人可以考虑。
我不太会写程式,装得起来吗?
RAGFlow 的安装主要靠 Docker,只要照着指令 clone 专案、跑 docker compose up,不太需要写程式。但你得对命令列、Docker 有基本概念,遇到容器起不来、记忆体不足时要能自己 debug,所以说它是工程取向的工具。完全没碰过终端机的纯新手,门槛会偏高,建议先找会 Docker 的同事协助第一次部署。
为什么一定要选切块模板?用预设不行吗?
可以用预设,但结果往往不理想。RAGFlow 的切块模板是针对不同文件型态设计的——论文、书本、法律、简报、表格各有对应逻辑。版面复杂的文件用错模板,会把表格切断、把标题跟内文混在一起,直接拖垮回答准确度。花一分钟选对模板、解析后看一下视觉化结果,是性价比最高的一步,别省。
RAGFlow 跟 Dify、LangChain 这类工具差在哪?
定位不同。LangChain 是开发框架,给工程师写程式组 RAG 流程用;Dify 偏向 LLM 应用开发平台,涵盖面广。RAGFlow 则把重心压在「文件理解与检索品质」这一段,DeepDoc 深度解析跟切块视觉化是它的招牌。如果你的痛点是「文件读不干净、答案不准」,RAGFlow 对症;如果你要的是完整的应用编排平台,可能要搭配或改用 Dify 那类工具。