langchain的学习路径

LangChain 学习路径遵循**"基础→进阶→实战→高级"**的递进逻辑,核心是先掌握组件用法,再用 LCEL 组合,最后落地复杂应用与工程化。以下是分阶段完整路径(适配 LangChain 1.0+)。


一、前置准备(1 周)

1. 必备基础

  • Python:熟练基础语法、函数、类、异步(asyncio)、环境管理(venv/poetry)
  • 大模型基础:理解 LLM 原理、提示词工程、Embedding、向量数据库、RAG 概念
  • 工具链:Git、命令行、API 调用、Jupyter Notebook

2. 环境搭建

bash

运行

复制代码
# 安装核心包(LangChain 1.0+)
pip install langchain langchain-core langchain-openai langchain-community python-dotenv

# 常用扩展(按需安装)
pip install langchain-chroma langchain-pinecone langchain-anthropic langchain-google-genai
  • 配置 API Key(OpenAI / 智谱 / 通义千问等),写入 .env
  • 熟悉官方文档:LangChain Python Docs

二、基础阶段:核心组件与 LCEL(2--3 周)

目标:掌握 "积木" 用法,能用 LCEL 搭建简单链。

1. 模型层(Models)

  • 聊天模型:ChatOpenAI、ChatZhipuAI、ChatTongyi
  • 文本模型:OpenAI、LlamaCpp
  • 关键用法:invoke()、stream()、batch()、结构化输出(with_structured_output)

2. 提示词(Prompts)

  • ChatPromptTemplate、PromptTemplate
  • 消息格式:SystemMessage、HumanMessage、AIMessage
  • 少样本提示、FewShotPromptTemplate

3. LCEL(LangChain Expression Language)

  • 核心语法:| 管道、Runnable 接口、invoke/stream/batch
  • 组合模式:chain = prompt | model | parser
  • 调试:print(chain)、chain.get_graph().print_ascii()

4. 输出解析(Parsers)

  • StrOutputParser、JsonOutputParser、PydanticOutputParser
  • 处理 LLM 非结构化输出

5. 基础链(Chains)

  • LLMChain(Legacy)、RunnablePassthrough、RunnableParallel
  • 简单任务:问答、摘要、翻译、文本生成

6. 记忆(Memory)

  • ConversationBufferMemory、ConversationSummaryMemory、ConversationBufferWindowMemory
  • RunnableWithMessageHistory(1.0 推荐)
  • 实现多轮对话

阶段实战

  • 搭建带记忆的聊天机器人
  • 实现结构化信息提取(如从文本抽 JSON)
  • 用 LCEL 组合多步任务链

三、进阶阶段:RAG、Tools、Agent(3--4 周)

目标:实现 "检索 + 工具调用 + 自主决策" 的复杂应用。

1. RAG(检索增强生成)

  • 文档加载:PyPDFLoader、TextLoader、WebBaseLoader、RecursiveCharacterTextSplitter
  • 嵌入:OpenAIEmbeddings、ZhipuAIEmbeddings
  • 向量库:Chroma、Pinecone、FAISS、Milvus
  • 检索:RetrievalQA、create_retrieval_chain、MultiQueryRetriever
  • 优化:重排序(Reranker)、HyDE、上下文压缩

2. 工具(Tools)

  • 内置工具:WikipediaQueryRun、DuckDuckGoSearchRun、PythonREPLTool
  • 自定义工具:@tool 装饰器、StructuredTool
  • 工具描述:精准描述决定 Agent 调用成功率

3. Agent(智能体)

  • 核心架构:create_react_agent、create_openai_tools_agent(1.0 推荐)
  • 执行器:AgentExecutor
  • 类型:ZeroShot、Plan-and-Execute、Self-Ask with Search
  • 关键:工具选择、思维链(CoT)、错误处理

阶段实战

  • 私有文档问答系统(PDF / 知识库)
  • 联网搜索 + 回答的 Agent
  • 代码解释 + 执行 Agent(PythonREPL)
  • 多工具组合的任务自动化

四、高级阶段:工程化与复杂架构(2--3 周)

目标:生产级部署、监控、复杂工作流、私有化。

1. LangGraph(工作流编排)

  • 状态图(StateGraph)、节点(Node)、边(Edge)
  • 循环、条件分支、并行执行
  • 多 Agent 协作、复杂任务拆解
  • 可视化:LangGraph Studio

2. 部署与服务化

  • LangServe:快速暴露 API(FastAPI 底层)
  • LangChain CLI:项目脚手架
  • 容器化:Docker + Docker Compose
  • 前端:Gradio/Streamlit 快速 Demo

3. 监控与调试(LangSmith)

  • 追踪(Tracing)、日志、性能分析
  • 提示词版本管理、A/B 测试
  • 生产环境监控告警

4. 私有化与优化

  • 本地模型集成:Llama 3、Qwen、GLM(llama-cpp-python、vLLM)
  • 性能优化:批处理、缓存、向量库索引优化
  • 安全:提示词注入防护、数据脱敏

5. 自定义组件

  • 自定义 LLM、Embedding、Retriever、Parser、Callback
  • 扩展 LangChain 生态

阶段实战

  • 基于 LangGraph 的多步骤工作流(如论文写作、数据分析)
  • 部署私有 RAG 服务(API + 前端)
  • 接入本地大模型的私有化 Agent
  • 用 LangSmith 监控与优化生产应用

五、实战项目(贯穿全程)

入门项目

  • 智能聊天机器人(带记忆)
  • 单文档 PDF 问答
  • 简单文本摘要 / 翻译工具

进阶项目

  • 企业知识库 RAG 系统
  • 联网搜索 Agent
  • 代码助手(代码生成 + 执行 + 调试)
  • 会议纪要生成 + 待办提取

高级项目

  • 多 Agent 协作系统(如客服 + 知识库 + 工单)
  • 私有化部署的 AI 办公助手
  • 基于 LangGraph 的复杂决策系统

六、学习资源推荐

官方资源

优质教程

  • 视频:Sam Witteveen、James Briggs、Greg Kamradt 的 YouTube 系列
  • 书籍:《LangChain Handbook》(Pinecone 出品)
  • 社区:GitHub Discussions、Stack Overflow、掘金 / CSDN 优质博客

七、学习建议

  1. 先动手再深入:每学一个组件,立即写代码跑通最小 Demo
  2. 掌握 LCEL 优先:1.0 后 LCEL 是核心,Legacy API 可快速了解
  3. 组件组合思维:LangChain 是 "乐高",重点在组合而非死记 API
  4. 实战驱动:用项目串联知识点,避免碎片化学习
  5. 关注更新:LangChain 迭代快,定期看官方博客与 Release Notes
相关推荐
“AI国潮设计-小江”7 小时前
《Python+SDXL实战:用ControlNet精准控制“英歌舞翻糖吐司”构图,附批量生成脚本》
开发语言·人工智能·python·prompt·aigc
wenwen_chao8 小时前
Python学习与开发资源合集:实用技巧与工具推荐
python
for_ever_love__9 小时前
函数——参数、lambda、*args与作用域
python·函数·大模型开发·编程基础
东莞市云毅网络有限公司9 小时前
企业资料时效性判定:Last-Modified、正文日期与版本字段三路交叉
python·sqlite·自动化运维·geo·数据监测
Query*9 小时前
深入浅出LangGraph【一】_基础篇
python·ai·langchain
大连好光景9 小时前
大模型应用中,如何实现短期记忆与长期记忆
langchain·记忆
XiaoMaqqqq9 小时前
市面上正规的IP驱动产业新场景新工具哪家强
运维·python·网络协议·tcp/ip
ShyanZh10 小时前
【Python3基础】19-Socket 与 TCP、UDP 编程
python·网络协议·tcp/ip·udp
惊讶的猫10 小时前
工具选对之后还不够:商城 Agent 的参数与权限治理
开发语言·python
Bug收容所11 小时前
学习LangChain day1
学习·langchain·llm·agent