production-agentic-rag-course
7周构建企业级RAG系统:arXiv论文自动抓取、混合检索、Agentic RAG、Telegram
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
7周构建企业级RAG系统:arXiv论文自动抓取、混合检索、Agentic RAG、Telegram
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你有没有想过,一位 AI 研究者每天要翻阅上百篇 arXiv 论文,却苦于没有工具能快速筛选和总结?jamwithai/production-agentic-rag-course 就是来解决这个痛点的——它用 7 周时间,手把手教你搭建一套完整的企业级 RAG(检索增强生成)系统,最终成果是一个可以自动抓取 arXiv 论文、智能理解内容、并用自然语言回答研究问题的 AI 助手。
这个项目的最大特点是不跳步、不简化。它没有选择直接上向量数据库,而是严格按照业界真实流程来构建:先夯实关键词搜索基础,再逐步加入语义向量,最终形成混合检索架构。这样的设计逻辑让学习者不仅会用工具,更能理解工具为什么这样设计。
Mother-of-AI 是一个宏大的六阶段学习计划,Phase 1 就是这个 RAG 系统课程。发起者 jamwithai 团队认为,市面上的 RAG 教程大多过于简化,用几行代码演示向量相似度搜索就结束了,但真实生产环境远比这复杂——需要处理 PDF 解析、关键词与向量混合检索、流式输出、分布式追踪、缓存优化、移动端接入等一系列问题。
这个项目的诞生正是为了填补"从入门到企业级"的 Gap。作者设计了一条 7 周的学习路径,每周攻克一个关键技术点,从基础设施到最终 Telegram Bot 上线,循序渐进、环环相扣。GitHub 数据显示该项目已获得超过 6500 颗星,在 RAG 学习类项目中属于头部水平。
项目采用经典的微服务架构,通过 Docker Compose 编排 6 个核心容器:
值得注意的是,项目使用了 Hybrid Search(混合检索) 策略。不同于单纯依赖向量相似度的方案,这里先用 BM25 做关键词匹配,再用 Sentence-Transformers 生成的 1024 维向量做语义扩展,最后通过 RRF(Reciprocal Rank Fusion)算法融合两路结果。这种方式在搜索质量上明显优于纯向量方案,尤其在处理专业术语和长尾查询时优势明显。
数据管道方面,arXiv API 定时抓取论文,Docling 负责 PDF 解析(含表格结构识别),再经过智能分块(600 token + 100 重叠),最终双向索引写入 OpenSearch。整个流程由 Airflow 编排调度。
| 周次 | 主题 | 核心技术点 |
|---|---|---|
| Week 1 | 基础设施 | Docker Compose、FastAPI、PostgreSQL、OpenSearch、Ollama |
| Week 2 | 数据摄取 | arXiv API、PDF 解析、Docling、并发下载 |
| Week 3 | 关键词检索 | OpenSearch BM25、分面过滤、相关性评分 |
| Week 4 | 混合搜索 | 语义分块、Sentence-Transformers、Jina Embeddings |
| Week 5 | 完整 RAG | 本地 LLaMA、流式响应、Gradio 对话界面 |
| Week 6 | 生产监控 | Langfuse 全链路追踪、Redis 缓存 |
| Week 7 | Agentic RAG | LangGraph 决策图、Telegram Bot、Guardrails |
Week 7 是整个课程的高潮,引入了 Agentic RAG 概念。与传统 RAG 的线性流程不同,Agentic RAG 在检索前后加入了多个智能决策节点:
这些节点通过 LangGraph 定义为状态图,每一步的决策都被完整记录,既保证了检索质量,也提供了推理过程的透明性。
项目提供两种交互方式:
Gradio 界面(本地 http://localhost:7861):适合开发调试,可以切换模型、调整 top_k、选择是否启用混合搜索,实时查看流式输出和来源引用。
Telegram Bot(Week 7 新增):面向最终用户的移动端入口。用户只需在 Telegram 中向机器人提问,就能用自然语言查询 arXiv 论文相关内容,Agentic RAG 的所有智能决策都在后台自动完成。这代表了 RAG 系统从"技术展示"到"日常工具"的跨越。
项目的部署体验在同类课程中属于较好水平。docker compose up --build -d 一键启动全部服务,自动等待健康检查通过后才启动 API。.env.example 提供了开箱即用的默认配置,用户只需补充 Jina API Key 和 Langfuse 配置即可运行。
不过,硬件要求不低。本地 LLaMA 推理(Ollama)需要 8GB+ VRAM,建议 RTX 3090 或更高。完整数据管道运行起来需要 8GB+ 内存和 20GB+ 磁盘空间。此外,Week 7 的 Agentic RAG 引入了 LangGraph 状态机,代码复杂度显著上升,对学习者的 Python 面向对象编程能力有一定要求。
总体来看,这是一个面向有编程基础、想系统掌握 RAG 生产部署的学习者的课程。如果只是感兴趣想了解概念,可能会被 7 周的体量劝退;但如果目标是真正掌握企业级 RAG 系统,这门课程是目前 GitHub 上最完整、最接地气的选择之一。
在 RAG 概念已经烂大街的 2025 年,这个项目提供了一种稀缺的东西:系统性和透明度。它的价值不在于发明了什么新技术,而在于把生产环境里真实使用的 RAG 工程实践拆解成 7 周的动手实验,让学习者不仅知道"怎么用",更理解"为什么这样用"。
GitHub 6500+ 星、完整的博客文章和 Jupyter Notebook、活跃的 Issue 讨论——这些指标都说明这个项目在 RAG 教育领域确实占据了一席之地。如果你正在寻找一个可以作为基准的 RAG 系统实现,它值得花时间深入研究。