一个可插拔、可观测的模块化 RAG (检索增强生成) 服务框架
本项目是一个企业级智能问答与知识检索系统,可应用于以下场景:
- 📖 文档问答:支持 PDF、Markdown、代码文件等多格式文档的智能问答,快速从海量文档中提取精准答案
- 🔍 语义搜索:基于混合检索技术,提供比传统关键词搜索更智能的语义理解能力
- 💡 知识库构建:将企业内部文档、技术资料转化为可检索的知识库,提升团队协作效率
- 🤖 AI 助手集成:通过 MCP (Model Context Protocol) 协议,可无缝对接 Claude、GitHub Copilot 等 AI 助手
- 🎯 个性化应用:可扩展为客服机器人、技术文档助手、代码搜索引擎等垂直领域应用
💼 面试利器:本项目的模块化设计和完整实现,可直接作为简历项目展示,涵盖 RAG 技术栈的核心知识点,是大模型/AI 工程师面试的绝佳项目案例。
- LLM 后端灵活切换:支持 Azure OpenAI、OpenAI API、本地模型(Ollama/vLLM)等多种后端,通过配置文件一键切换,零代码修改
- 模型组件自由替换:Embedding 模型、Rerank 模型、文档解析器、切分策略等核心组件均采用抽象接口设计,支持"乐高积木式"组合
- 检索策略可配置:支持纯向量检索、BM25 关键词检索、混合检索(Hybrid Search)等多种模式动态配置
- 结构化日志追踪:每个模块输出详细的结构化日志,便于问题定位与性能分析
- 评测指标体系:集成 Ragas/DeepEval 等 RAG 评测框架,量化检索质量与生成效果
- 监控与调试友好:提供完整的请求链路追踪,支持实时性能监控
- 标准化接口:完整实现 MCP 协议规范,可无缝对接 Claude Desktop、GitHub Copilot 等支持 MCP 的 AI 助手
- 开箱即用:通过 MCP Server 暴露 RAG 能力,让 AI 助手直接调用项目的检索和问答功能,无需额外开发
- 工具化封装:将 RAG 流程封装为 MCP Tools,AI 可以自主决策何时调用检索、如何组合多个工具完成复杂任务
- 上下文增强:为 AI 对话提供实时的知识库支持,让通用大模型具备领域专业知识
- 智能分块策略:语义感知的文档切分,保留完整语义单元
- 混合检索 (Hybrid Search):BM25 + Dense Embedding 融合,平衡查准率与查全率
- 两段式精排:粗排召回 → Rerank 精排,在性能与精度间取得最优平衡
"文档即规范,实现交给 AI"
本项目采用创新的 AI 协作开发模式,让您专注于架构设计与业务逻辑,将代码实现高效委托给 AI:
- 完整的 Skills 体系:通过精心设计的 Markdown 技能文件(
.github/skills/),AI 可以理解项目规范、遵循最佳实践,自动化完成代码实现 - VibeCoding 实践:掌握最新的 AI 协作开发技巧(VibeCoding),通过自然语言描述需求,让 AI 自动生成符合规范的代码
- 规范驱动开发:
DEV_SPEC.md作为项目的"宪法",定义架构、模块设计、技术选型等核心规范,AI 严格遵循文档完成编码 - 零背景快速上手:即使您不熟悉 RAG 技术栈,只需理解文档、修改需求描述,AI 会自动将您的想法转化为生产级代码
1. 📝 理解文档 (DEV_SPEC.md) → 掌握项目设计理念与技术架构
2. ✏️ 修改规范文档 → 根据需求调整设计方案或新增模块
3. 🤖 调用 Skills 交给 AI → 使用 dev-workflow、implement 等技能让 AI 完成编码
4. ✅ 验证与迭代 → Review 代码、运行测试,持续优化
本项目提供三位一体的学习资源,帮助您快速掌握 AI 协作开发模式:
| 资源类型 | 内容说明 |
|---|---|
| 📄 详尽的技术文档 | DEV_SPEC.md 提供完整的架构设计、技术选型、模块详解 |
| 💻 Skills 工作流 | .github/skills/ 包含 spec-sync、implement、testing 等 AI 技能,指导 AI 完成开发任务 |
| 🎬 视频教程 | 从环境搭建到核心模块实现,全程实战演示 |
💡 提示:详细的设计理念、技术选型与模块设计请参考 DEV_SPEC.md
通过学习和实践本项目,你将掌握:
- Skills 工程化:学会构建可复用的 AI 技能库,让 AI 成为你的"编程助手"
- VibeCoding 技巧:掌握与 AI 高效协作的开发模式,提升 10 倍开发效率
- 文档驱动开发:理解如何通过规范文档指导 AI 完成复杂工程项目
- 深入每个细节:从文档解析、智能分块、向量化、混合检索到 Rerank 重排,逐一掌握 RAG 链路的每个环节
- 工程化实践:不仅是理论,更有生产级代码实现,理解如何将论文技术落地到实际项目
- 性能优化:学习如何平衡检索速度与精度,优化 Embedding 策略,调优 Rerank 模型
- 简历项目加分:本项目涵盖大模型/AI 工程师岗位的核心技术栈,可直接写入简历作为亮点项目
- 面试问题应对:配套的面试题库帮你应对"RAG 如何优化召回率"、"Embedding 模型如何选择"等高频问题
- 技术深度展示:模块化设计、可插拔架构等工程实践,展现你的系统设计能力
本项目提供全面的视频讲解,涵盖:
- ✅ RAG 核心技术深度剖析:从分块策略、混合检索到 Rerank 重排,全面解构 RAG 技术细节
- ✅ 代码实战逐行讲解:环境配置、模块实现、性能优化,手把手带你完成项目
- ✅ 大模型面试真题解析:精选大厂面试题,结合项目实战讲解答题思路
- ✅ 转行求职指南:简历撰写技巧、面试准备策略、职业规划建议
🎬 获取视频教程与更多资源:
- 🔍 小红书搜索:不转到大模型不改名
- 🆔 小红书 ID:4740535877
持续更新中的内容:
- 📝 基于本项目的简历模板:如何将技术亮点写进简历
- 🎤 常见面试问题集锦:针对 RAG 项目的高频面试题及参考答案
- 💼 求职经验分享:从技术学习到拿到 Offer 的完整路径
# 克隆项目
git clone https://github.com/yourusername/Modular-RAG-MCP-Server.git
cd Modular-RAG-MCP-Server
# 安装依赖
pip install -r requirements.txt
# 配置环境变量(复制配置模板)
cp .env.example .env
# 编辑 .env 文件,填入您的 API Keys
# 运行服务
python src/main.py详细的环境配置、部署指南与使用示例请参考 DEV_SPEC.md。
.
├── DEV_SPEC.md # 核心设计文档(项目"宪法")
├── .github/
│ └── skills/ # AI 协作开发技能库
│ ├── spec-sync/ # 规范同步
│ ├── implement/ # 代码实现
│ ├── testing-stage/ # 测试验证
│ └── ...
├── src/ # 源代码
│ ├── retrieval/ # 检索模块(Hybrid Search, Rerank)
│ ├── generation/ # 生成模块(LLM 调用)
│ ├── pipeline/ # RAG 流程编排
│ └── ...
├── tests/ # 测试用例
└── docs/ # 补充文档
欢迎提交 Issue 和 Pull Request!在贡献代码前,请:
- 阅读 DEV_SPEC.md 了解项目架构与设计理念
- 遵循项目的代码规范(见
DEV_SPEC.md中的"开发规范"章节) - 确保测试通过(
pytest tests/)
如果这个项目对您有帮助,欢迎 Star ⭐️ 支持!
📢 关注我的小红书:不转到大模型不改名 (ID: 4740535877) 获取更多 RAG 技术分享、面试经验与职业发展建议 🚀