本索引对应 02.开发-16.Agent-langchain 目录下的 LangChain API 教程专篇。
与 LangChain-00.概述与安装 配合:概述讲包地图与最小示例;本表用于按主题跳转与规划写作。
边界:Agent 通用原理(ReAct、选型、案例导航)在 02.开发-16.Agent开发/;图编排(StateGraph、checkpoint)在 02.开发-16.Agent-Langgraph/。
段末注释:LCEL(LangChain Expression Language)= 用
|连接 Runnable 的声明式链式语法。
1. 如何使用本索引
| 符号 | 含义 |
|---|---|
| ✅ | 已发布,可点击专篇链接 |
| 📝 | 规划中文稿,尚未发布 |
| 🔗 外延 | 相关但不在本目录的文档 |
专篇文件名格式:LangChain-{模块}-{组件}.md(路径无空格)。
2. 推荐阅读顺序(总表)
| 序号 | 专篇 | 状态 | 核心问题 |
|---|---|---|---|
| 00 | 概述与安装 | ✅ | 装什么包?最小链怎么跑? |
| 00a | 函数应用速查 | ✅ | 我要做 X 该调哪个类/函数? |
| 01 | ChatModel | ✅ | 如何调用各家 Chat 模型、消息怎么进怎么出? |
| 02 | Embeddings | ✅ | 文本如何变成向量? |
| 03 | PromptTemplate | ✅ | 提示词如何模板化、变量如何注入? |
| 04 | Messages与对话结构 | ✅ | System/Human/AI/Tool 消息如何合法拼接? |
| 04a | Message类型 | ✅ | 全部 Message 子类的数据差与下游调用差? |
| 05 | LCEL与Runnable | ✅ | | 管道如何组合、stream/batch 怎么用? |
| 06 | Tool与bind_tools | ✅ | 如何让模型发起 tool_calls、如何执行回填? |
| 07 | Document与Retriever | ✅ | 文档对象与检索器 invoke 返回什么? |
| 08 | VectorStore集成 | ✅ | 向量库如何建索引、如何 similarity_search? |
| 09 | MessageHistory | ✅ | 多轮对话上下文如何挂到链上? |
| 10 | StructuredOutput | ✅ | 如何稳定得到 Pydantic / JSON? |
| 11 | OutputParser | ✅ | StrOutputParser、JsonOutputParser 何时用? |
| 12 | create_agent | ✅ | v1 预构建 Agent 如何快速搭 ReAct? |
| 13 | Callbacks与LangSmith | ✅ | 如何追踪每次 invoke 的中间步骤? |
| 14 | ainvoke与并发 | ✅ | FastAPI 下如何用 ainvoke / astream? |
3. 按模块分组
3.1 模型(Model)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-01-模型-ChatModel | ✅ | ChatOpenAI、invoke、temperature、bind_tools |
| LangChain-01-模型-Embeddings | ✅ | OpenAIEmbeddings、embed_documents |
| LangChain-01-模型-多模型Fallback | ✅ | with_fallbacks、路由 |
3.2 提示词(Prompt)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-02-提示词-PromptTemplate | ✅ | ChatPromptTemplate、from_messages |
| LangChain-02-提示词-FewShot | ✅ | 示例选择、动态 few-shot |
3.3 消息与工具(Messages & Tools)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-03-消息-Messages与对话结构 | ✅ | HumanMessage、ToolMessage、tool_call_id |
| LangChain-03-消息-Message类型 | ✅ | 全类型清单、Chunk、RemoveMessage、下游分流 |
| LangChain-03-工具-Tool与bind_tools | ✅ | @tool、StructuredTool、schema |
| LangChain-03-工具-ToolNode与执行 | ✅ | 工具执行、错误回填 |
3.4 链与组合(Chain / LCEL)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-04-链-LCEL与Runnable | ✅ | |、RunnableParallel、RunnableLambda |
| LangChain-04-链-RunnableConfig | ✅ | configurable、tags、metadata |
3.5 检索与 RAG 能力层(Retrieval)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-05-检索-Document与Retriever | ✅ | Document、BaseRetriever |
| LangChain-05-检索-VectorStore集成 | ✅ | Chroma、FAISS、pgvector 等 |
| LangChain-05-检索-TextSplitter | ✅ | langchain-text-splitters |
RAG 业务架构(切分策略、评测、Agentic RAG)见
02.开发-15.RAG/,本目录只讲 LangChain 提供的 Loader/Retriever API。
3.6 记忆(Memory)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-06-记忆-MessageHistory | ✅ | InMemoryChatMessageHistory |
| LangChain-06-记忆-RunnableWithMessageHistory(弃用) | ✅ | session_id;改用 LangGraph checkpointer |
3.7 输出解析(Output)
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-07-输出-StructuredOutput | ✅ | with_structured_output、Pydantic |
| LangChain-07-输出-OutputParser | ✅ | StrOutputParser、JsonOutputParser |
3.8 Agent 与高级主题
| 专篇 | 状态 | 关键词 |
|---|---|---|
| LangChain-08-Agent-create_agent | ✅ | v1 create_agent、工具循环 |
| LangChain-09-回调-Callbacks与LangSmith | ✅ | BaseCallbackHandler、trace |
| LangChain-10-异步-ainvoke与并发 | ✅ | ainvoke、astream |
| LangChain-11-迁移-langchain-classic | ✅ | LLMChain、AgentExecutor 旧代码 |
4. 与 Agent-10 系列的对照(学习映射)
| Agent-10 主题 | 建议 LangChain / LangGraph 专篇 |
|---|---|
| 01 LLM 与结构化输出 | ChatModel、StructuredOutput |
| 02 Tool Calling | Tool、Messages |
| 06 混合检索 RAG | Embeddings、Retriever |
| 09 多 Agent 编排(本仓库) | LangGraph 索引 |
此为学习顺序映射,非「读完 Agent-10 才能读本目录」。
5. 与 LangGraph 目录的衔接
| 你在 LangChain 学到 | 下一步(LangGraph 索引) |
|---|---|
| Tool + 多轮 messages | LangGraph checkpointer,或 create_agent(勿再用已弃用的 create_react_agent) |
| 线性 Chain 够用 | 暂不必上图 |
| 要 checkpoint / HITL | LangGraph-00.知识点索引 |
6. 专篇结构约定(读者可见)
每篇专篇默认包含:
- 场景切入与一句话定位表
- 实现逻辑(一次 invoke 数据流)
- 原理说明(底层执行链路为主;对象挂在步骤上展开,禁止只罗列类/方法功能;弃用 API 的
title带「(弃用)」) - 最小可运行示例 + 预期输出
- 重要配置参数表(4~10 项;每项含功能说明:参数做什么、哪一层传入)
- 易踩坑(≥2 条)
- 小结与官方文档链接
7. 维护说明(作者)
新增专篇后:在本表对应行将 📝 改为 ✅ 并补上 Markdown 链接。
命名与结构以目录内 00.范式-LangChain教程介绍.md 为准(读者正文不引用该文件)。