LangChain入门:手把手教你开发AI Agent,小白也能快速上手(收藏版)
本文为Python AI Agent开发实战系列教程首篇全面介绍了LangChain框架的诞生背景、核心特点统一模型接口、模块化架构、智能体工具调用、记忆管理及丰富应用场景如RAG、Agent构建、对话系统等。通过一个天气查询Agent的完整实战案例带领读者快速上手LangChain轻松构建基于大语言模型的AI应用。适合对AI开发感兴趣的小白和程序员学习。一、LangChain是什么LangChain是一个用于开发由大语言模型LLM驱动的应用程序的开源框架。它并非仅是对模型API的简单封装而是提供了一套完整的智能体Agent架构和丰富的工具集成使开发者无需从零搭建复杂架构就能快速构建基于LLM的高级AI应用。1.1 诞生背景LangChain诞生于2022年10月由哈佛大学的 Harrison Chase哈里森·蔡斯创建。其名称来源于 “Language”语言模型 “Chain”链式连接 的组合体现了核心设计理念——将大语言模型与外部计算资源和数据源以链式方式连接构建功能更强大的AI应用。1.2 为什么需要LangChain单一的大语言模型虽然能力强大但在实际应用中存在明显局限局限性说明知识时效性LLM的知识受限于训练数据无法获取训练时点之后的信息无法交互外部系统模型无法直接与数据库、API等外部系统交互无状态模型本身不具备状态保持能力难以进行连贯的多轮对话因此要构建真正实用的AI应用必须将大语言模型与外部工具、数据源和记忆机制有机结合——这正是LangChain框架诞生的原因。1.3 发展历程2022年10月Harrison Chase 创建 LangChain 开源项目2024年推出 LangGraph 作为底层智能体编排框架原有链和智能体标记为弃用2025年10月20日正式发布 LangChain v1.0.0 与 LangGraph v1.0.0标志着框架成熟和标准化 官方文档地址英文文档https://docs.langchain.com/oss/python/langchain/overview中文文档https://docs.langchain.org.cn/oss/python/langchain/overview二、LangChain核心特点2.1 统一的模型接口各大模型提供商OpenAI、Anthropic、DeepSeek、Google等都有各自独特的API接口和参数规范。LangChain通过统一的API抽象层解决了这个问题开发者可以无缝切换不同模型而无需重写大量代码降低技术锁定风险轻松利用最新最先进的模型加速实验和创新2.2 模块化架构LangChain采用高度模块化架构核心组件包括开发者可以像搭积木一样组合各种功能快速构建AI应用。组件的可组合性体现在 LCELLangChain表达式语言 中允许通过管道操作符|将多个组件连接成复杂工作流# LCEL 示例检索增强生成流程chain retriever | prompt_template | llm这种方式代码简洁且天然支持流式输出、异步调用和并行执行。2.3 智能体与工具调用智能体Agent是LangChain最强大的特性之一它将LLM从被动的文本生成器转变为能够主动决策和执行任务的智能系统。核心机制智能体支持集成丰富的外部工具搜索引擎、数据库、API接口等。工具是标准的函数接口包含名称、描述和执行函数三个基本要素。2.4 记忆管理机制LangChain的记忆系统解决了纯LLM应用的无状态性问题短期记忆维护当前会话上下文长期记忆记住用户偏好和历史交互多种存储后端内存、文件、数据库开发者可以根据应用需求灵活选择记忆类型和检索策略。三、LangChain使用场景3.1 检索增强生成RAGLangChain最经典的应用场景解决了大模型知识滞后和幻觉问题。原理 将外部知识源文档、数据库等向量化存储在生成答案前先检索相关信息使模型基于最新、最相关的数据生成回答。3.2 Agent智能体构建将LLM作为推理引擎自主规划并执行复杂任务。典型应用 智能旅行规划依次调用航班查询、酒店预订、景点推荐等工具 市场调研自动搜索行业报告、分析数据并生成简报️ 数据分析连接数据库根据自然语言生成SQL并执行分析3.3 对话系统与聊天机器人通过记忆管理系统构建上下文感知的对话应用电商客服连接订单数据库提供个性化推荐和售后支持教育助手结合教材内容解答学生学习问题3.4 数据连接与处理使LLM能够与各种数据源交互从PDF合同中自动提取关键信息各方、金额、条款将自然语言转换为SQL查询数据库基于Excel数据生成趋势分析和报告3.5 内容生成与自动化写作通过提示模板和输出解析器确保生成内容符合特定格式周报生成从业务系统提取数据按固定格式生成报告法律文书基于模板和用户输入产出符合规范的法律文件3.6 多模态应用开发处理图像、音频、视频等非文本数据图像分析上传图片 → 图像识别API → LLM基于描述回答问题语音交互语音转文本 → LLM处理 → 文本转语音输出四、快速上手实战4.1 Python环境准备LangChain 1.2版本要求 Python 3.10。这里使用 Anaconda 来创建和管理Python环境。# 创建名为 langchain_v1.2 的环境指定Python版本3.13conda create --name langchain_v1.2 python3.13.11# 查看已安装的Python环境conda env list# 切换到目标环境conda activate langchain_v1.2# 验证Python版本python -V# 输出: Python 3.13.11# 退出当前环境conda deactivate# 删除环境如需要conda remove --name langchain_v1.2 --all4.2 创建项目及配置Step 1安装必要依赖# 确保已切换到目标环境conda activate langchain_v1.2# 安装核心依赖pip install langchain1.2.0 langchain-deepseek1.0.1 dotenv0.9.9 -i https://pypi.tuna.tsinghua.edu.cn/simple 依赖说明langchainLangChain核心框架langchain-deepseekDeepSeek大模型集成包dotenv从项目根目录.env文件加载环境变量Step 2创建.env配置文件在项目根目录下创建.env文件配置大模型的API密钥DEEPSEEK_API_KEYsk-xxxxDEEPSEEK_BASE_URLhttps://api.deepseek.comStep 3创建env_utils.py环境变量加载工具import osfrom dotenv import load_dotenv# overrideTrue 确保.env文件中的值优先load_dotenv(overrideTrue)# 从环境变量读取配置DEEPSEEK_API_KEY os.getenv(DEEPSEEK_API_KEY)DEEPSEEK_BASE_URL os.getenv(DEEPSEEK_BASE_URL)Step 4创建my_llm.py模型初始化from langchain_deepseek import ChatDeepSeekfrom env_utils import DEEPSEEK_API_KEY, DEEPSEEK_BASE_URL# 创建DeepSeek LLM实例deepseek_llm ChatDeepSeek( api_keyDEEPSEEK_API_KEY, api_baseDEEPSEEK_BASE_URL, modeldeepseek-chat,)4.3 实战案例Agent查询天气下面通过一个完整的案例使用LangChain创建一个能查询天气的Agent。from langchain.agents import create_agentfrom my_llm import deepseek_llmdef get_weather(city: str) - str: 获取给定城市的天气。 # 模拟天气查询实际项目中可接入真实天气API return f{city} 天气晴朗# 创建Agentagent create_agent( modeldeepseek_llm, tools[get_weather], system_prompt你是一个助手你可以查询城市的天气。,)# 调用Agentresp agent.invoke( {messages: [{role: user, content: 查询北京的天气}]})print(resp)运行结果解读Agent执行完成后返回的messages列表记录了完整的交互过程# 1️⃣ 用户消息 - 用户的原始查询HumanMessage(content查询北京的天气)# 2️⃣ AI决策 - LLM分析后决定调用天气工具AIMessage( content我来帮您查询北京的天气。, tool_calls[{name: get_weather, args: {city: 北京}}])# 3️⃣ 工具执行结果 - get_weather函数的返回值ToolMessage(content北京 天气晴朗, nameget_weather)# 4️⃣ AI最终回复 - 基于工具结果生成自然语言回答AIMessage(content根据查询结果北京今天的天气是晴朗的) 关键观察 Agent自动完成了理解意图 → 选择工具 → 执行调用 → 生成回答的完整流程开发者只需定义工具和提示词即可。五、项目结构总览完成以上步骤后项目结构如下LangchainProject/├── .env # 环境变量配置API密钥等├── env_utils.py # 环境变量加载工具├── my_llm.py # LLM模型初始化└── quick_start.py # Agent实战案例六、总结本文介绍了LangChain框架的核心知识模块要点框架定位用于开发LLM驱动应用的开源框架核心理念Language Chain链式连接LLM与外部资源四大特点统一模型接口、模块化架构、智能体工具调用、记忆管理适用场景RAG、Agent、对话系统、数据处理、内容生成、多模态快速上手环境配置 → 依赖安装 → 模型初始化 → Agent创建如何学习大模型 AI 由于新岗位的生产效率要优于被取代岗位的生产效率所以实际上整个社会的生产效率是提升的。但是具体到个人只能说是“最先掌握AI的人将会比较晚掌握AI的人有竞争优势”。这句话放在计算机、互联网、移动互联网的开局时期都是一样的道理。我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我们整理出这套AI 大模型突围资料包✅ 从零到一的 AI 学习路径图✅ 大模型调优实战手册附医疗/金融等大厂真实案例✅ 百度/阿里专家闭门录播课✅ 大模型当下最新行业报告✅ 真实大厂面试真题✅ 2026 最新岗位需求图谱所有资料 ⚡️ 朋友们如果有需要《AI大模型入门进阶学习资源包》下方扫码获取~① 全套AI大模型应用开发视频教程包含提示工程、RAG、LangChain、Agent、模型微调与部署、DeepSeek等技术点② 大模型系统化学习路线作为学习AI大模型技术的新手方向至关重要。 正确的学习路线可以为你节省时间少走弯路方向不对努力白费。这里我给大家准备了一份最科学最系统的学习成长路线图和学习规划带你从零基础入门到精通③ 大模型学习书籍文档学习AI大模型离不开书籍文档我精选了一系列大模型技术的书籍和学习文档电子版它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。④ AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。⑤ 大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。⑥ 大模型大厂面试真题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我精心整理了一份大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。以上资料如何领取为什么大家都在学大模型最近科技巨头英特尔宣布裁员2万人传统岗位不断缩减但AI相关技术岗疯狂扩招有3-5年经验大厂薪资就能给到50K*20薪不出1年“有AI项目经验”将成为投递简历的门槛。风口之下与其像“温水煮青蛙”一样坐等被行业淘汰不如先人一步掌握AI大模型原理应用技术项目实操经验“顺风”翻盘这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。以上全套大模型资料如何领取

相关新闻

小白程序员必看!掌握Karpathy Loop与自身改进1000倍的秘诀,收藏提升技能!

小白程序员必看!掌握Karpathy Loop与自身改进1000倍的秘诀,收藏提升技能!

本文探讨了如何通过验证器让Agent持续试错,以及多Agent协作时遇到的协调和记忆问题。介绍了Git提交DAG、结构化工件和知识图谱如何解决这些问题,并指导读者在何时引入图技术。核心在于建立可测量、可回退、可复现的验证闭环,当协调和共享事实…

2026/10/16 3:11:01 阅读更多 →
小程序逆向分析实战:从解包到签名拆解与安全反馈

小程序逆向分析实战:从解包到签名拆解与安全反馈

小程序逆向分析这件事,乍一听有点像地下实验室里才发生的事,实际上它跟拆一台旧家电、顺着电路板看元器件布局没什么两样。前阵子因为一直在研究某家电品牌的官方小程序,我完整走了一遍“拿到小程序包、还原逻辑代码、拆解请求签名、反馈安全…

2026/10/16 3:11:01 阅读更多 →
基于图着色与Transformer的网格参数化折叠检测预警

基于图着色与Transformer的网格参数化折叠检测预警

做三维几何处理的人,应该都碰过这种让人抓狂的画面:一个精心调好的UV展开,局部拉伸都控制得很好,结果到某些区域突然出现三角形翻转,纹理像被揉成一团纸。这种翻转在参数化领域叫folding,在UV工具里通常表现…

2026/10/16 3:10:01 阅读更多 →

最新新闻

光储充换电站分时电价双层优化模型及Matlab实现

光储充换电站分时电价双层优化模型及Matlab实现

光储充换电站和分时电价互动这两件事,放在一起研究的论文和代码我见过不少,但真正能把“用户充电负荷”这个变量建模得当、又能在Matlab里跑通寻优的,确实不算多。这个标题对应的方向,简单说就是:站在运营商的视角&…

2026/10/16 4:47:24 阅读更多 →
Kafka与ZooKeeper的关系及bootstrap.servers配置详解:从旧架构到KRaft模式

Kafka与ZooKeeper的关系及bootstrap.servers配置详解:从旧架构到KRaft模式

1. 先讲清楚Kafka和ZooKeeper到底什么关系很多刚接触Kafka的人都会被一件事搞糊涂:Kafka不是号称"去ZooKeeper化"了吗?为什么配置里还有一个KAFKA_ZOOKEEPER_CONNECT?更离谱的是,生产者和消费者的配置里写的却是bootstr…

2026/10/16 4:47:24 阅读更多 →
公众号+题库小程序:从内容池到变现闭环的实操指南

公众号+题库小程序:从内容池到变现闭环的实操指南

“公众号是内容池,题库小程序是印钞机”,这句话我第一次听到时,是在和一个做考证培训的同行聊天。当时觉得夸张,但自己真把一个公众号和一个题库小程序跑起来之后,才发现这话糙理不糙。公众号负责沉淀内容和信任&#…

2026/10/16 4:47:24 阅读更多 →
把Claude API变成工程流程:本地自动化代码助手实践

把Claude API变成工程流程:本地自动化代码助手实践

如果你的工作流还停留在把代码复制到聊天对话框、再把结果复制回编辑器,那这个标题值得你仔细看完。我第一次在代码仓库里看到free-claude-code这个名字时,以为又是一个套壳的“AI 写代码”玩具。可把它拆开跑了一遍才发现,真正值钱的不是那几…

2026/10/16 4:47:24 阅读更多 →
Deepin安装oh-my-zsh完整指南:避坑与配置详解

Deepin安装oh-my-zsh完整指南:避坑与配置详解

说实话,在Deepin上安装oh-my-zsh这件事,我前前后后折腾过三次,这次是第四次,才算是把整个流程彻底捋顺了。Deepin本身是个很省心的Linux发行版,开箱即用,但对经常在终端里干活的人来说,默认的ba…

2026/10/16 4:47:24 阅读更多 →
酉空间核心解析:内积、埃尔米特矩阵与酉对角化

酉空间核心解析:内积、埃尔米特矩阵与酉对角化

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

2026/10/16 4:46:24 阅读更多 →

日新闻

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

个人 AI Agent 平台接入 TaoToken:统一 Key 与 API 通道的配置大纲

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

2026/10/16 0:00:05 阅读更多 →
信号与系统频域分析作业解题指南

信号与系统频域分析作业解题指南

1. 作业背景与核心要求解析信号与系统作为电子信息类专业的核心基础课,其作业设计往往直接关联课程的核心知识框架。2026年春季第六次作业的布置,通常对应着课程进展到频域分析的关键阶段。根据常规教学进度推测,本次作业可能涉及以下核心内容…

2026/10/16 0:00:05 阅读更多 →
Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

Django MVT实战:从零构建图书借阅系统,彻底搞懂Model-View-Template分层

1. 从一个"四不像"的练手项目说起如果你已经看完了Django的官方教程前几章,跟着敲完了投票应用,大概会有一种"我好像会了,又好像什么都不会"的割裂感。教程里每个知识点都是拆开的——这一章讲模型,下一章讲视…

2026/10/16 0:00:05 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/15 16:18:54 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/15 19:41:51 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

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

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

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

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

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

2026/10/15 9:49:14 阅读更多 →