LangChain 2026 入门指南:用 Python 构建你的第一个 LLM 应用
大模型应用开发的标准框架。从 Chain 到 Agent,一步步带你掌握 LLM 编排的艺术。
如果说大模型是大脑,那么 LangChain 就是连接大脑与四肢的神经网络。
在 2026 年,单纯调用 LLM API 已经无法满足复杂的业务需求。你需要让 AI 记住上下文、搜索网络、查询数据库、根据情况调用工具。LangChain 就是为此而生的框架,目前它已经成为构建 LLM 应用的事实标准。
什么是 LangChain?
LangChain 是一个用于开发由语言模型驱动的应用程序的框架。它提供了一套标准化的接口,让你能够像搭积木一样,将不同的组件(模型、提示词、内存、索引、代理)组合在一起。
核心组件:
- Models (模型):通用的 API 接口,无论是 OpenAI、Anthropic 还是本地的 Ollama,想切就切。
- Prompts (提示词):更科学地管理和复用 Prompt 模板。
- Chains (链):将多个步骤串联起来(例如:先总结文章,再翻译成中文)。
- Agents (代理):让 AI 根据任务自主决定下一步做什么(例如调用搜索工具)。
- Memory (记忆):让 AI 记住多轮对话的内容。
- LangGraph (新星):2026 年的重头戏,用于构建复杂的、有环的、多智能体协作系统。
环境搭建
1. 安装 Python
确保你的 Python 版本 >= 3.10。
2. 安装 LangChain
我们建议使用 pip 安装。
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Windows 用户使用 venv\Scripts\activate
# 安装核心库
pip install langchain langchain-openai langchain-community
3. 配置 API Key
export OPENAI_API_KEY="sk-proj-xxxxxxxx"
你的第一个 LLM 应用:翻译助手
我们先写一个最简单的 Chain:接收用户输入,将其翻译成法语。
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
# 1. 初始化模型
model = ChatOpenAI(model="gpt-4o")
# 2. 创建提示词模板
prompt = ChatPromptTemplate.from_template(
"请将下面的文本翻译成{language}:\n{text}"
)
# 3. 定义输出解析器(直接提取字符串结果)
parser = StrOutputParser()
# 4. 构建 Chain(使用 LCEL 语法,像管道一样连接)
chain = prompt | model | parser
# 5. 运行
result = chain.invoke({"language": "法语", "text": "你好,我想学习 LangChain。"})
print(result)
# 输出: Bonjour, je veux apprendre LangChain.
看,这就是 LCEL (LangChain Expression Language) 的魅力。通过 | 符号,我们将提示词、模型和解析器串联成了一个流水线。
进阶玩法:构建 RAG (知识库问答)
只要稍微改几行代码,就可以让 AI 回答私有数据的问题。
from langchain_community.document_loaders import WebBaseLoader
from langchain_openai import OpenAIEmbeddings
from langchain_community.vectorstores import FAISS
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain.chains import create_retrieval_chain
from langchain.chains.combine_documents import create_stuff_documents_chain
# 1. 加载网页数据
loader = WebBaseLoader("https://docs.langchain.com/docs")
docs = loader.load()
# 2. 切分文档
text_splitter = RecursiveCharacterTextSplitter()
documents = text_splitter.split_documents(docs)
# 3. 存入向量数据库
vector = FAISS.from_documents(documents, OpenAIEmbeddings())
# 4. 创建检索器
retriever = vector.as_retriever()
# 5. 创建问答链
prompt = ChatPromptTemplate.from_template("""根据下面的上下文回答问题:
<context>
{context}
</context>
问题:{input}""")
document_chain = create_stuff_documents_chain(model, prompt)
retrieval_chain = create_retrieval_chain(retriever, document_chain)
# 6. 提问
response = retrieval_chain.invoke({"input": "LangChain 是什么?"})
print(response["answer"])
LangSmith:调试神器
开发 LLM 应用最痛苦的是什么?是不知道由于哪一步出错导致输出离谱。 LangSmith 是 LangChain 官方推出的监控平台。只要设置环境变量:
export LANGCHAIN_TRACING_V2="true"
export LANGCHAIN_API_KEY="your-api-key"
你所有的 Chain 运行轨迹、Token 消耗、延迟时间都会在 Web 后台可视化展示。这对于优化 Prompt 和调试 Agents 至关重要。
下一步学什么?
- LangServe:一键把你的 Chain 部署成 REST API。
- LangGraph:学习如何构建有状态的、循环的 Agent 流程(这是 2026 年的主流)。
- 多模态:尝试引入图像和音频模型。
LangChain 正在把 AI 开发的门槛降到最低。现在,任何人都可以是 AI 工程师。