当前位置: 首页 > news >正文

2026年最硬核的LangChain从入门到精通:全网最细核心组件全景剖析

大家好,我是你们的技术伙伴。👋

站在2026年的时间节点回望,大语言模型(LLM)已经不再是新鲜事物,它渗透在我们生活的方方面面。但作为一名开发者,如果只满足于调用现成的模型,而不懂其内部的运行逻辑,那我们和“调参侠”又有什么区别?

今天,我将结合Python代码实战深度理论剖析,带你从零构建一套完整的LangChain知识体系。我们将穿越Transformer的迷雾,直击LangChain的核心组件,让你在面对任何LLM面试题或技术难题时,都能从容不迫。

核心内容概览:

  1. LangChain核心组件全景:Models、Prompts、Chains、Memory、Indexes、Agents。
  2. LCEL链式语法:掌握|操作符,构建高效的处理流水线。
  3. 智能体(Agent)实战:让大模型具备“思考”与“行动”的能力。

🧠 第一部分:LangChain核心组件全景

LangChain是围绕LLMs建立的一个框架,它的核心理念是为各种LLMs实现通用的接口,把LLMs相关的组件“链接”在一起,简化LLMs应用的开发难度。

1. Models(模型):AI的“大脑”

Models组件提供了与各种模型的集成接口。目前主要支持三种类型:

  • LLMs:接收文本输入,返回文本。
  • Chat Models:基于LLMs,接收聊天消息(AIMessage/HumanMessage/SystemMessage)列表作为输入。
  • Embeddings Models:接收文本,返回浮点数列表(向量化)。

代码实战:调用通义千问Qwen-Max

from langchain_community.llms.tongyi import Tongyi from dotenv import load_dotenv import os # 1. 加载环境变量 load_dotenv() # 2. 实例化模型 llm = Tongyi(model='qwen-max') # 3. 模型推理 res = llm.invoke("帮我讲个笑话吧") print(res)
2. Prompts(提示词):与AI沟通的“咒语”

Prompt是引导模型生成特定结果的关键。LangChain提供了PromptTemplate来构建动态提示词。

代码实战:构建通用提示词模板

from langchain_core.prompts import PromptTemplate # 定义模板 template = "我的邻居姓{lastname},他生了个儿子,给他儿子起个名字" # 构建提示词模板 prompt = PromptTemplate( input_variables=["lastname"], template=template, ) # 生成提示词 prompt_text = prompt.format(lastname="王") print(prompt_text)
3. Chains(链):串联组件的“流水线”

Chain是将LLM与其他组件结合起来完成应用程序的过程。

代码实战:LCEL(LangChain Expression Language)链式语法
LCEL使用|符号将组件连接起来,是目前最推荐的写法。

# 安装:pip install langchain from langchain_core.prompts import PromptTemplate from langchain_community.llms.tongyi import Tongyi # 初始化模型 llm = Tongyi(model='qwen-max') # 定义模板 prompt = PromptTemplate.from_template( "请为姓氏 {lastname} 的宝宝起一个名字,要求有诗意。" ) # 构建Chain chain = prompt | llm # 执行链 result = chain.invoke({"lastname": "李"}) print(result.content)
4. Memory(记忆):让AI“记得住”你

大模型本身不具备记忆能力,Memory组件用于保存和模型交互时的上下文状态。

代码实战:ConversationChain实现连续对话

from langchain.chains import ConversationChain from langchain_community.chat_models.tongyi import ChatTongyi # 实例化聊天模型 chat = ChatTongyi() # 创建会话链 conversation = ConversationSection(chat) # 连续对话 print(conversation.predict(input="小明有1只猫")) print(conversation.predict(input="小刚有2只狗")) print(conversation.predict(input="小明和小刚一共有几只宠物?"))
5. Indexes(索引):RAG的“地基”

Indexes组件负责文档处理,包括加载、分割、向量化存储和检索。

代码实战:文档加载与向量存储

from langchain_community.document_loaders import TextLoader from langchain.text_splitter import CharacterTextSplitter from langchain_chroma import Chroma from langchain_community.embeddings import DashScopeEmbeddings # 1. 加载文档 loader = TextLoader('./data/pku.txt', encoding='utf8') docs = loader.load() # 2. 文档分割 text_splitter = CharacterTextSplitter(chunk_size=180, chunk_overlap=0) split_texts = text_splitter.split_documents(docs) # 3. 加载嵌入模型 embeddings = DashScopeEmbeddings() # 4. 构建向量库并持久化 vectordb = Chroma.from_documents( documents=split_texts, embedding=embeddings, persist_directory='./chroma_data' )
6. Agents(智能体):会“思考”的AI

Agent是LangChain中最强大的组件,它能让模型根据输入决定调用哪些工具(Tools)。

代码实战:Agent调用维基百科与计算器

from langchain.agents import initialize_agent, AgentType from langchain_community.agent_toolkits.load_tools import load_tools from langchain_community.llms.tongyi import Tongyi # 初始化模型 llm = Tongyi() # 加载工具 (维基百科、数学计算) tools = load_tools(["wikipedia", "llm-math"], llm=llm) # 初始化Agent agent = initialize_agent( tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True # 显示思考过程 ) # 执行任务 agent.invoke("故宫的历史简介是什么?") agent.invoke("计算300的25%是多少?")

🏗️ 第二部分:LCEL链式语法详解

LCEL(LangChain Expression Language)是LangChain的核心语法糖,它让代码变得极其简洁且可读。

核心逻辑:就像Unix的管道符|一样,把前一个组件的输出作为后一个组件的输入。

实战案例:构建一个“起名专家”链

from langchain_core.prompts import ChatPromptTemplate from langchain_core.output_parsers import StrOutputParser from langchain_community.chat_models.tongyi import ChatTongyi # 1. 定义提示词模板 prompt = ChatPromptTemplate.from_template( "你是一位资深国学专家,请根据姓氏 {lastname},参考《诗经》,起一个有文化底蕴的名字。" ) # 2. 初始化模型 model = ChatTongyi(model='qwen-max') # 3. 初始化解析器 (将模型输出解析为字符串) parser = StrOutputParser() # 4. 组装LCEL链 # 执行流程:Prompt -> Model -> Parser chain = prompt | model | parser # 5. 调用 result = chain.invoke({"lastname": "苏"}) print(f"推荐名字: {result}")

🤖 第三部分:智能体(Agent)的“思考”之旅

Agent = 大模型 + 任务规划 + 工具使用 + 记忆。它最大的特点是能根据问题动态决定是否需要调用工具。

1. Agent的工作流程
  1. Input:接收用户输入。
  2. Thought:大模型思考是否需要工具,如果需要,选择哪个工具,传入什么参数。
  3. Action:执行工具。
  4. Observation:观察工具返回的结果。
  5. Final Answer:生成最终答案。
2. 代码实战:自定义工具

我们可以让Agent具备任何能力,比如查询当前时间。

from langchain.agents import tool from datetime import date # 定义自定义工具 @tool def get_current_date(text: str) -> str: """返回今天的日期。""" return str(date.today()) # 加载原有工具并加入自定义工具 tools = load_tools(["llm-math"], llm=llm) agent = initialize_agent(tools + [get_current_date], llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True) # 提问 agent.invoke("今天是星期几?")

📝 第四部分:总结与展望

回顾这篇文章,我们完成了以下技术探险:

  1. 核心组件:掌握了LangChain的六大核心组件。
  2. LCEL语法:学会了如何用|构建高效的处理流水线。
  3. Agent实战:让AI具备了“思考”与“行动”的能力。

2026年的今天,AI技术日新月异,希望这篇博客能成为你技术进阶路上的垫脚石。如果你觉得有收获,希望点赞、收藏、关注!你的支持是我持续输出硬核内容的最大动力!

http://www.rkmt.cn/news/1420567.html

相关文章:

  • AI Agent驱动B2B销售线索自动化:从零构建低成本自主SDR系统
  • 快速上手FinBERT-FLS:基于3500条标注数据的金融NLP模型实践指南
  • 成都消防操作证报名费多少钱(内行拆解不被割韭菜) - 消防设施操作员考证
  • 抖音一键去水印免费方法与工具推荐
  • 2026广深靠谱全屋定制评测:欧雅尊领衔 - 服务品牌热点
  • 小米招聘 Agent 上线:依托大模型,为求职者提供政策解答、精准岗位推荐等服务
  • 2026年轻触开关/拨动开关/微动开关/自锁开关厂家精选榜单:高品质电子元器件开关与专业元器件开关公司实力推荐! - 企业推荐官【官方】
  • |微信投票怎么发起?云帆投票超实用完整操作教程 - 投票小程序
  • 邢台黄金回收机构评分排行榜:福昌夏领衔,多维度打分助你变现 - 黄金上门回收
  • Windows安装革命:MediaCreationTool.bat如何让系统部署变得轻松自如
  • 网上超市系统|基于Springboot+vue的网上超市系统设计与实现(源码+数据库+文档)
  • LogoS-7Bx2-MoE-13B-v0.2未来展望:MoE技术发展趋势与模型升级路线图
  • 台车式退火炉哪家好?2026年国产实力厂家与源头工厂深度测评 - 品牌推荐大师
  • 5分钟搞定多显示器DPI优化:终极鼠标平滑过渡方案
  • 如何用KeymouseGo实现鼠标键盘自动化:告别重复工作的终极指南
  • 忻州黄金回收门店精选,长悦引领品质服务新标杆 - 专业黄金回收
  • 为什么选择verysmol_llama-v11-KIx2-openmind?轻量级AI模型的5大核心优势
  • FreeRTOS互斥锁的‘坑’你踩过几个?从创建到释放的完整避坑指南与性能调优
  • 鸿蒙数学:AI 底层革命白皮书(根治全人类AI弊病)(一二三阶定世界)
  • 过滤减压阀(非常推荐)
  • 如何让《空洞骑士》模组管理变得轻松愉快:Scarab模组管理器深度解析
  • 2026廊坊卫生间漏水怎么办?卫生间免砸砖防水维修、阳台漏水,外墙渗漏,屋顶漏水 ,地下室漏水,全天响应 - 吉修匠
  • 2026厦门包包回收实测测评指南:思明正规无损名包回收无套路门店深度测评 - 薛定谔的梨花猫
  • 输入一个关键词,AI 帮你从写稿到出片全自动完成:MoneyPrinterTurbo 深度解析
  • 别再只会用RBAC了!聊聊权限设计的那些坑:从ACL到ABAC,你的系统到底该选哪个?
  • 鸿蒙数学 108 篇 第二十六篇:数轴与三才方位对应
  • 太原黄金回收怎么挑?六家机构速览对比一览 - 专业黄金回收
  • 2026年5月最新|上海GEO优化公司精选推荐,多家本土服务商实力测评与选型参考 - GEO排行榜
  • 深入解析ARK Core v3启动流程与事件驱动架构
  • 转子外壳涂胶用的流量传感器哪家好?2026优质品牌推荐 - 品牌2025