252R深度学习应用(LlamaIndex•RAG)
这个报告 252R深度学习应用课程实践(Chapter 1~10)和, 2025-2学期深度学习应用项目(基于RAG的校规/学士运营规范Q&A)一起管理。
practice/:按Chapter分类的实践笔记本电脑/代码theory/:理论资料(PDF)和笔记本电脑project/:基于校规PDF的RAG问答项目(ChromaDB+LlamaIndex)dla/:uv基于的python环境(依赖性捆绑)
按Chapter分类的实践内容
| Chapter | 主题 | 主要文件/文件夹 | 简单摘要 |
|---|---|---|---|
1LlamaIndex入门 practice/ch01/starter.ipynb | 基本概念/安装/首次运行 | ||
| 2 | RAG管线 | practice/ch02/ch02_practice.ipynb | 加载→收听→索引→查询流 |
| 3 | 矢量DB/存储库 | practice/ch03/01_chroma_example.ipynb | Chroma/Pinecone/Qdrant比较练习 |
| 4 | 文档RAG(PDF等) | practice/ch04/ch04_practice.ipynb | 基于PDF的RAG基本功能 |
| 5 | 多模式RAG | practice/ch05/multimodal_rag.ipynb | 搜索/查询文本+图像 |
| 6 | RAG代理 | practice/ch06/ch06_agentic_rag.ipynb | 利用代理配置和工具 |
| 7 | 高级RAG | practice/ch07/ch07_advanced_rag.ipynb | Reranking/HyDE等高级技术 |
| 8 | 函数调用 | practice/ch08/ch08_practice.ipynb | 基于外部工具调用的代理 |
| 9 | 文本到SQL | practice/ch09/ch09_text_to_sql.ipynb | 自然语言→SQL查询代理 |
| 10微克 | practice/ch10/server.py | MCP服务器/客户端和示例 |
摘要:第1-4章奠定了“文档→矢量→搜索→回答”RAG的基本知识,第5-10章扩展到多模式/代理/高级搜索/工具(MCP)。
报告结构
.
├── practice/ # Chapter별 실습(노트북/스크립트/샘플 데이터)
├── theory/ # Transformer/LLM 등 이론 자료
├── project/ # 2025-2 프로젝트: 학칙 PDF RAG Q&A
│ ├── data/ # 제공 PDF(7개) — 이 폴더의 PDF만 사용
│ ├── main.py # 제출 파일(단일 파일)
│ ├── test/ # 예시 queries/outputs
│ └── chroma_db_test/ # (--save) 실행 시 생성/갱신
└── dla/ # uv 환경(의존성)运行/开发环境
- 建议使用Python3.10+
- 依赖性安装(建议:
uv):dla/是包含LlamaIndex/Chroma/Jupyter等的实习环境。
cd dla
uv sync
source .venv/bin/activate环境变量(.env)
在项目/实践中,API键是根的 .env使用。
OPENAI_API_KEY=...
# (선택) 실습/확장에 따라 필요
GOOGLE_API_KEY=...
PINECONE_API_KEY=...
OPENWEATHER_API_KEY=...2025-2学期深度学习应用项目
高丽大学 校规和学士运营规定PDF基于,自动回答与法规相关的问题 基于RAG的问答系统(聊天机器人) 实施是我们的目标。
概述(管线)
--save:加载PDF→段落/区块分割→嵌入生成(OpenAI)→保存ChromaDB--infer:queries.json输入→搜索ChromaDB(根据段落)→生成LLM答案→outputs.json保存
outputs.json在 id, question, answer(A/B/C/D), elapsed_sec, citations包括(参考依据)。
执行方法
project/ 路径必须在文件夹中运行。
cd project
# 1) ChromaDB 생성/갱신
python main.py --save
# 2) 질의응답 수행
python main.py --infer test/queries.json test/outputs.json提交/评估备忘录
- 截止日期:2025年12月19日(周五)23:59
- 提交:
project/main.py(单个文件) - 运行:
--save,--infer所有操作都必须无误 - 评估:测试查询→
outputs.json的"answer"(A/B/C/D)正确率比较 - 实施限制:根据挑战指南
save_to_chroma(),infer()禁止修改外部内容(请参见详细注释)
许可证
MIT许可证
