all-in-rag
Datawhale 出品的 RAG 技术全栈教程,九章体系覆盖检索增强生成全流程
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Datawhale 出品的 RAG 技术全栈教程,九章体系覆盖检索增强生成全流程
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下,你正在搭建一个企业内部知识库问答系统。用户问:「去年Q3的营收数据是多少?」——没有 RAG,大模型只能靠「记忆」瞎猜;有了 RAG,大模型先从你的内部文档里检索相关段落,再结合这些真实数据生成答案,准确率天壤之别。All-in-RAG 就是 Datawhale 团队为想掌握这项技术的人准备的一份系统化学习手册。
大模型应用开发实战系列的第一门课程,由国内知名 AI 学习社区 Datawhale 发起和维护。Datawhale 此前已在 GitHub 积累了大量高质量开源教程(如「吃透同济高数」「机器学习公式详解」),覆盖数万名 AI 学习者。
RAG(Retrieval-Augmented Generation,检索增强生成)是 2023 年下半年至 2024 年最热门的 LLM 应用架构之一。相比微调(Fine-tuning),RAG 成本更低、时效性更强、可解释性更好,成为企业构建智能问答、知识库检索的主流方案。然而当时的 RAG 学习资料分散在各博客和官方文档中,缺乏体系化、项目化的实战教程——这正是 All-in-RAG 诞生的背景。
项目的在线文档将 RAG 技术拆解为 九个章节,每章包含理论文档 + 可运行代码示例,形成完整的学习闭环:
| 章节 | 内容 | 技术亮点 |
|---|---|---|
| 第一章 | RAG 基础概念与环境准备 | LangChain / LlamaIndex 双框架入门 |
| 第二章 | 数据加载与文本分块 | 多格式 PDF/HTML 解析、分块策略优化 |
| 第三章 | 向量嵌入与索引构建 | sentence-transformers、Milvus、FAISS |
| 第四章 | 高级检索技术 | 混合检索、Text2SQL、查询改写 |
| 第五章 | 格式化生成 | Prompt 工程、输出结构化 |
| 第六章 | 系统评估与常用工具 | RAGAS 等评估框架 |
| 第七章 | 知识图谱 RAG | 图谱构建与 KG-RAG 融合 |
| 第八章 | 端到端 RAG 系统构建 | 从数据准备到生成全链路 |
| 第九章 | Graph RAG 进阶 | 图结构驱动的检索增强 |
特别值得关注的是第三章(向量嵌入与索引)和第九章(Graph RAG)。前者覆盖了 Milvus 向量数据库的完整部署流程,配套 docker-compose.yml;后者紧跟 2024 年 Graph RAG 的技术趋势,引入 Neo4j 图数据库,将 RAG 检索从平面向量空间拓展到知识图谱关系网络。
主语言:Python 3.12+,对 PyTorch 生态有强依赖(torch 2.6.0)。
核心框架呈双轨并行:
这种双框架设计是有意为之——LangChain 和 LlamaIndex 各有优劣,教程同时展示两种实现方式,让学习者能够对比理解,而非困在单一工具中。
向量数据库:chromadb(轻量)、faiss(CPU 高效)、pymilvus(生产级 Milvus)。项目提供了 docker-compose.yml 一键启动 Milvus 全家桶(etcd + minio + milvus)。
多模态扩展:langchain-experimental + multimodal embedding,支持图像检索场景。
其他依赖:huggingface-hub(模型管理)、datasets(数据处理)、pypdf(文档解析)、unstructured(多格式解析)。
项目没有提供 Dockerfile(纯教程项目,不是一键部署的 Web 应用),但提供了部分工程化支持:
docker-compose.yml 覆盖 Milvus 向量数据库全家桶,解决了 RAG 系统中最难配置的组件requirements.txt 包含完整依赖锁定版本,pip install -r 即可复现环境部署难点在于:主框架依赖 PyTorch(需要 CUDA 环境)和多个向量数据库,实际完整环境需要 GPU + Docker + Python 3.12,门槛比纯 Web 应用高。对于只想快速体验概念的学习者,建议先跑通第一章的 LangChain 示例代码(CPU 可运行)。
亮点:
局限:

图1:All-in-RAG 项目架构图,展示了 RAG 系统的数据流——从文档加载、分块、向量化、检索到生成的全链路

图2:RAG 核心流程图——检索(Retrieval)与生成(Generation)的协同工作原理
总结:All-in-RAG 是中文 RAG 领域质量最高、体系最完整的开源学习项目之一。8057 Star 的社区认可度证明了它的实用价值。适合作为 RAG 入门的系统性教材,但若用于生产部署,需要额外补充容器化和服务化工作。推荐配合 Datawhale 的在线文档阅读,体验最佳。