首页/新闻资讯/正文详情

【LLM】第五章:LangChain框架介绍+开发前的准备工作

发布时间:2026/11/4 11:49:36 来源:云帆数科 栏目:资讯中心
【LLM】第五章:LangChain框架介绍+开发前的准备工作
【LLM】第五章LangChain框架介绍开发前的准备工作本系列开始循序渐进讲LangChain框架。LangChain是当前构建生产级AI智能体系统的首选学习LangChain框架的意义不仅仅是开发智能体透过框架我们可以看到设计框架的这群牛人对未来agent的能力的思考。一、LangChain简介1、LangChain框架进化史1体系化阶段一是引入Tool、Agent、Retrieval等概念形成大模型工具调用记忆的核心架构支持构建完成更加复杂任务的自动化智能体。二是推出LangChain Hub与LangSmith初步构建了从开发、调试到部署的生态闭环。22024-2025上半年LangGraph与LangServe的发布标志着LangChain框架演化成了智能平台。LangGraph为工作流提供有向图。我们就可以构建更加复杂化的智能体。LangServe解决了服务化部署比如用Java程序调用LangChain编写的智能体应用。32025年下半年至今推出Deep Agent官方定位为Agent Harness(智能体执行框架)在LangGraph和LangChain上运行让开发者可构建基于多智能体的复杂化智能体系统。42025年10月20日LangChain团队正式发布了第一个正式大版本LangChain v1.0.0与LangGraph v1.0.0这是AI智能体(Agent)开发领域的里程碑事件标志着框架的成熟和标准化为企业级AI应用提供了稳定基础。2、LangChain的定位LangChain作为大模型与应用层的中间层可统一调用各类大模型、管理提示词与上下文还能集成外部工具和数据源快速搭建具备推理、行动能力的智能体。1如上左图打通大模型与外部资源。用统一接口对接数据库、搜索引擎、API、文件系统等。2如上右图LangChain组织了很多模块比如大模型的调用、组织提示词、管理上下文、集成外部工具与数据源等功能目的都是让我们开发智能体时一是降低难度二是让智能体具备比如抽象工具调用、记忆等能力更加的智能。并且可以依托LangGraph生态从单智能体拓展至多智能体协作可构建工业级智能体。3、小结1智能体 大模型 工具调用 记忆2LangChain框架并非一个库而是一个家族是有LangChain、LangGraph、LangSmith、Deep Agent等多个框架构成的一族。或者说它已经是一个构建智能体的生态。3学习材料官网LangChain: the open agent platform to own your intelligenceGithub地址https://github.com/langchain-ai中文文档地址https://docs.langchain.org.cn/oss/python/langchain/overview英文文档地址LangChain overview - Docs by LangChainAPI文档查询地址LangChain - Python API Reference | LangChain Reference二、LangChain家族简介1、地基langchain-core定义全部底层抽象、接口、编排语法(把各种组件比如prompt、模型、解析器、检索器等工具拼接成AI工作流搭建单流水线)等。包含BaseMessage、Runnable、Prompt模块、工具基类、输出解析器等。所有其他包都依赖它。2、主包LangChainLangChain是基于core构建的基础通用业务逻辑层。包含Chain、creat_agent()、RAG检索策略、记忆模块。是智能体开发的基础逻辑层为开发者提供模型调用、工具与中间件集成、智能体构建等一整套基础组件。是提供怎么组装的逻辑如果你需要构建简单的智能体应用无需多步骤、多任务的需求时那就选择LangChain。1屏蔽了不同模型服务提供商(如OpenAI、Anthropic、Ollama等)的接口差异提供统一的调用方式。2使用Message、Tool、Agent、Middleware等组件实现灵活的组合与扩展。3预置了丰富的数据源、API、中间件等AI生态。我们pip install langchain会自动也安装了langchain-core了。3、第三方集成langchain-community集成一些小众第三方包比如文档加载器、向量库、冷门LLM、工具等这个包我们按需安装。4、厂商独立集成包langchain-openai是官方重点维护的独立集成包专门对接OpenAI、anthropic等大厂。提供比如langchain-openai, langchain-anthropic langchain-google-genai等接口。安装pip install langchain-openai, 依赖langchain-core。5、旧版兼容包langchai-classic冗余代码或不推荐使用的经典API移到此包比如0.x中常用而1.x移除的API都在这里。仅用于维护老项目迁移新项目禁止使用。6、图编排引擎LangGraphLangGraph是langchain生态中的重要独立组件是Agent核心。普通LangChain链式只能线性执行而Agent需要循环、条件跳转、保存会话状态。LangGraph将智能体抽象成一张有向图通过图式结构搭建可以循环跳转流程图进行状态管理、断点持久化、人类介入、子Agent、长任务执行等功能。所以LangChain的create_agent底层就是基于LangGraph实现的。也所以我们pip install langchain会自动也安装了langgraph。当智能体的任务从单一指令执行扩展到多步骤、有状态的复杂工作流时LangGraph可以让智能体的工作流节点可交互、可控制、可观测。节点(Node)代表独立功能单元或决策点。边(Edge)定义了节点之间的流转条件与路径。状态(State)作为一个共享上下文在节点间传递并持久化存储任务信息。小结LangChain 能力抽象层(LLM/Tool/Message标准化)负责有什么能力。LangGraph 执行与控制层(状态机/工作流/多Agent系统)负责怎么跑。7、可视化的调试与监控平台LangSmithAI的调试工具可以追踪每一步调用、记录prompt、监控工具调用用于跟踪、记录和分析智能体在运行过程中的完整调用链路让开发过程中更容易调试和优化。LangSmith官网LangSmith: Agent LLM Observability Platform8、现成的Agent套件Deep AgentDeep Agent定位为Agent Harness(智能体执行框架)是构建在LangChain和LangGraph之上是解决多智能体协作问题、更加复杂问题的协同。增加了规划能力、文件系统、子Agent等高级功能让开发者无需从零构建复杂的控制逻辑即可创建具备深度规划、长期记忆与多专家协作能力的智能体。显式规划自主生成、执行并动态调整多步任务计划。虚拟文件系统为智能体提供结构化的中间结果与知识存储。子智能体支持任务在多个智能体之间的分解与协作。长期记忆通过与LangGraph状态存储的结合实现跨对话的经验积累。可扩展中间件允许嵌入安全审计、性能监控或自定义业务逻辑。9、小结LangChain 实现单智能体做单任务。LangGraph 实现单智能体做多任务。Deep Agent 实现多智能体系统完成复杂任务。LangSmith 可视化开发、调试、运维。上面四个框架构成了一个从技术验证到生产部署、从单智能体到复杂协作的、一整套完整的项目闭环。我们不需要学习所有的API只要弄懂一些核心模块和核心逻辑用到什么去查什么即可。三、开发前的环境准备1、创建虚拟环境LangChain是基于python开发的LangChain生态支持python和JavaScript语言。此后我们的项目都是纯python项目所以为了不弄乱base环境我们重新创建一个虚拟环境。因为LangChain 1.2要求python版本是3.10以上所以还得安装高版本的python解释器:2、下载LangChain安装包上图给出了多种安装方式是因为不一定哪种方式可以安装成功大家一个个试试有能成功的就行。下面是我的安装过程安装完毕进行查看这种是一个个包单独安装的流程。总之就是虚拟环境是用conda创建的那你安装包也尽量用canda安装canda安装不上再用pip装。但是如果项目中的依赖比较多我们就选择下面的用requirements.tet文件一键安装。3、用requirements.txt文件安装所有的包和依赖但是我们本系列的目的是搭建智能体所以还需要很多包和依赖干脆我把所有的包和版本都写到requirements.txt文件中用pip install -r .\requirements.txt 一键全部安装完毕后面本系列的学习就不用断断续续安装了。#requrements.txt # LangChain 核心框架 # 作用LangChain 1.x 主体、核心抽象、社区组件、实验性组件、文本切分器 langchain1.2.12 langchain-core1.2.18 langchain-community0.4.1 langchain-classic1.0.2 langchain-text-splitters1.1.1 langchain-experimental0.4.1 # # ollama # 作用调用本地大模型 langchain-ollama1.0.1 ollama0.6.2 # # LangGraph / Agent 编排 # 作用构建 Agent、状态图、多步骤工作流、检查点、PostgreSQL持久化 langgraph1.1.2 langgraph-prebuilt1.0.8 langgraph-checkpoint4.0.1 langgraph-checkpoint-postgres3.0.5 langgraph-sdk0.3.9 # # MCP / FastMCP 集成 # 作用构建 MCP Server、连接MCP工具、资源、Prompt mcp1.27.0 fastmcp3.2.4 langchain-mcp-adapters0.2.1 # # 大模型供应商与 LangChain 适配器 # 作用接入 OpenAI 协议、 DeepSeek、Anthropic、OpenRouter、通义千问、腾讯等模型 openai2.26.0 anthropic0.84.0 langchain-openai1.1.11 langchain-deepseek1.0.1 langchain-anthropic1.3.4至此本系列学习的环境搭建就算完成了就可以进行开发了。四、梳理大模型与微调、prompt、RAG、Agent之间的关系前面讲大模型进化史就说过微调、prompt、RAG、Agent等技术都是围绕大模型痛点而诞生的技术手段。其中微调是让大模型学习垂直专业领域的数据让大模型更加专业。微调是成本最高的手段。而prompt、RAG、Agent则是成本较低的手段。1、纯prompt也就是提示词就是我们和大模型交互时给大模型说的话只要我们更加清晰、重点地说清除我们的需求大模型就可能生成更加符合我们期望的回答。2、RAG(Retrieval-Augemented Generation)就是通过RAG系统把通用大模型转变成专业模型。我们把专业领域的知识、或者更加实时的知识放到向量数据库中每次和大模型对话时先把人们的输入到向量数据库中匹配出相关的知识然后把输入相关知识打包成prompt喂入大模型让大模型回答出更加专业、更加前沿的答案。3、AgentAgent LLM Planning Tools Memory Action1LLMLLM相当于智能体的大脑提供推理、规划和知识理解的功能。2Planning通过任务分解、反思与自省框架实现复杂任务处理。例如利用思维链(Chain of Thought)将目标拆解为子任务并通过反馈优化策略。3Tools调用外部工具如API、数据库扩展能力边界。4Memory5Action执行决策的模块比如操作工具的接口执行检索、推理、编程等。4、小结五、最后补充¶

相关推荐

CBC-MAC算法的各种密码分析方法全面盘点
CBC-MAC算法的各种密码分析方法全面盘点

CBC-MAC算法的各种密码分析方法全面盘点CBC-MAC(Cipher Block Chaining Message Authentication Code)是一种基于分组密码构造消息认证码的经典算法-。虽然设计精巧,但在不同条件下存在多种密码分析方法。以下是针对CBC-MAC及其主要变体的攻击… · 2026/11/4 11:49:36

XHS-Downloader:免费开源的小红书原图下载工具,链接一贴作品就落盘
XHS-Downloader:免费开源的小红书原图下载工具,链接一贴作品就落盘

XHS-Downloader:免费开源的小红书原图下载工具,链接一贴作品就落盘 【免费下载链接】XHS-Downloader 小红书(XiaoHongShu、RedNote)链接提取/作品采集工具 项目地址: https://gitcode.com/gh_mirrors/xh/XHS-Downloader 收… · 2026/11/4 11:49:36

Python用pydicom读取DICOM文件
Python用pydicom读取DICOM文件

医学数字成像与通信即DICOM, 它是医学影像以及相关信息的国际标准, 也就是ISO 12052, 此标准规定了那种符合临床质量要求、能够用于数据交换的医学图像格式, 该标准在各类医疗设备和系统里广泛被应用, 已然变为现代医学信息化的重要基础, 当前, 绝大多数的医学影像数据都是以DI… · 2026/11/4 11:48:36

互动小游戏开发成本与模块化技术解析
互动小游戏开发成本与模块化技术解析

1. 互动小游戏开发成本全解析 "开发一款互动小游戏到底要花多少钱?"这个问题就像问"装修一套房子要多少钱"一样难以简单回答。作为从业十年的游戏开发者,我见过太多客户被市场上从几千到几十万的报价搞得晕头转向。实际上&#xff0… · 2026/11/4 12:33:23

Intouch与SQL Server 2012历史库配置及Excel报表闭环
Intouch与SQL Server 2012历史库配置及Excel报表闭环

简介:这份文档面向使用 WonderWare Intouch 2014R2 构建 SCADA 系统的工程人员与初学者,聚焦 HMI 与 SQL Server 2012 数据库集成及 Excel 报表落地。内容围绕数据库登录方式与权限配置、Intouch 标记字典与条件脚本编写、SQL 访问管理器变量绑定、SQLCo… · 2026/11/4 12:33:23

Intouch 2014 R2与SQL Server 2012报表链路搭建
Intouch 2014 R2与SQL Server 2012报表链路搭建

简介:面向SCADA/HMI工程人员与Intouch初学者的操作文档,围绕WonderWare Intouch 2014R2与SQL Server 2012的集成,讲解数据库配置、权限设置、变量绑定、连接脚本及Excel报表读取数据等常见问题。包内为1个doc文件,约2.48MB&#x… · 2026/11/4 12:33:23

快慢指针算法解析:环形链表检测与环起点定位
快慢指针算法解析:环形链表检测与环起点定位

1. 环形链表问题概述 遇到环形链表问题时,很多开发者第一反应是使用哈希表记录访问过的节点。这种方法确实可行,但需要O(n)的空间复杂度。更巧妙的解法是使用快慢指针(Floyd判圈算法),它能在O(1)空间复杂度内解决问题。… · 2026/11/4 12:33:23

LSTM网络原理与实战:从门控机制到工业应用
LSTM网络原理与实战:从门控机制到工业应用

1. LSTM网络的前世今生 第一次接触LSTM是在2016年的一个时序预测项目上。当时用传统RNN处理传感器数据时,模型总是记不住三天前的关键特征,直到同事推荐了LSTM这个"记忆大师"。这种能够自主决定记住什么、忘记什么的网络结构,彻底改… · 2026/11/4 12:33:23

从贝尔曼方程到Q-learning:强化学习的数学原理与工程调试
从贝尔曼方程到Q-learning:强化学习的数学原理与工程调试

简介:《强化学习的数学原理》英文专著PDF,由西湖大学赵世钰教授撰写,面向希望从数学层面系统理解强化学习的学习者与研究者,也适合具备一定数学基础、需要夯实理论框架的读者。全书从基础概念与网格世界示例切入,依次讲… · 2026/11/4 12:32:22

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

AI辅助技术栈评估:提升研发决策效率60%
AI辅助技术栈评估:提升研发决策效率60%

1. 项目背景与核心价值技术决策一直是研发团队面临的重大挑战。随着技术生态的快速演进,技术栈的选择、维护和迭代变得愈发复杂。我们团队在过去两年里,先后经历了三次重大技术栈迁移,每次都需要投入大量人力进行技术评估和风险分析。直到去年… · 2026/11/4 0:00:17

从生成Token到直接决策:Jev如何重塑AI Agent工程实践
从生成Token到直接决策:Jev如何重塑AI Agent工程实践

1. 从"生成文字"到"拍板决策":Jev 到底在解决什么问题大多数人第一次接触大模型,脑子里建立的模型是"输入问题、输出文字"。你问它今天天气怎么样,它给你一段描述;你让它写个周报,它给你… · 2026/11/4 0:00:17

32G统一内存跑大模型:内存账、TPS实测与端云分流
32G统一内存跑大模型:内存账、TPS实测与端云分流

想在一台 32G 统一内存的小主机上把大模型跑成"日常可用",这件事我前后折腾了小半年。标题里说的这台 Mac mini M6,是我们这次讨论的目标平台,具体到手规格以实物为准;但下面这套推算方法和实测思路,对任何统… · 2026/11/4 0:00:17

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 3:16:49

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 6:59:29

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/4 7:02:38

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码