跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI

LangChain 框架入门:简介、核心模块与文档指南

综述由AI生成LangChain 是一个用于构建大语言模型(LLM)应用的开源框架,提供模块化组件以简化开发。 LangChain 的概念、定位及核心组件(如 Models、Prompts、Chains、Agents 等),并列举了知识库问答、智能对话机器人等应用场景。同时提供了学习路径及官方文档、API 参考、第三方集成包等资源链接,帮助开发者快速上手 LangChain 进行 AI 应用开发。

链路追踪发布于 2026/4/6更新于 2026/5/2339 浏览
LangChain 框架入门:简介、核心模块与文档指南

一、LangChain 简介

1、LangChain 概念

LangChain 是一款专为构建基于大语言模型(LLM)的应用程序而设计的开源框架。

LangChain 可以理解为'大模型应用开发工具箱',把和大模型交互、处理数据、连接外部工具的各种能力封装成模块化的组件,大模型应用开发者不用从零开始写所有代码,借助 LangChain 开发框架就能快速搭建复杂的 AI 应用。

LangChain 提供了预构建的代理架构和模型集成,可以快速启动,并无缝地将 LLM 融入智能体或大模型应用程序。借助 LangChain 可以使用不到 10 行代码,就可以连接并使用 OpenAI、Anthropic、Google 等大语言模型。

下图是 LangChain 开发 Agent 智能体的架构图,每次提问,都要将历史对话数据 + 本地 RAG 知识库的数据输出到提示词模板中,然后再将拼接好的提示词输入到 LLM 大语言模型中,得到最终的结果。

LangChain 就是将上述内容封装起来,开发者只需要提前配置好大模型和 RAG 知识库,即可使用很少的代码,实现上述功能。

图片

2、LangChain 定位

LangChain 框架的核心价值在于打破单个 LLM 的能力边界。原生 LLM(大语言模型)只能完成简单的问答、生成任务,而 LangChain 通过'模块化'和'可组合性',让开发者能够轻松整合 LLM 与外部数据、工具、知识库,构建出具备复杂逻辑、上下文感知、多步推理能力的 AI 应用,如:智能客服、代码生成助手、知识库问答系统、自主智能体等。

如果把大语言模型(LLM, Large Language Model)比作汽车的发动机,那么 LangChain 就是完整的汽车底盘 + 传动系统 + 控制系统。LangChain 让'发动机'能适配不同的'车身'(应用场景),实现更复杂的'行驶功能'(业务逻辑)。

3、LangChain 开发语言与应用场景

LangChain 支持 Python 和 JavaScript / TypeScript 双语言开发,生态丰富,兼容主流大语言模型 LLM(OpenAI、Anthropic、Google Gemini、开源的 Llama/GLM 等),是当前 LLM 应用开发的主流框架之一。

LangChain 有如下应用场景:

  • **知识库问答 (RAG):**企业内部文档问答、产品手册问答、法律条文检索,核心是"Indexes + RetrievalQAChain";
  • **智能对话机器人:**多轮上下文对话、个性化推荐,核心是"Memory + ConversationChain";
  • **自主智能体 (AI Agent):**自动写代码、数据分析、科研辅助(如调用 PubMed API 检索论文 + 总结),核心是"Agents + Tools";
  • **文本生成与摘要:**长文档总结、多文档对比总结、个性化文案生成,核心是"LLMChain + Prompt Templates";
  • **代码辅助工具:**代码解释、bug 修复、自动化测试,核心是"Agents + PythonREPL Tool"。

4、LangChain 核心组件

**LangChain 核心组件:**LangChain 框架有五大核心组件分别是 LangChain(基础框架)、LangGraph(多智能体编排)、Deep Agents(智能体外骨骼)、LangSmith(监控平台)。

  • **LangChain(基础框架):**智能体系统的'操作系统内核',提供统一模型接口与模块化开发基础。
    • ***模型抽象:***统一接口使用适配集成包连接 OpenAI、Anthropic 等 100+ 模型供应商,屏蔽差异;
    • ***提示词工程:***模板化管理与优化,提升输出质量;
    • ***工具集成:***支持 API、数据库、向量存储等数百种外部服务;
    • ***记忆管理:***提供多种记忆策略,解决 LLM 无状态性;
    • 文档地址:https://docs.langchain.com/oss/python/langchain/overview
  • **LangGraph(多智能体编排):**运行时编排引擎,实现复杂状态管理与任务流控制。
    • ***图结构建模:***用有向图表示智能体系统,支持条件分支、循环和状态持久化;
    • ***多智能体协作:***让多个 Agent 智能体协同完成复杂任务,如:研究 -> 分析 -> 报告流程;
    • ***可视化调试:***直观呈现执行路径,便于问题定位;
    • 文档地址:https://docs.langchain.com/oss/python/langgraph/overview
  • **Deep Agents(智能体外骨骼):**该组件专注长周期复杂任务处理。
    • ***任务规划:***分解长任务为子目标,制定执行策略;
    • ***虚拟文件系统:***高效管理大输出,减少 token 消耗;
    • ***子智能体委托:***动态创建子 Agent 处理专项任务,提升效率;
    • 文档地址:https://docs.langchain.com/oss/python/deepagents/overview
  • **LangServe(部署服务):**将智能体转化为生产级 REST/gRPC API 的部署平台,支持流式输出、批处理和异步调用,兼容 FastAPI 生态便于扩展,一键部署,自动生成文档(Swagger/OpenAPI);
    • 文档地址:https://github.com/langchain-ai/langserve
  • **LangSmith(监控平台):**统一的可观测性与质量评估中心。
    • ***全链路追踪:***可视化 LLM 调用、工具使用和状态变化;
    • ***评估与测试:***提供自动和人工评测机制;
    • ***性能监控:***分析响应时间、token 使用和错误率;
    • 文档参考:https://docs.langchain.com/langsmith/home
    • API 参考:https://docs.langchain.com/langsmith/reference

5、LangChain 学习路径

LangChain 学习路径:

  • **入门阶段:**先掌握 Models、Prompts、LLMChain 三个核心模块,实现简单的文本生成、问答;
  • **进阶阶段:**学习 Indexes、Memory、RetrievalQAChain,搭建基础的 RAG 知识库问答系统;
  • **高阶阶段:**学习 Agents、Tools,构建具备自主决策能力的 AI Agent;
  • **工程化阶段:**结合 LangSmith 调试、LangServe 部署,实现生产级应用。

二、LangChain 模块

LangChain 框架的架构遵循'模块化设计',每个模块解决特定场景的问题,且模块间可灵活组合。

LangChain 框架的核心价值是模块化组合"LLM 大语言模型与外部资源",解决原生 LLM 大语言模型'无记忆、无工具、无外部数据'的问题。

在下面介绍的核心模块中,Models 是基础,Chains 是核心组合方式,Agents 是高阶能力,Indexes 是 RAG 的关键。

1、模型输入 / 输出 (Models)

**模型输入 / 输出 (Models):**是 LangChain 的核心层,负责与各类 LLM / 嵌入模型(Embedding Model)交互,不包括如下子模块:

  • **LLMs:**对接大语言模型的基础接口,统一不同厂商(OpenAI、Anthropic、百度文心等)的 API 调用方式;例如,用 ChatOpenAI 调用 GPT-4,用 ChatAnthropic 调用 Claude,开发者无需修改核心逻辑,只需要修改配置即可切换模型;
  • **Chat Models:**针对对话式 LLM(如 GPT-3.5/4 Turbo、Claude Chat)的专用接口,支持结构化的对话消息(用户消息、助手消息、系统消息);
  • **Embeddings:**对接文本嵌入模型(如 OpenAI Embedding、BERT、智谱 AI 嵌入模型),将文本转换为向量表示,是知识库问答、文本检索的基础;
  • 参考文档:https://docs.langchain.com/oss/python/langchain/models

下面是最 LangChain 最基本的封装 OpenAI 大模型的代码示例:

from langchain_openai import ChatOpenAI, OpenAIEmbeddings 
from langchain_core.messages import HumanMessage, SystemMessage 

# 1. 初始化对话模型
chat_model = ChatOpenAI(
    model="gpt-3.5-turbo", 
    api_key="你的 OpenAI API 密钥", 
    temperature=0.7 # 生成随机性 , 0-1 之间
)

# 2. 构造对话消息并调用模型
messages = [
    SystemMessage(content="你是一个专业的 Python 编程助手 , 回答简洁易懂 ; "), 
    HumanMessage(content="请解释什么是装饰器?")
]
response = chat_model.invoke(messages)
print(response.content)

# 3. 初始化嵌入模型并生成文本向量
embeddings = OpenAIEmbeddings(api_key="你的 OpenAI API 密钥")
text = "LangChain 是 LLM 应用开发框架"
vector = embeddings.embed_query(text)
print(f"向量长度 : {len(vector)}")
# OpenAI Embedding 输出 1536 维向量

2、提示词模板 (Prompts)

**提示词模板 (Prompts):**提示词是 LLM 应用的核心,但手写提示词易出错、难复用;LangChain 的 Prompts 模块提供如下功能:

  • **Prompt Templates:**提示词模板,支持参数化填充;例如,定义一个'代码解释模板',只需替换'代码片段'参数即可复用;
    • 参考文档:https://docs.langchain.com/oss/python/langchain/messages
  • **Chat Prompt Templates:**针对对话模型的提示词模板,适配多轮对话场景;
  • **Output Parsers:**将 LLM 的文本输出解析为结构化数据(如 JSON、字典、类对象),解决'LLM 输出不可控'的问题;
    • 结构化输出 参考文档:https://docs.langchain.com/oss/python/langchain/structured-output

提示工程 Prompt engineering 参考文档:https://docs.langchain.com/langsmith/prompt-engineering

3、索引 (Indexes)

**索引 (Indexes):**当 LLM 需要处理外部文档(如 PDF、Word、知识库)时,Indexes 模块负责将文档转换为'可检索'的格式,核心流程是:

  • **加载文档 (Load):**通过 DocumentLoaders 加载 PDF、TXT、网页、Excel 等格式的文件;
  • **分割文本 (Split):**将长文档分割为短文本块(避免超出 LLM 上下文窗口);
  • **嵌入文本 (Embed):**将文本块转换为向量;
  • **存储向量 (Store):**将文本向量存入向量数据库(如 Chroma、Pinecone、Milvus);
  • **检索文本 (Retrieve):**根据用户问题检索相关文本块;

4、链 (Chains)

Chains 是 LangChain 的'灵魂',该模块允许将多个组件(LLM、Prompt、检索器等)组合成一个可执行的流程,解决'单步操作无法完成复杂任务'的问题。

常见的 Chain 类型:

  • **LLMChain:**最基础的链,将 Prompt Template + LLM 组合,实现'输入参数 -> 生成提示词 -> 调用 LLM -> 输出结果';
  • **RetrievalQAChain:**检索增强生成(RAG)的核心链,组合'检索器 + LLM',实现'用户提问 -> 检索相关文档 -> 将文档和问题传入 LLM -> 生成基于文档的回答';
  • **SequentialChain:**串行链,将多个 Chain 按顺序执行,前一个 Chain 的输出作为后一个的输入;

5、记忆 (Memory)

**记忆 (Memory):**原生 LLM 没有'记忆',无法记住多轮对话的上下文;Memory 模块解决这个问题,核心模块类型如下:

  • **ConversationBufferMemory:**简单缓存所有对话历史;
  • **ConversationSummaryMemory:**对对话历史进行总结,避免上下文过长;
  • **ConversationTokenBufferMemory:**按 Token 数限制缓存对话历史,适配 LLM 的上下文窗口;

参考文档:https://docs.langchain.com/oss/python/concepts/memory

6、代理 (Agents)

**代理 (Agents):**Agents 是 LangChain 的高阶能力,让 LLM 大语言模型能'自主决策',根据用户问题,选择调用哪些工具(如:计算器、搜索引擎、代码解释器),完成多步推理任务。

  • **Agent:**决策核心,负责判断'该调用哪个工具'、'是否需要继续调用工具';
  • **Tool:**工具接口,LangChain 内置多种工具(Calculator、SerpAPI(搜索引擎)、PythonREPL(代码执行)),也支持自定义工具;
  • **Executor:**执行器,负责执行 Agent 的决策,调用工具并返回结果;

参考文档:https://docs.langchain.com/oss/python/langchain/agents

7、工具 (Tools)

**工具 (Tools):**该模块是 Agents 的基础,提供与外部系统交互的接口;LangChain 内置工具包括:

  • **计算类:**Calculator、PythonREPL;
  • **检索类:**SerpAPI(谷歌搜索)、DuckDuckGoSearch;
  • **文件类:**FileBrowser、CSVLoader;
  • **API 类:**RequestsTool(调用 HTTP 接口);

开发者也可通过 Tool 类自定义工具,只需实现 func(工具逻辑)和 description(工具描述,供 Agent 判断是否调用);

参考文档:https://docs.langchain.com/oss/python/langchain/agents

8、文档加载器 (Document Loaders)

负责加载外部文档,支持几乎所有主流格式:

  • **文本类:**TXT、Markdown、JSON;
  • **办公类:**PDF、Word、Excel、PPT;
  • **网页类:**URL、HTML、Sitemap;
  • **数据库类:**MySQL、PostgreSQL、MongoDB;
  • **其他:**Notion、Confluence、GitHub;

文档加载 参考文档:https://docs.langchain.com/oss/python/langchain/knowledge-base#1-documents-and-document-loaders

适配 第三方 文档加载 模型 集成包 参考文档:https://docs.langchain.com/oss/javascript/integrations/providers/all_providers#file-loaders

9、评估 (Evaluation)

LLM 应用的效果难以量化,Evaluation 模块提供评估工具,支持:

  • **手动评估:**人工打分;
  • **自动评估:**用 LLM 自身评估回答质量;
  • **基准测试:**对比不同模型 / 链的效果;

langsmith 评估 参考文档:https://docs.langchain.com/langsmith/evaluation-quickstart#evaluation-quickstart

langsmith 部署 参考文档:https://docs.langchain.com/langsmith/deployments

三、LangChain 文档

1、LangChain 功能模块文档

LangChain 功能模块文档:https://docs.langchain.com/oss/python/langchain/overview,该文档是 LangChain 框架 Python 语言的总览文档,左侧章节标题可以跳转到安装文档、快速开始等文档。

图片

2、LangChain API 参考文档

**LangChain API 参考文档:**这是 LangChain 开发具体对应的 Python / JavaScript / TypeScript 语言对应的 API 文档,主要介绍 LangChain 和 LangGraph 构建大模型应用程序用到的核心接口,每个部分涵盖 LangChain 生态系统中的不同方面,使用顶部或左侧的导航栏查看 LangChain 特定模块的文档。

  • Python 语言 API 文档:https://reference.langchain.com/python/langchain/

JavaScript / TypeScript 语言 API 文档:https://reference.langchain.com/javascript/index.html

图片

下面是 LangChain 框架的 Agents 开发文档:https://reference.langchain.com/python/langchain/agents/

图片

3、LangChain 适配第三方模型集成包

LangChain 框架提供了丰富的适配第三方模型的集成包,涉及到大语言模型(LLMs)、聊天模型、检索器、向量数据库、文档加载器等多个类型的 AI 模型。

集成包指的是 LangChain Python 生态中专门对接不同 AI 模型服务商的程序模块,其核心作用是让开发者不用自己写复杂的 API 调用、参数适配代码,只需几行简单代码就能在 LangChain 框架中调用对应服务商的大语言模型(LLMs)、聊天模型(Chat Models)等能力。

LangChain 框架 集成包 文档:https://docs.langchain.com/oss/python/integrations/providers/overview

图片

下面给出一个集成包示例,langchain-openai 集成包是 LangChain 官方提供的、专门对接适配 OpenAI 生态(包括 OpenAI 官方、Azure OpenAI)的集成包;

  • 快速调用 OpenAI 的 GPT-3.5/4/4o 等聊天模型、Embedding 嵌入模型;
  • 封装了 OpenAI API 的参数(如温度、最大令牌数、上下文窗口),适配 LangChain 的统一接口;
  • 支持流式输出、函数调用(Function Calling)等 OpenAI 核心特性,无需手动处理 API 交互细节;

langchain-openai 集成包 文档地址:https://reference.langchain.com/python/integrations/langchain_openai/

图片

langchain-google-vertexai 集成包是 LangChain 官方适配对接 Google Cloud Vertex AI 平台的集成包(Vertex AI 是 Google 云的一站式 AI 开发平台)。文档地址:https://reference.langchain.com/python/integrations/langchain_google_vertexai/

langchain-ollama 集成包是 LangChain 官方适配对接 Ollama 工具的集成包(Ollama 是一款轻量级本地大模型运行工具,可一键部署 Llama 3、Phi 3、Mistral 等开源模型)。文档地址:https://reference.langchain.com/python/integrations/langchain_ollama/

4、LangChain 教程指南

LangChain 教程指南文档:https://docs.langchain.com/oss/python/learn,在该文档中提供了一系列教程、概念概述及补充资源,借助 LangChain 和 LangGraph 构建功能强大的大模型应用程序。

图片

目录

  1. 一、LangChain 简介
  2. 1、LangChain 概念
  3. 2、LangChain 定位
  4. 3、LangChain 开发语言与应用场景
  5. 4、LangChain 核心组件
  6. 5、LangChain 学习路径
  7. 二、LangChain 模块
  8. 1、模型输入 / 输出 (Models)
  9. 1. 初始化对话模型
  10. 2. 构造对话消息并调用模型
  11. 3. 初始化嵌入模型并生成文本向量
  12. OpenAI Embedding 输出 1536 维向量
  13. 2、提示词模板 (Prompts)
  14. 3、索引 (Indexes)
  15. 4、链 (Chains)
  16. 5、记忆 (Memory)
  17. 6、代理 (Agents)
  18. 7、工具 (Tools)
  19. 8、文档加载器 (Document Loaders)
  20. 9、评估 (Evaluation)
  21. 三、LangChain 文档
  22. 1、LangChain 功能模块文档
  23. 2、LangChain API 参考文档
  24. 3、LangChain 适配第三方模型集成包
  25. 4、LangChain 教程指南
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • SpringBoot 低代码 JSON 表单引擎与审批流实现
  • Claude Code 在 Linux(Ubuntu) 上的完整安装部署指南
  • Python 图形界面与游戏开发实战:计算器、记事本及经典小游戏
  • 机器人产业十年演进:从专用机械到通用具身智能
  • WebUI 测试与 Playwright 自动化适配方案
  • Python sqlite3 模块:轻量级数据库使用指南
  • Ubuntu 22.04 + RTX 50 显卡搭建 BeyondMimic 仿真训练环境
  • MySQL 迁移至金仓:权限隔离与数据安全增强
  • 基于深度学习的宠物识别系统
  • 前端实战:如何让用户回到上次阅读的位置?
  • 7 款 AI 写作工具深度测评与小说创作 SOP 指南
  • Java 集成高德开放平台 Web API 实践:POI 搜索 2.0 示例
  • WebPShop 插件:Photoshop 实现 WebP 格式全功能支持
  • MiGPT GUI 部署小爱音箱接入 AI 及内网穿透配置
  • Intel GPU 加速 llama.cpp:SYCL 后端配置与性能调优指南
  • VSCode 中关闭 GitHub Copilot 自动补全的方法
  • 前端高频面试题:TypeScript 篇
  • Go语言中的未来:从泛型到WebAssembly
  • CentOS 更换阿里云 YUM 源教程
  • Java 多线程:线程池原理与 ThreadPoolExecutor 详解

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online