前言

本书章节导航

  • 前言 (当前)
  • 第1章 为什么需要理解 LangChain
  • 第2章 架构总览
  • 第3章 Runnable 与 LCEL 表达式语言
  • 第4章 消息系统与多模态
  • 第5章 语言模型抽象层
  • 第6章 提示词模板引擎
  • 第7章 输出解析与结构化输出
  • 第8章 工具系统
  • 第9章 文档加载与文本分割
  • 第10章 向量存储与检索器
  • 第11章 Chain 组合模式
  • 第12章 回调与可观测性
  • 第13章 记忆与会话管理
  • 第14章 Agent 架构与执行循环
  • 第15章 工具调用与 Agent 模式
  • 第16章 序列化与配置系统
  • 第17章 Partner 集成架构
  • 第18章 设计模式与架构决策

写作动机

2024 年,LangChain 完成了从 0.x 到 1.0 的蜕变。这不仅仅是一个版本号的变化——它意味着 API 的稳定化、架构的成熟化,以及从"快速实验框架"到"生产级基础设施"的定位转变。

LangChain 是 AI 应用开发领域使用最广泛的框架。但大多数开发者的使用方式是:复制官方示例,调整参数,遇到问题搜 Stack Overflow。他们知道 ChatOpenAI | prompt | parser 可以组成一个管线,但不知道 | 操作符背后发生了什么;知道 AgentExecutor 可以让模型调用工具,但不知道 Agent 循环的停止条件是如何判定的。

这本书要回答的是:LangChain 内部到底是怎么运作的?

当你写下 chain = prompt | llm | parser 时,LCEL 如何将三个组件编织成一个支持流式、异步、批处理的统一管线?当 Agent 决定调用一个工具时,从模型输出到工具执行再到结果回传,经历了哪些步骤?当你配置了 ConversationBufferMemory 时,历史消息如何在每一轮对话中被注入?

这本书讲什么

本书从 LangChain 的两个核心包出发:

  • langchain-core(轻量、无第三方依赖)——定义所有基础抽象:Runnable、消息、提示词、工具、回调
  • langchain(构建在 core 之上)——实现高级功能:Chain、Agent、Memory、Retriever

每一章聚焦一个核心模块,从设计意图出发,深入源码实现,大量使用 Mermaid 图表可视化架构关系和数据流,最后总结可迁移的设计模式。

源码版本

本书基于 LangChain 1.0.3langchain-core 1.2.26 源码分析。建议将源码 clone 到本地边读边对照:

git clone 

核心代码在 libs/core/langchain_core/libs/langchain/langchain/ 目录下。

致谢

感谢 Harrison Chase 和 LangChain 团队创建了这个定义了 AI 应用开发范式的框架,并保持完全开源。

本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:alixiixcom@163.com