news 2026/3/15 16:14:31

【Agent从入门到实践】48 LangChain:最常用的Agent开发框架,核心功能与使用入门

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Agent从入门到实践】48 LangChain:最常用的Agent开发框架,核心功能与使用入门

文章目录

    • 一、为啥LangChain成了Agent开发的“香饽饽”?看完就懂啦!
    • 二、先搞懂基础:LangChain到底是啥?核心概念秒懂!
    • 三、LangChain核心功能:这几个是开发Agent的“刚需”!
      • 1. 大模型无缝对接:主流模型全兼容,切换超方便
      • 2. Agent核心能力:让大模型“自主思考+使用工具”
      • 3. 丰富的工具生态:内置+自定义,想要啥工具都有
      • 4. 记忆系统:让Agent“记住”对话,不会断片
      • 5. 提示词工程:模板化管理,提效又规范
      • 6. 多模态支持:图文音视频全处理,适配最新大模型
    • 四、手把手实操:Python搭建第一个LangChain Agent,5分钟跑起来!
      • 前置准备:安装依赖+获取大模型API密钥
        • 1. 安装LangChain及相关依赖
        • 2. 获取通义千问API密钥(免费)
        • 3. 创建环境变量文件(.env)
      • 核心代码:搭建智能数据分析Agent
      • 运行代码,看Agent干活!
      • 换成GPT-4o的小技巧
    • 五、2026年最新使用技巧:让你的Agent更稳、更高效!
      • 1. 开启Verbose日志,调试超方便
      • 2. 工具按需添加,不要贪多
      • 3. 用Tool Calling模式,Agent更智能
      • 4. 本地缓存大模型请求,节省API费用
      • 5. 处理大文件:用LangChain的文档加载器
    • 六、常见坑位预警:这些问题新手最容易踩!
      • 1. API密钥泄露:绝对不要硬编码在代码里
      • 2. 代码解释器报错:确保安装了所需依赖
      • 3. 大模型温度值太高:结果不严谨
      • 4. 记忆模块失效:确保memory_key和提示词模板一致
      • 5. 跨平台运行报错:注意文件路径格式
    • 七、总结:LangChain入门超简单,动手是关键!

目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步。想要系统学习AI知识的朋友可以看看我的教程http://blog.csdn.net/jiangjunshow,教程通俗易懂,风趣幽默,从深度学习基础原理到各领域实战应用都有讲解。

一、为啥LangChain成了Agent开发的“香饽饽”?看完就懂啦!

现在聊大模型开发,谁还没听过LangChain呀~ 尤其是做智能Agent(就是能自主思考、执行任务的大模型应用),LangChain几乎是标配框架,这两年火得一塌糊涂!

你想想,直接用原生大模型API,顶多能做个聊天机器人,想让它自己查资料、跑代码、连数据库、完成复杂任务,那可太难啦~ 而LangChain就像一个“大模型应用积木库”,把大模型、工具、数据、记忆这些模块全拼好了,咱们不用从零写代码,搭积木似的就能做出能干活的智能Agent,比如自动写代码的Agent、数据分析Agent、客服问答Agent,简直不要太方便!

2026年现在,LangChain不仅适配GPT-4o、文心一言4.0、通义千问3.5这些主流大模型,还更新了超多实用功能,比如原生支持多模态、一键部署Agent、轻量化推理,不管是新手入门还是企业级开发,都能hold住,这也是它能成为Agent开发第一框架的原因~ 今天咱们就把LangChain的核心功能掰开揉碎讲,再用Python手把手写个入门Agent,新手也能跟着跑起来!

二、先搞懂基础:LangChain到底是啥?核心概念秒懂!

首先明确一点,LangChain不是大模型,而是基于大模型的应用开发框架,用Python/JavaScript写的,核心就是“连接”——把大模型和各种外部资源、工具连接起来,让大模型从“只会聊天的嘴炮”变成“能实际干活的打工人”。

刚接触LangChain可能会被一堆名词搞懵,别怕,用大白话讲几个核心概念,记牢这几个,后面就轻松啦:

  • LLM/Chat Model:大模型核心,比如GPT-4o、通义千问,是Agent的“大脑”,负责思考、推理、生成答案;
  • Agent:智能代理,LangChain的核心产物,能根据用户指令,自主决定“该用什么工具→怎么用→怎么整合结果→给出答案”,比如代码解释Agent、搜索引擎Agent;
  • Tool:Agent能用的工具,比如Python代码解释器、百度/谷歌搜索、数据库查询、Excel处理,相当于Agent的“手和脚”;
  • Prompt Template:提示词模板,把固定的提示词逻辑做成模板,不用每次手动写,比如“你是一个数据分析专家,请分析以下数据:{data}”,{data}是动态参数,超省心;
  • Memory:记忆模块,让Agent记住对话历史,比如你前一句问了“北京天气怎么样”,后一句问“明天呢”,Agent能知道“明天”指的是北京明天,不会断片;
  • Chain:链,把多个模块按顺序串起来,比如“Prompt→LLM→Tool→LLM→结果”,简单的Chain组合起来,就能实现复杂功能。

简单总结:LangChain = 大模型大脑 + 各种工具手脚 + 记忆系统 + 流程编排器,拼在一起就是能自主干活的智能Agent~

三、LangChain核心功能:这几个是开发Agent的“刚需”!

LangChain的功能特别多,但咱们开发Agent,核心就用这几个,2026年的最新版本里,这些功能还做了大幅优化,更易用、更强大,咱们一个个讲,全是大白话,不绕弯~

1. 大模型无缝对接:主流模型全兼容,切换超方便

这是基础中的基础,LangChain做了一层统一的封装,不管是OpenAI的GPT系列、国内的文心一言/通义千问/讯飞星火,还是开源的Llama 3/DeepSeek,都能用统一的代码调用,换模型不用改代码,只改几行配置就行!

比如你先用水滴大模型做开发,后面想换成GPT-4o,直接改下API密钥和模型名称,其他代码完全不动,这一点对开发者太友好了,不用重复造轮子~

2. Agent核心能力:让大模型“自主思考+使用工具”

这是LangChain最核心的功能,也是和直接用大模型API最大的区别!原生大模型不会用工具,而LangChain的Agent模块,会让大模型先“思考”:用户的问题需要用什么工具?怎么用?然后自动调用工具,获取结果后,再整理成答案返回。

比如你问Agent“2026年中国GDP预计是多少?”,Agent会思考:这个问题需要最新数据,我得用搜索引擎工具,然后自动调用搜索,把搜索结果整理后告诉你,全程不用你手动操作,这就是智能Agent的核心~

现在LangChain的Agent还分了很多类型,适配不同场景,比如:

  • ZeroShotAgent:零基础思考,适合简单任务;
  • ChatAgent:基于聊天模型的Agent,适合对话式任务;
  • CodeInterpreterAgent:代码解释Agent,能自动写Python代码、运行、分析结果,适合数据分析、数学计算;
  • PlanAndExecuteAgent:先规划再执行,适合复杂的多步骤任务,比如“写一份2026年新能源汽车行业分析报告”,Agent会先规划“查行业数据→分析市场规模→分析竞争格局→写报告”,再一步步执行。

3. 丰富的工具生态:内置+自定义,想要啥工具都有

Agent要干活,离不开工具,LangChain内置了上百种常用工具,覆盖几乎所有场景,而且还支持自定义工具,自己写的脚本也能让Agent调用,简直无敌~

内置常用工具(2026年还在持续更新):

  • 代码类:Python Code Interpreter(代码解释器,能跑代码、画图表、分析数据);
  • 搜索类:百度搜索、谷歌搜索、SerpAPI(搜索引擎)、Tavily(AI专用搜索);
  • 数据类:Excel/CSV处理、SQL数据库查询(MySQL/PostgreSQL)、MongoDB操作;
  • 其他类:网页爬取、邮件发送、文件读写、地图查询。

自定义工具:如果内置工具不够用,比如你想让Agent调用公司内部的CRM系统,只需要用LangChain的工具模板,写几行代码封装一下,就能让Agent直接用,超灵活~

4. 记忆系统:让Agent“记住”对话,不会断片

原生大模型是“鱼的记忆”,每次对话都是独立的,不知道上一句聊了啥,而LangChain的Memory模块,能让Agent记住对话历史,甚至能记住长期记忆,比如用户的偏好、历史操作,让交互更自然。

Memory也分很多类型,新手先掌握最常用的ConversationBufferMemory(对话缓冲区记忆)就行,能简单记住所有对话历史,满足大部分场景,复杂场景再用进阶的记忆类型,比如按时间过滤的、按重要性过滤的~

5. 提示词工程:模板化管理,提效又规范

写大模型应用,提示词是灵魂,但每次手动写提示词太麻烦,还容易出错,LangChain的Prompt Template模块,能把提示词做成模板,动态传参,重复使用,还能做提示词拼接、格式化,让提示词管理更规范。

比如做一个客服Agent,把固定的客服话术做成模板:“你是{company}的智能客服,负责解答{product}的相关问题,回答要简洁、友好,用户问题:{question}”,后面只需要传公司、产品、用户问题这三个参数,不用每次重写整段提示词,提效超多~

6. 多模态支持:图文音视频全处理,适配最新大模型

2026年的大模型全是多模态的,能看图片、听音频,LangChain也紧跟趋势,原生支持多模态开发,比如让Agent分析图片内容、根据图片写报告、把音频转文字后再处理,不用额外装插件,直接调用就行,适配GPT-4o、文心一言4.0这些多模态大模型超丝滑~

四、手把手实操:Python搭建第一个LangChain Agent,5分钟跑起来!

讲了这么多理论,不如动手写代码!咱们用2026年最新的LangChain版本(v0.2+),搭配国内易上手的通义千问3.5(也可以换成GPT-4o),做一个智能数据分析Agent——能自动接收数据、写Python代码、运行代码、分析结果,全程自主完成,新手也能跟着做,全程复制粘贴就行~

前置准备:安装依赖+获取大模型API密钥

1. 安装LangChain及相关依赖

打开终端,一行命令安装核心依赖,包含LangChain核心、通义千问对接、代码解释器、内存管理:

pipinstalllangchain langchain-qianfan langchain-experimental python-dotenv pandas matplotlib
  • langchain:LangChain核心框架;
  • langchain-qianfan:LangChain对接百度文心/阿里通义千问的官方插件;
  • langchain-experimental:包含代码解释器等实验性工具(现在已经很稳定了);
  • python-dotenv:管理环境变量,避免API密钥硬编码;
  • pandas/matplotlib:数据分析和画图,Agent会用到。
2. 获取通义千问API密钥(免费)

阿里云通义千问开放平台(https://dashscope.aliyun.com/)注册账号,创建应用,就能获取API-KEY,免费额度足够新手开发使用,GPT-4o的话去OpenAI平台获取API_KEY就行,后面改配置即可~

3. 创建环境变量文件(.env)

在项目根目录创建.env文件,把API密钥放进去,避免写在代码里泄露:

# 通义千问API密钥,替换成你自己的 DASHSCOPE_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

核心代码:搭建智能数据分析Agent

创建langchain_agent_demo.py文件,代码全程带注释,复制粘贴就能跑,实现的功能:用户输入一个数据分析需求,Agent自动写Python代码、运行代码、生成图表、分析结果,全程自主完成~

# 导入所需模块importosfromdotenvimportload_dotenvimportpandasaspd# LangChain核心模块fromlangchain_qianfanimportChatQianfanfromlangchain_experimental.toolsimportPythonREPLToolfromlangchain.agentsimportAgentExecutor,create_tool_calling_agentfromlangchain_core.promptsimportChatPromptTemplatefromlangchain_core.memoryimportConversationBufferMemory# 加载环境变量,读取API密钥load_dotenv()os.environ["DASHSCOPE_API_KEY"]=os.getenv("DASHSCOPE_API_KEY")# 第一步:初始化大模型(通义千问3.5),Agent的“大脑”# 换成GPT-4o的话,把ChatQianfan换成ChatOpenAI即可,其他代码不动llm=ChatQianfan(model="qwen-plus",# 通义千问3.5模型名称temperature=0.1,# 温度值,0.1表示结果更严谨,适合数据分析)# 第二步:初始化工具,Agent的“手和脚”# PythonREPLTool:代码解释器,能运行Python代码、画图表、分析数据python_tool=PythonREPLTool()# 把工具放进列表,后续可添加多个工具(比如搜索、数据库)tools=[python_tool]# 第三步:创建提示词模板,告诉Agent“你是谁、要做什么”prompt=ChatPromptTemplate.from_messages([("system",""" 你是一个专业的智能数据分析Agent,擅长使用Python(pandas/matplotlib)做数据分析和数据可视化。 你的工作流程: 1. 根据用户的数据分析需求,自动编写Python代码; 2. 调用Python代码解释器运行代码,生成数据结果或图表; 3. 整理运行结果,用通俗易懂的语言做数据分析总结; 4. 代码运行的图表会自动保存为本地文件,分析时要提及图表文件。 注意:运行代码前要确保导入了所需库,代码要简洁、可运行,不要写无用代码。 """),("placeholder","{chat_history}"),# 对话历史,记忆模块("user","{input}"),# 用户输入("placeholder","{agent_scratchpad}")# Agent思考过程,自动生成])# 第四步:初始化记忆模块,让Agent记住对话历史memory=ConversationBufferMemory(memory_key="chat_history",# 对应提示词模板中的{chat_history}return_messages=True# 以消息格式返回,适配Chat模型)# 第五步:创建Agent,组合“大脑+工具+提示词”agent=create_tool_calling_agent(llm,tools,prompt)# 第六步:创建Agent执行器,让Agent能执行任务agent_executor=AgentExecutor(agent=agent,tools=tools,memory=memory,verbose=True,# 开启详细日志,能看到Agent的思考和执行过程,方便调试handle_parsing_errors="请重新整理你的思考,确保代码可运行!"# 错误处理)# 第七步:测试Agent,用户输入数据分析需求if__name__=="__main__":# 示例1:简单数据分析需求,Agent会自动生成数据、分析、画图user_input="生成100个学生的数学、语文、英语成绩数据,分析三科成绩的相关性,画出散点图矩阵,保存为score_correlation.png"# 运行Agentresult=agent_executor.invoke({"input":user_input})# 输出最终结果print("\n🎉 数据分析结果:")print(result["output"])# 示例2:可取消注释,测试自定义数据需求# user_input2 = "读取本地的sales.csv文件,分析每月销售额趋势,画出折线图,保存为sales_trend.png"# result2 = agent_executor.invoke({"input": user_input2})# print("\n🎉 销售额分析结果:")# print(result2["output"])

运行代码,看Agent干活!

终端运行命令:

python langchain_agent_demo.py

运行后你会看到详细的日志,Agent会一步步思考→写Python代码→运行代码→生成图表→分析结果,全程自主完成,最后会在本地生成score_correlation.png散点图矩阵,控制台输出通俗易懂的数据分析总结,是不是超神奇!

如果想测试自己的需求,比如分析本地的CSV/Excel文件,只需要改user_input里的内容,Agent会自动处理,不用改其他代码~

换成GPT-4o的小技巧

如果想把大模型换成GPT-4o,只需要改第一步的大模型初始化代码,其他代码完全不动,是不是超方便:

# 替换成GPT-4o的代码fromlangchain_openaiimportChatOpenAI llm=ChatOpenAI(model="gpt-4o",api_key=os.getenv("OPENAI_API_KEY"),# 从.env读取GPT-4o的API_KEYtemperature=0.1)

然后在.env里添加OPENAI_API_KEY=你的GPT-4o密钥就行,这就是LangChain封装的魅力!

五、2026年最新使用技巧:让你的Agent更稳、更高效!

刚入门的小伙伴,掌握上面的内容就能做基础Agent了,再分享几个2026年LangChain的最新实用技巧,让你的Agent体验翻倍,避坑少走弯路~

1. 开启Verbose日志,调试超方便

代码里设置verbose=True,能看到Agent的完整思考过程:“我需要做什么→应该用哪个工具→写什么代码→运行结果是什么”,出问题时能快速定位,新手一定要开!

2. 工具按需添加,不要贪多

Agent的工具越多,思考时间越长,出错概率也越高,按需添加工具就行,比如数据分析Agent只加Python代码解释器,搜索Agent只加搜索引擎工具,轻量的Agent运行更快、更稳定~

3. 用Tool Calling模式,Agent更智能

咱们代码里用的create_tool_calling_agent就是Tool Calling模式,这是2026年LangChain的推荐模式,比老版的ReAct模式更智能,大模型能更精准地调用工具,少走弯路,新手直接用这个模式就行~

4. 本地缓存大模型请求,节省API费用

反复调试代码时,大模型会重复接收相同请求,浪费API费用,LangChain有内置的缓存模块,加几行代码就能缓存请求结果,相同请求直接读缓存,不用再调用大模型,超省费用:

fromlangchain_core.cacheimportInMemoryCachefromlangchain.globalsimportset_llm_cache set_llm_cache(InMemoryCache())# 内存缓存,重启失效;生产环境可用Redis缓存

5. 处理大文件:用LangChain的文档加载器

如果让Agent分析大文件(比如几百M的CSV、PDF),不要直接让Agent读取,用LangChain的内置文档加载器(比如CSVLoaderPyPDFLoader),能分块读取、处理大文件,避免内存溢出,Agent处理起来更轻松~

六、常见坑位预警:这些问题新手最容易踩!

刚用LangChain的小伙伴,很容易被这些小问题卡住,我整理了几个最常见的坑,提前避坑,少走弯路~

1. API密钥泄露:绝对不要硬编码在代码里

一定要用.env文件管理API密钥,不要直接写在代码里,尤其是把代码上传到GitHub、Gitee时,一旦泄露,别人会盗用你的API额度,损失惨重!

2. 代码解释器报错:确保安装了所需依赖

Agent调用Python代码解释器时,会用到pandas、matplotlib等库,如果没安装,会报错,所以提前把可能用到的依赖装全,或者在提示词里让Agent先检查依赖~

3. 大模型温度值太高:结果不严谨

做数据分析、代码开发这类严谨的任务,把temperature设为0.10.3,结果更严谨,不会出现天马行空的答案;做创意生成(比如写文案),可以设为0.70.9,更有创意~

4. 记忆模块失效:确保memory_key和提示词模板一致

记忆模块的memory_key必须和提示词模板中的占位符一致,比如代码里memory_key="chat_history",提示词里就要有{chat_history},否则记忆模块失效,Agent会断片~

5. 跨平台运行报错:注意文件路径格式

Windows和Linux/Mac的文件路径格式不一样,让Agent保存文件时,用相对路径(比如score_correlation.png),不要用绝对路径(比如C:\data\score.png),否则跨平台运行会报错~

七、总结:LangChain入门超简单,动手是关键!

其实LangChain一点都不难,核心就是“组合”——把大模型、工具、记忆、提示词这些模块组合起来,就能做出能干活的智能Agent,不用从零写复杂的推理和工具调用逻辑,这也是它能成为Agent开发第一框架的原因~

2026年的LangChain已经非常成熟了,适配所有主流大模型,内置超多实用工具和功能,新手从简单的Agent(比如数据分析、代码解释)入手,熟悉核心概念后,再做复杂的Agent(比如多工具组合、企业级应用),循序渐进,很快就能上手~

而且LangChain的社区超级活跃,有问题去官方文档、GitHub Issues或者国内的技术社区搜,几乎都能找到答案,不用担心遇到问题没人解~

现在就动手把上面的示例代码跑起来,改改用户输入,看看Agent能做出什么效果,再尝试添加新的工具(比如搜索引擎),让你的Agent更强大,体验一把智能Agent开发的快乐吧!

目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步。想要系统学习AI知识的朋友可以看看我的教程http://blog.csdn.net/jiangjunshow,教程通俗易懂,风趣幽默,从深度学习基础原理到各领域实战应用都有讲解。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/12 19:38:28

Java毕设选题推荐:基于springboot的办公用具电脑笔记本申请分发小程序的设计与实现【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/3/13 20:52:53

Mobile库实战入门:几行代码快速集成通信功能

无论是发送验证码短信,还是检测当前网络状态,Mobile库都能以极低的学习成本帮助开发者快速实现。其设计哲学是“简洁至上”,所有功能通过链式调用或方法封装暴露出来,几行代码即可完成集成。本文将带你从环境配置到功能实现&#…

作者头像 李华
网站建设 2026/3/14 15:08:14

轻松掌握:从硬件连接到UI呈现的LCD高效开发路径

面对复杂的LCD开发流程,许多开发者常陷入“硬件调不通,UI显异常”的困境。其实,只要掌握从硬件连接、初始化配置到UI适配的系统方法,整个过程可以变得清晰而高效。本文将系统讲解关键节点与常见问题,助你轻松打通从物理…

作者头像 李华
网站建设 2026/3/14 1:57:35

22. 纹理采样

1.纹理采样 2.采样器 1.纹理采样 采样就是GPU为了给屏幕上的一个像素上色, 去纹理贴图里"查取并计算对应颜色 / 数据"的操作, 一次查取 计算就是一次采样, 多张纹理就是多次采样a.纹理贴图给3D模型贴的图(漫反射、法线、高光图), 本质是一张存满颜色/数据的像素格…

作者头像 李华
网站建设 2026/3/13 5:32:48

Java计算机毕设之基于springboot的剧本杀游玩一体化平台小程序基于Springboot+Uniapp的剧本杀游玩一体化平台微信小程序(完整前后端代码+说明文档+LW,调试定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华