【每天一个知识点】LangChain

"LangChain" 是一个用于构建由大语言模型(LLMs)驱动的可组合、可交互、多工具协作的智能应用开发框架。它不仅能管理 Prompt、上下文、记忆和工具,还支持构建复杂的"多步骤推理"任务流程。


一、LangChain 简介

1. 核心定位

LangChain 旨在把大语言模型作为决策引擎和控制中枢,支持你快速构建像 ChatGPT 插件、智能问答系统、智能体(Agent)等复杂任务应用。

2. 编程语言支持

主要支持 PythonJavaScript/TypeScript 两种语言版本,社区主要以 Python 为主。


二、LangChain 主要组成模块(Python版)

模块 作用描述
PromptTemplates 提示词模板构建与变量注入,适配不同任务语境
LLMs/ChatModels 封装 OpenAI、Anthropic、Cohere 等模型
Chains 把多个组件串联起来构成完整流程(如提问 → 搜索 → 回答)
Agents 引入"工具调用"能力,通过思考和行动完成任务(如 ReAct Agent)
Tools 第三方工具,如搜索引擎、Python 解释器、API 接口
Memory 会话记忆,适用于多轮对话场景
Retrievers 向量检索组件,支持 RAG 应用
Document Loaders & Text Splitters 文档读取与分块,用于知识库构建

三、典型使用场景

1. 文档问答系统(RAG)

  • 流程:文档 → 向量化 → 查询 → LLM 生成回答

  • 模块:Document Loaders + FAISS/Chroma + Retriever + Chain

2. Agent 多工具智能体

  • 通过 ReAct Agent 实现"观察-思考-行动"闭环

  • 可调用:Google 搜索、Python 执行、网页抓取、数据库查询等

3. 任务编排(Multi-step Reasoning)

  • 使用 SequentialChainRouterChainConversationChain 等模块完成复杂任务分解与流程管理

四、LangChain 示例代码(RAG 简易文档问答)

复制代码
from langchain.chains import RetrievalQA
from langchain.chat_models import ChatOpenAI
from langchain.vectorstores import FAISS
from langchain.embeddings import OpenAIEmbeddings
from langchain.document_loaders import TextLoader
from langchain.text_splitter import CharacterTextSplitter

# 加载文档并切分
loader = TextLoader("example.txt")
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size=500, chunk_overlap=50)
texts = text_splitter.split_documents(documents)

# 构建向量库
embeddings = OpenAIEmbeddings()
db = FAISS.from_documents(texts, embeddings)

# 构建问答系统
retriever = db.as_retriever()
llm = ChatOpenAI(temperature=0)
qa = RetrievalQA.from_chain_type(llm=llm, retriever=retriever)

# 测试提问
query = "这篇文档讲了什么?"
response = qa.run(query)
print(response)

五、LangChain 与智能体系统的关系

特性 LangChain 实现方式
工具调用 通过 ToolsAgentExecutor 完成
思维链推理(Chain of Thought) 通过 Chain 的分步提示构建多轮逻辑链
多Agent协同 支持 MultiAgentChain 和外部任务调度引擎集成
RAG 问答 与向量数据库 + Retriever 高度集成
相关推荐
九年义务漏网鲨鱼5 小时前
【大模型学习】现代大模型架构(二):旋转位置编码和SwiGLU
深度学习·学习·大模型·智能体
重整旗鼓~20 小时前
1.大模型使用
java·语言模型·langchain
GPUStack20 小时前
GPUStack v2:推理加速释放算力潜能,开源重塑大模型推理下半场
大模型·vllm·ai网关·sglang·高性能推理
WWZZ202521 小时前
快速上手大模型:深度学习13(文本预处理、语言模型、RNN、GRU、LSTM、seq2seq)
人工智能·深度学习·算法·语言模型·自然语言处理·大模型·具身智能
core51221 小时前
不借助框架实现Text2SQL
sql·mysql·ai·大模型·qwen·text2sql
hnode1 天前
🚀 前端开发者的 AI 入门指南:5 分钟搭建你的第一个 RAG 智能问答系统
langchain
学习编程之路1 天前
ModelEngine vs Dify / Coze / Versatile 全面对比评测
人工智能·智能体
有点不太正常1 天前
《ShadowCoT: Cognitive Hijacking for Stealthy Reasoning Backdoors in LLMs》——论文阅读
论文阅读·大模型·agent安全
大模型真好玩1 天前
LangChain1.0实战之多模态RAG系统(二)——多模态RAG系统图片分析与语音转写功能实现
人工智能·langchain·mcp
大模型教程1 天前
谷歌AI Agent技术指南深度解读,从概念到生产
langchain·llm·agent