以开源 RAG 引擎 RAGFlow 为案例,系统讲解 RAG(检索增强生成)的原理与工程实现。
面向想真正学懂 RAG 的开发者:每篇先讲通用原理,再落到 RAGFlow 的真实源码。
主线:跟着「一份文档从上传到被问答」的数据流走,一环扣一环。建议按顺序读。
每篇结构统一为三段:① 原理 → ② RAGFlow 怎么做 → ③ 跟着读源码。
最该精读:第 3–8 篇是 RAG 核心主线(解析、切块、索引、检索、查询理解、生成)。
flowchart LR
subgraph ING["摄取阶段(离线)"]
direction LR
A["文档 PDF/Word 等"] --> B["解析 第3篇"]
B --> C["切块 第4篇"]
C --> D["向量化+索引 第5篇"]
end
subgraph QRY["查询阶段(在线)"]
direction LR
E["用户提问"] --> F["查询理解 第7篇"]
F --> G["混合检索+重排 第6篇"]
G --> H["生成+引用 第8篇"]
H --> I["回答"]
end
D --> E
进阶:GraphRAG(第9篇)/ RAPTOR(第10篇)增强检索;Pipeline(第11篇)编排摄取;Agent(第12篇)编排问答。
底座:双进程架构(第2篇)。
第一阶段 · 建立全局认知
第二阶段 · 深度文档理解
第三阶段 · 检索与生成