LangChain学习
·
1. 底层基础:LangChain Core
这是整个框架的灵魂与基石,定义了所有组件的“标准接口”(如模型、提示词、输出解析器)。
- 核心引擎: 包含最关键的 LCEL (LangChain Expression Language)。它基于
Runnable协议,让你像搭水管一样,通过|管道符将不同组件无缝拼接。 - 生产级特性: 基于 LCEL 组合的链,原生自动支持
.stream()(流式输出)、.batch()(并发批处理)和.astream_log()(中间步骤日志),无需额外编写代码。 - 特点: 极其轻量级,本身不包含任何第三方的具体实现。
2. 第三方集成层:Community & Partner Packages
大模型应用需要和各种外部世界打交道,这一层专门负责“连接”。
- Partner Packages (官方合作伙伴包): 针对主流大厂(如
langchain-openai,langchain-google-genai,langchain-anthropic)提供的独立、深度的集成包。 - LangChain Community (社区包): 包含了社区贡献的成百上千种外部工具集成(如 MySQL、Notion、天气预报 API 等)。
- MCP 协议支持: 2026 年新增了对 Model Context Protocol 的支持,标准化了工具与数据的接入方式,实现跨框架的工具互操作性。
3. 应用拼装层:LangChain
日常写应用代码最常导入的地方。
- 作用: 利用 Core 层的标准和集成层的工具,提供开箱即用的高级功能。
- 内容: 包含复杂的检索策略 (Retrievers,用于 RAG 应用)、基础智能体逻辑,以及中间件(Middleware)机制(允许在代理执行的生命周期中插入自定义的日志、限流或护栏逻辑)。
4. 核心运行时与外围护城河:LangChain 家族三剑客
除了写代码的库,LangChain 官方还提供了三个强大的外围工具,覆盖了应用的开发、部署和监控全生命周期:
- LangGraph (高级编排与运行时):
- 定位升级: 它已不再是单纯的外围工具,而是深度整合为 LangChain 的底层编排调度层。
- 核心能力: 传统的单向 Agent 已被淘汰。LangGraph 允许你将应用构建为“有向状态图”,支持多轮循环思考、状态持久化(断线续跑)、多 Agent 协作(如写代码与测试 Agent 配合),以及原生的人工介入(Human-in-the-loop)审核节点。
- LangServe (部署上线):
- 用最简单的代码将 LangChain 应用转换为标准的 RESTful API。自带可视化的测试界面,并能自动处理流式输出(打字机效果)。
- LangSmith (调试与监控):
- 大模型应用必备的 LLMOps 平台。在后台记录每一次模型调用的完整 Trace(追踪)、耗时、Token 花费以及 Prompt 替换过程。最新的 LangSmith Engine 甚至能自动从生产环境的 Trace 中发现错误模式,起草修复方案,实现开发循环的自主闭环。
LangChain 的核心模块
一、 六大核心模块详解
- Model I/O (模型输入输出)
- Prompt Templates: 提示词模板,解决如何标准化地将用户输入转化为模型指令。
- Language Models: 封装了不同厂家的接口(如 OpenAI, Claude, Llama 3),让你用统一的代码调用不同模型。
- Output Parsers: 输出解析器,非常关键!它能将模型返回的字符串解析成 JSON、Pydantic 对象或列表,方便后端程序处理。
- Retrieval (检索/RAG)
- 目前最实用的模块。包含文档加载(Loader)、文本分割(Splitter)、向量化(Embeddings)和向量数据库(Vector Stores)。
- 生产建议: 现代 RAG 通常采用“向量检索 + BM25 + Cross-Encoder Rerank(重排序)”的混合检索架构,以确保极高的准确率。
- Composition (LCEL 表达式语言)
- LangChain 的“胶水”。通过
|符号,你可以像写 Unix 管道命令一样,把 Prompt、Model 和 Parser 串联起来。 - 重点: 现在的 LangChain 开发基本都围绕 LCEL 展开,它是链式调用的核心。
- LangChain 的“胶水”。通过
- Memory (记忆与状态管理)
- LLM 本身是无状态的。该模块负责存储和检索对话历史,让模型在多轮对话中“记得”之前的上下文。
- 最新演进: 现在的 Memory 已演变为综合性的数据管理概念,不仅包含会话期间的短期状态(State),还引入了跨会话的持久化长期存储(Store)。
- Agents (智能体与 Deep Agents)
- 让模型自己决定下一步该做什么。比如,模型发现需要查实时天气,它会自动调用你给它的“天气工具”。
- 最新演进 (Deep Agents): 针对复杂、长周期的自主任务,LangChain 推出了 Deep Agents 框架。它内置了规划工具(To-do List)、虚拟文件系统(防止上下文溢出)和子 Agent 派遣能力,就像给 AI 配备了一个项目经理。
- Callbacks (回调系统)
- 用于日志记录、监控和调试。你可以追踪每一个 Token 的生成过程和耗时,是接入 LangSmith 等可观测性工具的底层基础。
Model I/O (模型输入输出)
Prompt功能
Output Parser
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)