本项目是基于RAG(Retrieval-Augmented Generation)架构的智能问答系统课程设计,包含完整的教学手册和代码示例,适用于计算机、软件工程、大数据、人工智能应用等专业的学生学习。
- 2.1 文档切分与向量化 - Chunking、Embedding
- 2.2 向量数据库部署 - Milvus/ChromaDB、索引构建
- 2.3 检索优化 - 稀疏检索、混合检索RRF
- 3.1 LLM集成与提示工程 - LangChain、Prompt Engineering
- 3.2 系统评估 - 评估指标、实验对比
- Python 3.8+
- pip
- (可选) GPU支持(用于模型推理)
# 安装全局依赖
cd 代码示例
pip install -r requirements.txt# 进入对应的示例目录
cd 代码示例/stage1_basics/1.1_principle
# 运行示例
python demo1_huggingface_api.pyRAG/
├── README.md # 项目说明(本文件)
├── 教学手册/ # 教学手册目录
│ ├── README.md # 课程总览
│ ├── 阶段1-基础理论与环境准备/
│ ├── 阶段2-RAG核心技术实战/
│ ├── 阶段3-系统集成与优化/
│ └── 阶段4-部署与展示/
└── 代码示例/ # 代码示例目录
├── README.md # 代码说明
├── requirements.txt # 全局依赖
├── stage1_basics/ # 阶段1代码
├── stage2_rag_core/ # 阶段2代码
├── stage3_integration/ # 阶段3代码
└── stage4_deployment/ # 阶段4代码
- 理论学习:按顺序阅读各阶段的教学手册
- 实践操作:运行对应阶段的代码示例
- 动手实验:完成每个模块的实训任务
- 项目实践:在最终项目中应用所学知识
- 循序渐进:按阶段顺序学习,每个阶段都有前置知识依赖
- 理论结合实践:边学边做,通过代码理解概念
- 动手实验:完成每个模块的实训任务,加深理解
- 项目导向:以最终项目为目标,系统整合所学知识
- LangChain / LlamaIndex:RAG框架
- Sentence Transformers:Embedding模型
- ChromaDB / Milvus:向量数据库
- Python 3.8+:主要编程语言
- Streamlit / Gradio:Web界面
- Docker:容器化部署
- Hugging Face Transformers:模型调用
- PyTorch:深度学习框架
- 模型下载:首次运行需要下载模型,可能需要一些时间
- 资源要求:某些示例需要GPU支持,请检查环境
- 依赖管理:建议使用虚拟环境管理依赖
- 数据准备:部分示例需要准备数据文件
Q: 模型下载很慢怎么办? A: 可以使用镜像源或手动下载模型到本地。
Q: 内存不足怎么办? A: 使用更小的模型或启用CPU模式(速度较慢)。
Q: 如何选择GPU/CPU? A: 代码中会自动检测,也可以手动指定device参数。
Q: 依赖冲突怎么办? A: 建议使用虚拟环境,或根据具体模块安装对应依赖。
- RAG相关论文和实践案例
- 提示工程最佳实践
- 向量数据库性能优化
通过本课程学习,学生将能够:
- ✅ 理解RAG架构的原理和应用
- ✅ 掌握数据准备和处理技能
- ✅ 学会向量化和检索技术
- ✅ 掌握LLM集成和提示工程
- ✅ 能够评估和优化RAG系统
- ✅ 具备部署RAG系统的能力
- ✅ 完成完整的RAG项目开发
本课程材料仅用于教学目的。
如有问题或建议,欢迎反馈。
祝学习愉快!🎉