all-in-rag

all-in-rag

🔍大模型应用开发实战一:RAG技术全栈指南,在线阅读地址:https://datawhalechina.github.io/all-in-rag/

Stars: 509

Visit
 screenshot

All-in-RAG is a comprehensive repository for all things related to Randomized Algorithms and Graphs. It provides a wide range of resources, including implementations of various randomized algorithms, graph data structures, and visualization tools. The repository aims to serve as a one-stop solution for researchers, students, and enthusiasts interested in exploring the intersection of randomized algorithms and graph theory. Whether you are looking to study theoretical concepts, implement algorithms in practice, or visualize graph structures, All-in-RAG has got you covered.

README:

All-in-RAG | 大模型应用开发实战一:RAG技术全栈指南

All-in-RAG Logo

🔍 检索增强生成 (RAG) 技术全栈指南

从理论到实践,从基础到进阶,构建你的RAG技术体系

GitHub stars GitHub forks Python
在线阅读 English Version 讨论交流

🎯 系统化学习
完整的RAG技术体系
🛠️ 动手实践
丰富的项目案例
🚀 生产就绪
工程化最佳实践
📊 多模态支持
文本+图像检索

项目简介(中文 | English

本项目是一个面向大模型应用开发者的RAG(检索增强生成)技术全栈教程,旨在通过体系化的学习路径和动手实践项目,帮助开发者掌握基于大语言模型的RAG应用开发技能,构建生产级的智能问答和知识检索系统。

主要内容包括:

  1. RAG技术基础:深入浅出地介绍RAG的核心概念、技术原理和应用场景
  2. 数据处理全流程:从数据加载、清洗到文本分块的完整数据准备流程
  3. 索引构建与优化:向量嵌入、多模态嵌入、向量数据库构建及索引优化技术
  4. 检索技术进阶:混合检索、查询构建、Text2SQL等高级检索技术
  5. 生成集成与评估:格式化生成、系统评估与优化方法
  6. 项目实战:从基础到进阶的完整RAG应用开发实践

项目意义

随着大语言模型的快速发展,RAG技术已成为构建智能问答系统、知识检索应用的核心技术。然而,现有的RAG教程往往零散且缺乏系统性,初学者难以形成完整的技术体系认知。

本项目从实践出发,结合最新的RAG技术发展趋势,构建了一套完整的RAG学习体系,帮助开发者:

  • 系统掌握RAG技术的理论基础和实践技能
  • 理解RAG系统的完整架构和各组件的作用
  • 具备独立开发RAG应用的能力
  • 掌握RAG系统的评估和优化方法

项目受众

本项目适合以下人群学习:

  • 具备Python编程基础,对RAG技术感兴趣的开发者
  • 希望系统学习RAG技术的AI工程师
  • 想要构建智能问答系统的产品开发者
  • 对检索增强生成技术有学习需求的研究人员

前置要求:

  • 掌握Python基础语法和常用库的使用
  • 能够简单使用docker
  • 了解基本的LLM概念(推荐但非必需)
  • 具备基础的Linux命令行操作能力

项目亮点

  1. 体系化学习路径:从基础概念到高级应用,构建完整的RAG技术学习体系
  2. 理论与实践并重:每个章节都包含理论讲解和代码实践,确保学以致用
  3. 多模态支持:不仅涵盖文本RAG,还包括多模态嵌入和检索技术
  4. 工程化导向:注重实际应用中的工程化问题,包括性能优化、系统评估等
  5. 丰富的实战项目:提供从基础到进阶的多个实战项目,帮助巩固学习成果

内容大纲

第一部分:RAG基础入门

第一章 解锁RAG 📖 查看章节

  1. [x] RAG简介 - RAG技术概述与应用场景
  2. [x] 准备工作 - 环境配置与准备
  3. [x] 四步构建RAG - 快速上手RAG开发
  4. [x] 附:环境部署 - Python虚拟环境部署方案补充

第二章 数据准备 📖 查看章节

  1. [x] 数据加载 - 多格式文档处理与加载
  2. [x] 文本分块 - 文本切分策略与优化

第二部分:索引构建与优化

第三章 索引构建 📖 查看章节

  1. [x] 向量嵌入 - 文本向量化技术详解
  2. [x] 多模态嵌入 - 图文多模态向量化
  3. [x] 向量数据库 - 向量存储与检索系统
  4. [x] Milvus实践 - Milvus多模态检索实战
  5. [x] 索引优化 - 索引性能调优技巧

第三部分:检索技术进阶

第四章 检索优化 📖 查看章节

  1. [x] 混合检索 - 稠密+稀疏检索融合
  2. [x] 查询构建 - 智能查询理解与构建
  3. [x] Text2SQL - 自然语言转SQL查询
  4. [x] 查询重构与分发 - 查询优化策略
  5. [x] 检索进阶技术 - 高级检索算法

第四部分:生成与评估

第五章 生成集成 📖 查看章节

  1. [x] 格式化生成 - 结构化输出与格式控制

第六章 RAG系统评估 📖 查看章节

  1. [x] 评估介绍 - RAG系统评估方法论
  2. [x] 评估工具 - 常用评估工具与指标

第五部分:高级应用与实战

第七章 高级RAG架构(拓展部分) 📖 查看章节

  1. [x] 基于知识图谱的RAG

第八章 项目实战一 📖 查看章节

  1. [x] 环境配置与项目架构
  2. [x] 数据准备模块实现
  3. [x] 索引构建与检索优化
  4. [x] 生成集成与系统整合

第九章 项目实战一优化(选修篇) 📖 查看章节

🍽️ 项目展示

  1. [x] 图RAG架构设计
  2. [x] 图数据建模与准备
  3. [x] Milvus索引构建
  4. [x] 智能查询路由与检索策略

第十章 项目实战二(选修篇) 📖 查看章节 规划中

目录结构说明

all-in-rag/
├── docs/           # 教程文档
├── code/           # 代码示例
├── data/           # 示例数据
├── models/         # 预训练模型
└── README.md       # 项目说明

实战项目展示

第八章 项目一:

项目一

第九章 项目一(Graph RAG优化):

项目一(Graph RAG优化)

第十章 项目二:

致谢

核心贡献者

额外章节贡献者

特别感谢

  • 感谢 @Sm1les 对本项目的帮助与支持
  • 感谢所有为本项目做出贡献的开发者们
  • 感谢开源社区提供的优秀工具和框架支持
  • 特别感谢以下为教程做出贡献的开发者!

Contributors

Made with contrib.rocks.

参与贡献

我们欢迎所有形式的贡献,包括但不限于:

  • 🚨 Bug报告:发现问题请提交 Issue
  • 💭 教程建议:有好的想法欢迎在 Discussions 中讨论
  • 📚 文档改进:帮助完善文档内容和示例代码(当前仅支持第七章优质内容pr)

Star History

Star History Chart

如果这个项目对你有帮助,请给我们一个 ⭐️

让更多人发现这个项目(护食?发来!)

star

关于 Datawhale

Datawhale

扫描二维码关注 Datawhale 公众号,获取更多优质开源内容


许可证

知识共享许可协议

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。


For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for all-in-rag

Similar Open Source Tools

For similar tasks

For similar jobs