本节是 LangChain 1.0 实战系列的导学篇,重点不是堆 API,而是先建立一张完整地图:LangChain 1.0 为什么重构、核心抽象发生了什么变化,以及后续八节课如何串成一条可落地的 Agent 开发路径。
1. LangChain 1.0 解决什么问题
LangChain 的目标是给大模型应用提供统一的工程抽象,使模型、Prompt、工具、记忆、检索与工作流能够组合,而不是把所有逻辑写在一段 Prompt 或一个函数中。
在旧版本中,开发者常见的痛点包括:
- Chain、Agent、Executor 等概念较多,入口不统一;
- 不同模型厂商的消息、工具调用格式存在差异;
- Agent 的中间过程不容易观测、暂停或恢复;
- 日志、缓存、重试、限流等能力容易侵入业务代码;
- Notebook 原型容易完成,但迁移到生产环境成本较高。
LangChain 1.0 的思路是:上层提供简洁统一的 Agent API,底层交给 LangGraph 执行,以 Middleware 承载横切能力。
2. 1.0 的关键变化
| 维度 | 旧版常见方式 | LangChain 1.0 |
|---|---|---|
| 核心入口 | 多种 Agent/Executor 组合 | create_agent() |
| 执行模型 | Chain 串联 | LangGraph 状态图 |
| 状态传递 | 手工维护上下文 | 统一 Agent State |
| 扩展机制 | Callback、Hook 分散 | Middleware |
| 工具调用 | 不同 Agent 类型分别处理 | 统一 Tool Schema |
| 结构化结果 | 手工解析文本或 JSON | Structured Output |
| 记忆与恢复 | 自行拼接历史 | Checkpointer / Store |
需要特别理解的是:LangChain 1.0 并没有抛弃 LangGraph。create_agent()创建出的 Agent,本质上仍然是一个基于 LangGraph 的可执行图。
3. Agent 的基本运行链路
用户消息 ↓ 模型判断是否需要工具 ├─ 不需要 → 直接生成答案 └─ 需要工具 → 生成工具名和参数 ↓ 执行工具 ↓ ToolMessage 返回模型 ↓ 继续推理或结束因此,一个 Agent 不只是“调用一次大模型”,而是一个包含状态、分支和循环的执行系统。
4. 本系列学习路线
4.1 入门与基础
完成环境安装、模型初始化和第一个 Agent,掌握invoke()、stream()与消息结构。
4.2 Model 与 Prompt
学习模型参数、System/Human Message、Prompt 模板、批量与异步调用,以及 Pydantic 结构化输出。
4.3 Agent 与 Tool
使用@tool定义工具,理解 Tool Schema、工具选择和 ReAct 循环。
4.4 Agent 记忆
通过thread_id与 Checkpointer 保存短期记忆,并讨论长期记忆、上下文裁剪和持久化。
4.5 RAG
完成文档加载、切分、Embedding、向量检索和基于私有知识的问答链路。
4.6 Middleware
统一加入日志、重试、缓存、调用限额、工具筛选、自动摘要和人工审核。
4.7 LangGraph 进阶
通过 State、Node、Edge 和条件路由实现可循环、可暂停、可恢复的复杂工作流。
4.8 生产环境
把 Agent 封装为 API,补齐异步并发、流式输出、鉴权、健康检查和 LangSmith 追踪。
5. 开发环境建议
建议使用 Python 3.10 及以上版本,并在独立虚拟环境中安装依赖:
python-mvenv .venvsource.venv/bin/activate pipinstall-Ulangchain langgraph langchain-openai pipinstall-Ulangchain-community langchain-text-splitters通过 OpenAI 兼容接口接入第三方模型时,通常需要准备:
exportOPENAI_API_KEY="your-api-key"exportOPENAI_BASE_URL="https://your-provider.example.com/v1"密钥不要写入源码、Notebook 输出或 Git 仓库。生产环境应使用环境变量或 Secret Manager。
6. 学习时要抓住的主线
- 统一接口:更换模型供应商时,业务逻辑尽量不变;
- 状态驱动:消息、工具结果和业务字段都属于 State;
- 工具扩展:模型负责决策,工具负责执行确定性操作;
- 可控执行:通过 Graph、Middleware 和 Checkpointer 控制流程;
- 生产可用:从一开始考虑异常、成本、观测和数据安全。
7. 本节小结
LangChain 1.0 的核心变化可以浓缩为一句话:用统一的 Agent API 降低开发门槛,用 LangGraph 和 Middleware 提供生产级控制力。
视频:BV1xwVr6FEh4,P33,时长 08:42。