LangChain 1.x 现代版学习笔记:
前言:
最近在学习
LangChain 时发现一个巨大的痛点:网上绝大多数教程,比如B站的尚硅谷和黑马,都停留在 0.0.x 时代(还在教 LLMChain、predict() 等已被废弃的语法)。而现代的 LangChain(1.x 版本以上)已经全面拥抱了全新的架构和 LCEL(LangChain 表达式语言)。 为了避免踩坑和各种莫名其妙的 ImportError,我整理了这份基于最新官方文档的现代版 LangChain 学习路线与核心笔记。
一、 核心基础:新版包结构“大拆分”
旧版 LangChain 是一个臃肿的“全家桶”,一更新容易导致全局报错。新版将其拆分成了“乐高模块”,按需安装,代码更稳定:
langchain-core(核心主板): 定义所有最基础的协议(如Runnable、Message、PromptTemplate)。非常稳定,极少发生破坏性更新。langchain-{provider}(官方独立包): 各大厂商独立维护的模型包。例如要调用 OpenAI,需单独安装langchain-openai。langchain-community(社区集市): 包含开源社区贡献的第三方工具和冷门数据库集成。langchain(高级组装包): 包含特定的高级逻辑和 Agent 组装接口。
避坑指南: 以后导包时,先想想这个功能属于底层核心、第三方厂商,还是社区工具!

二、 现代 LangChain 学习七步法大纲
- 环境与基础架构搭建
- 理解新版包分离逻辑。
- 配置
.env环境变量,安全管理 API 密钥。
- LCEL 表达式语言(绝对核心)
- 彻底放弃传统的 Chain 类,拥抱 Runnable 协议。
- 熟练使用管道符
|进行声明式编程编排组件。
- 提示词与输出解析 (Prompts & Parsers)
- 掌握
ChatPromptTemplate进行多角色(System/Human/AI)消息编排。 - 使用
PydanticOutputParser强制模型输出结构化 JSON 数据。
- 掌握
- 新版 RAG(检索增强生成)
- 学习文档加载与切分(Splitters)。
- 向量化(Embeddings)与轻量级向量数据库(如 Chroma/FAISS)。
- 使用新版
create_retrieval_chain替代被废弃的检索链。
- 记忆机制 (Memory)
- 淘汰
ConversationBufferMemory。 - 使用
RunnableWithMessageHistory动态拦截 LCEL 链并注入历史聊天记录。
- 淘汰
- Agent 智能体与 LangGraph
- 使用
@tool装饰器定义 Python 工具函数。 - 构建 OpenAI Tools Agent。
- 进阶:使用状态图思想构建 LangGraph 复杂智能体。
- 使用
- 生产级部署与监控
- 使用 LangServe 一键将 LCEL 链转化为 FastAPI 接口。
- 集成 LangSmith 监控 Token 消耗与调试代码。