LangChain 概览
LangChain 可以理解为一个用于构建 LLM 应用的工程框架。它把模型调用、消息格式、提示词、工具调用、结构化输出、检索增强和 Agent 运行过程拆成一组可组合的组件。
对于后端开发者来说,可以把 LangChain 想成:
- 统一的模型调用层:不同模型厂商的 API 差异被包装成类似接口。
- 提示词与消息编排层:负责把用户输入、系统约束和上下文拼成模型能理解的输入。
- 工具调用层:让模型可以调用天气、数据库、HTTP 接口、订单查询等外部能力。
- Agent 执行层:模型不只是回答文本,而是可以根据任务选择工具、观察结果并继续推理。
- RAG 组件层:把企业文档、知识库、向量检索和大模型回答串起来。
LangChain 与 LangGraph 的关系
LangChain 更偏“快速构建 Agent 应用”,适合常见的模型调用、工具调用、RAG、结构化输出等场景。LangGraph 更偏“底层编排框架”,适合多步骤、长时间运行、有状态、需要人工审批、需要恢复执行的复杂 Agent。
简单理解:
| 场景 | 更适合 |
|---|---|
| 快速接入模型、写一个工具调用 Agent | LangChain |
| 构建 RAG 问答、文档总结、结构化抽取 | LangChain |
| 多步骤审批、可恢复执行、人工介入 | LangGraph |
| 多智能体协作、复杂状态流转 | LangGraph |
一个最小 Agent 形态
python
from langchain.agents import create_agent
def get_weather(city: str) -> str:
return f"{city} 今天适合学习 LangChain"
agent = create_agent(
model="openai:gpt-4.1-mini",
tools=[get_weather],
system_prompt="你是一个中文 AI 助手"
)
result = agent.invoke({
"messages": [{"role": "user", "content": "北京天气怎么样?"}]
})
print(result["messages"][-1].content)这个例子里,模型可以根据用户问题决定是否调用 get_weather 工具,再组织最终回答。
学习路线
- 模型接口:知道怎么调用模型。
- Prompt:知道怎么控制模型输入。
- Tool:知道怎么让模型调用外部能力。
- Agent:知道怎么让模型循环思考和行动。
- RAG:知道怎么把企业知识接入模型。
- LangGraph:知道怎么做复杂工作流和人工审批。
非官方声明
本站为个人维护的非官方中文学习文档,不代表 LangChain 官方。页面内容是基于公开文档、源码实践和中文开发者视角重新整理的学习资料。涉及 API 细节时,请以官方文档和实际安装版本为准。
参考来源
- LangChain / LangGraph 官方文档:
https://docs.langchain.com/ - LangChain API Reference:
https://reference.langchain.com/ - 本站内容为中文学习整理,不做官方身份声明。