# LangChain学习 **Repository Path**: hongzyh/lang-chain-learning ## Basic Information - **Project Name**: LangChain学习 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2026-03-30 - **Last Updated**: 2026-07-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 🎓 LangChain 从零开始学习课程(重构版) > 本课程采用**4阶段12课**结构,循序渐进掌握LangChain全家桶,从基础到生产级应用。 --- ## 📚 课程结构 ### 阶段1:LangChain基础(第1-4课) **目标**:掌握核心概念和基础组件 | 课程 | 主题 | 预计时间 | 难度 | 关键技能 | |------|------|----------|------|----------| | 第1课 | Hello LangChain + LCEL | 30分钟 | ⭐ | 管道语法、链式调用 | | 第2课 | 提示词工程 | 45分钟 | ⭐ | PromptTemplate、Few-shot | | 第3课 | 输出解析与结构化 | 45分钟 | ⭐ | Pydantic、JSON、XML解析 | | 第4课 | 模型与参数调优 | 60分钟 | ⭐⭐ | Temperature、流式输出 | ### 阶段2:核心组件(第5-7课) **目标**:掌握工具、记忆和链的高级组合 | 课程 | 主题 | 预计时间 | 难度 | 关键技能 | |------|------|----------|------|----------| | 第5课 | 工具与函数调用 | 60分钟 | ⭐⭐ | @tool装饰器、自定义工具 | | 第6课 | 记忆系统 | 60分钟 | ⭐⭐ | BufferMemory、VectorStoreMemory | | 第7课 | 链的组合与路由 | 90分钟 | ⭐⭐⭐ | 复杂链、条件路由、并行处理 | ### 阶段3:RAG系统(第8-10课)⭐核心 **目标**:构建完整的检索增强生成系统 | 课程 | 主题 | 预计时间 | 难度 | 关键技能 | |------|------|----------|------|----------| | 第8课 | RAG基础:文档加载与分割 | 90分钟 | ⭐⭐⭐ | Document Loaders、Text Splitters | | 第9课 | RAG进阶:检索与生成 | 90分钟 | ⭐⭐⭐ | Embeddings、VectorStore、Retrievers | | 第10课 | 生产级RAG系统 | 120分钟 | ⭐⭐⭐⭐ | 重排序、评估、缓存、监控 | ### 阶段4:智能体与工作流(第11-14课) **目标**:开发智能Agent和复杂工作流 | 课程 | 主题 | 预计时间 | 难度 | 关键技能 | |------|------|----------|------|----------| | 第11课 | Agents入门 | 90分钟 | ⭐⭐⭐ | ReAct、工具调用、AgentExecutor | | 第12课 | LangGraph工作流基础 | 120分钟 | ⭐⭐⭐⭐ | StateGraph、条件分支、持久化 | | 第13课 | 多智能体系统 | 120分钟 | ⭐⭐⭐⭐ | 多Agent协作、角色分工、冲突解决 | | 第14课 | 高级工作流模式 | 120分钟 | ⭐⭐⭐⭐⭐ | 人机协作、长时间运行、错误恢复 | ### 阶段5:生产部署与优化(第15-16课) **目标**:掌握生产环境部署和性能优化 | 课程 | 主题 | 预计时间 | 难度 | 关键技能 | |------|------|----------|------|----------| | 第15课 | 生产部署与监控 | 90分钟 | ⭐⭐⭐⭐ | Docker、K8s、LangSmith、Prometheus | | 第16课 | 性能优化与成本控制 | 90分钟 | ⭐⭐⭐⭐ | 缓存策略、批量处理、模型路由 | ### 阶段6:实战项目(第17-20课) **目标**:通过完整项目巩固所学知识 | 课程 | 主题 | 预计时间 | 难度 | 关键技能 | |------|------|----------|------|----------| | 第17课 | 项目1:智能客服系统 | 180分钟 | ⭐⭐⭐⭐ | 完整RAG+Agent系统 | | 第18课 | 项目2:内容生成平台 | 180分钟 | ⭐⭐⭐⭐ | 多模态、批量生成 | | 第19课 | 项目3:数据分析助手 | 180分钟 | ⭐⭐⭐⭐⭐ | 代码执行、可视化 | | 第20课 | 项目4:多智能体协作平台 | 240分钟 | ⭐⭐⭐⭐⭐ | 复杂工作流、企业级架构 | --- ## 📋 详细课程大纲 ### 阶段1:LangChain基础 #### 第1课:Hello LangChain + LCEL - 什么是LangChain?核心概念和架构 - LCEL(LangChain Expression Language)语法 - 基础链构建:Prompt + Model + Output - 练习:构建第一个AI应用 #### 第2课:提示词工程 - PromptTemplate vs ChatPromptTemplate - 系统消息、用户消息、AI消息 - Few-shot示例学习 - 提示词模板复用和组合 - 练习:设计高质量提示词 #### 第3课:输出解析与结构化 - 为什么需要输出解析器 - StrOutputParser、JsonOutputParser - PydanticOutputParser类型安全解析 - XML、CSV、Markdown解析器 - 练习:简历信息提取器 #### 第4课:模型与参数调优 - Temperature、max_tokens详解 - 流式输出(Streaming)实现 - 多模型切换策略 - 模型参数调优最佳实践 - 练习:构建流式聊天应用 --- ### 阶段2:核心组件 #### 第5课:工具与函数调用 - @tool装饰器详解 - 工具描述和参数定义 - 自定义工具开发 - 工具错误处理 - 练习:开发实用工具集 #### 第6课:记忆系统 - ConversationBufferMemory - ConversationSummaryMemory - VectorStoreMemory向量记忆 - 实体记忆和知识图谱 - 练习:带记忆的聊天机器人 #### 第7课:链的组合与路由 - 顺序链(Sequential Chain) - 条件路由(RunnableBranch) - 并行处理(RunnableParallel) - 链的嵌套和复用 - 练习:智能路由系统 --- ### 阶段3:RAG系统 #### 第8课:RAG基础 - RAG架构原理 - Document Loaders(PDF、网页、数据库) - Text Splitters(字符、Token、递归) - 文档元数据管理 - 练习:加载和分割文档 #### 第9课:RAG进阶 - Embeddings模型选择 - VectorStore(Chroma、FAISS、Pinecone) - Retrievers和检索策略 - MMR、相似度阈值检索 - 练习:构建基础RAG系统 #### 第10课:生产级RAG - 重排序(Re-ranking) - RAG评估指标(RAGAS) - 查询重写和扩展 - 混合检索策略 - 缓存和性能优化 - 练习:优化RAG系统效果 --- ### 阶段4:智能体与工作流 #### 第11课:Agents入门 - 什么是AI Agent? - ReAct模式详解 - 工具调用和决策制定 - AgentExecutor执行流程 - 带记忆的Agent - 练习:构建数学解题Agent #### 第12课:LangGraph工作流基础 - StateGraph核心概念 - 状态(State)定义和管理 - 节点(Node)和边(Edge) - 条件分支和循环 - 持久化和检查点 - 练习:构建审批工作流 #### 第13课:多智能体系统 - 多Agent架构设计 - 角色定义和分工 - Agent间通信机制 - 冲突检测和解决 - 监督者模式(Supervisor) - 练习:研究团队模拟 #### 第14课:高级工作流模式 - 人机协作(Human-in-the-loop) - 长时间运行任务 - 断点续传和错误恢复 - 子图和模块化设计 - 动态工作流生成 - 练习:复杂业务流程自动化 --- ### 阶段5:生产部署与优化 #### 第15课:生产部署与监控 - Docker容器化部署 - Kubernetes编排 - LangSmith全链路监控 - 日志和指标收集 - 健康检查和自动恢复 - 练习:部署生产级服务 #### 第16课:性能优化与成本控制 - 提示词缓存策略 - 批量处理和异步优化 - 模型路由(Fallback) - Token用量优化 - 成本监控和告警 - 练习:优化系统性能 --- ### 阶段6:实战项目 #### 第17课:项目1 - 智能客服系统 **功能**: - 多轮对话理解 - 知识库检索(RAG) - 意图识别和路由 - 工单自动创建 - 人工客服转接 **技术栈**:FastAPI + LangChain + Chroma + React #### 第18课:项目2 - 内容生成平台 **功能**: - 多模态内容生成(文本+图片) - 批量内容生成 - 内容审核和优化 - 模板管理 - 发布到多平台 **技术栈**:LangChain + Stable Diffusion + Celery + Next.js #### 第19课:项目3 - 数据分析助手 **功能**: - 自然语言查询数据 - SQL/Python代码生成 - 数据可视化 - 报告自动生成 - 数据安全控制 **技术栈**:LangChain + SQLDatabase + Pandas + Plotly + Streamlit #### 第20课:项目4 - 多智能体协作平台 **功能**: - 多角色Agent协作 - 任务分解和分配 - 工作流可视化 - 实时协作编辑 - 企业级权限管理 **技术栈**:LangGraph + FastAPI + WebSocket + PostgreSQL + Vue3 --- ## 🚀 快速开始 ### 1. 环境准备 ```bash # 进入课程目录 cd langchain_course # 创建虚拟环境(推荐) python -m venv .venv # Windows .venv\Scripts\activate # Mac/Linux source .venv/bin/activate # 安装依赖 pip install -r requirements.txt # 配置API密钥 copy .env.example .env # 编辑 .env 文件,填入你的智谱AI密钥 ``` ### 2. 运行第一课 ```bash python lessons/lesson_01_hello_langchain.py ``` --- ## 📖 学习路径建议 ### 路径A:速成路线(2周) - **每天2-3课**,快速过一遍 - 重点完成每课的**核心任务** - 适合有编程基础、时间紧迫的学员 ### 路径B:标准路线(4周) - **每周3课**,周中2课+周末1课+复习 - 完成所有**练习任务** - 适合大多数学员 ### 路径C:深度路线(8周) - **每周1-2课**,深入理解原理 - 完成所有任务+**扩展挑战** - 阅读源码和相关论文 - 适合追求精通、准备面试的学员 --- ## 🎯 课程目标 完成本课程后,你将能够: ### 基础能力 - ✅ 熟练使用 LangChain 核心组件(Prompt、Model、Parser) - ✅ 使用 LCEL 构建复杂的处理链 - ✅ 掌握流式输出和参数调优 ### 进阶能力 - ✅ 开发自定义工具并集成到应用中 - ✅ 实现多种记忆机制(短期/长期/实体记忆) - ✅ 设计复杂的链路由和并行处理 ### 核心应用 - ✅ 构建完整的 RAG 系统(文档处理→检索→生成) - ✅ 实现检索优化(重排序、查询扩展、混合检索) - ✅ RAG系统评估和效果优化 ### 高级应用 - ✅ 开发智能 Agent(ReAct、Plan-and-Solve) - ✅ 使用 LangGraph 设计复杂工作流 - ✅ 构建多智能体协作系统 ### 工程能力 - ✅ 部署生产级 AI 应用 - ✅ 性能优化和监控 - ✅ 错误处理和容错设计 --- ## 📊 学习进度追踪 ``` 总体进度: [█████████░░░░░░░░░] 50% Agent阶段进行中 阶段1: LangChain基础 [✅✅✅✅] 100% ✅ 第1课: Hello LangChain + LCEL ✅ 第2课: 提示词工程 ✅ 第3课: 输出解析与结构化 ✅ 第4课: 模型与参数调优 阶段2: 核心组件 [✅✅✅] 100% ✅ 第5课: 工具与函数调用 ✅ 第6课: 记忆系统 ✅ 第7课: 链的组合与路由 阶段3: RAG系统 [✅✅⬜] 67% ✅ 第8课: RAG基础 ✅ 第9课: RAG进阶 ⬜ 第10课: 生产级RAG 阶段4: 智能体与工作流 [✅⬜⬜⬜] 25% ✅ 第11课: Agents入门 ⬜ 第12课: LangGraph工作流基础 ⬜ 第13课: 多智能体系统 ⬜ 第14课: 高级工作流模式 阶段5: 生产部署与优化 [⬜⬜] 0% ⬜ 第15课: 生产部署与监控 ⬜ 第16课: 性能优化与成本控制 阶段6: 实战项目 [⬜⬜⬜⬜] 0% ⬜ 第17课: 项目1-智能客服系统 ⬜ 第18课: 项目2-内容生成平台 ⬜ 第19课: 项目3-数据分析助手 ⬜ 第20课: 项目4-多智能体协作平台 ``` ### 当前状态 - **已完成**:第1-8课(阶段1、2完成,RAG基础完成) - **待学习**:第9-20课 ### 下一步建议 1. 学习第9课:RAG进阶 2. 完成第9课练习任务 3. 继续第10课:生产级RAG --- ## 🛠️ 开发环境 ### 推荐IDE - **VSCode** + Python插件 + Jupyter插件 - **PyCharm**(专业版有AI辅助功能) ### 必备工具 - **Git** - 版本控制 - **LangSmith** - 调试和监控(免费注册) - **Jupyter** - 交互式实验 ### 可选工具 - **Docker** - 环境隔离 - **Postman/Insomnia** - API测试 - **Obsidian/Notion** - 学习笔记 --- ## 📞 学习支持 遇到问题?按以下顺序解决: 1. **查看课程代码** - 每课都有完整代码示例 2. **阅读错误信息** - 仔细阅读报错,80%问题可自解 3. **回顾知识点** - 查看课程末尾的"知识点总结" 4. **搜索文档** - [LangChain官方文档](https://python.langchain.com) 5. **询问导师** - 向你的AI导师提问 --- ## 📝 学习建议 ### DO ✅ - **动手实践** - 每课至少完成核心任务 - **及时复习** - 每完成一个阶段,回顾总结 - **做笔记** - 记录重点、易错点、个人理解 - **多尝试** - 修改参数、换模型、扩展功能 ### DON'T ❌ - **不要只看不练** - 看懂了≠会了 - **不要跳过基础** - 基础不牢,地动山摇 - **不要追求完美** - 先跑通,再优化 - **不要闭门造车** - 多查文档、多交流 --- ## 🎁 完成奖励 ### 阶段奖励 - **阶段1完成**:掌握LangChain基础,能写简单AI应用 - **阶段2完成**:能开发带工具和记忆的复杂应用 - **阶段3完成**:能构建企业级RAG系统 - **阶段4完成**:能设计多智能体工作流,达到面试水平 ### 总体奖励 - **完成所有课程**:获得"LangChain开发者"认证能力 - **优秀项目**:可获得推荐信/内推机会 --- ## 🔗 相关资源 ### 官方资源 - [LangChain Python文档](https://python.langchain.com) - [LangGraph文档](https://langchain-ai.github.io/langgraph/) - [LangSmith平台](https://smith.langchain.com) ### 社区资源 - [LangChain GitHub](https://github.com/langchain-ai/langchain) - [LangChain Discord](https://discord.gg/langchain) ### 推荐书籍 - 《LangChain实战》 - 《大模型应用开发实战》 - 《构建高性能LLM应用》 --- **准备好了吗?让我们开始LangChain学习之旅!** 🚀 --- *课程版本: v2.0 (重构版)* *最后更新: 2026-03-29*