LangChain 入门:从概念到环境配置的宝宝级上手博客
LangChain 入门:从概念到环境配置,快速了解基本概念
当大语言模型(LLM)逐渐成为应用开发的重要组成部分,仅仅会调用 OpenAI、DeepSeek 或 Claude 的 API 已经远远不够。真正的 AI 应用往往需要具备上下文记忆、知识检索、工具调用以及复杂工作流等能力,而 LangChain 正是连接这些能力的重要框架。
文章目录
一、为什么需要 LangChain?
很多开发者第一次接触大模型时,都会直接调用官方 API,例如:
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY")
response = client.chat.completions.create(
model="gpt-4.1",
messages=[
{
"role": "user",
"content": "你好"
}
]
)
print(response.choices[0].message.content)
对于简单的问答场景,这种方式已经足够。
但是,当项目逐渐复杂之后,你会发现真正困难的地方并不是调用一次 API,而是围绕模型构建完整的应用能力。
例如:
- 如何让模型记住之前的聊天内容?
- 如何让模型读取企业内部文档?
- 如何调用天气、搜索、数据库等外部工具?
- 如何保证输出固定 JSON 格式?
- 如何实现复杂任务拆解和自主执行?
如果全部自己实现,你需要不断处理:
- Prompt 拼接
- 上下文管理
- Token 控制
- 工具调用
- 输出解析
- 错误重试
- 工作流管理
真正的业务代码可能只占整个项目的一小部分,大量时间都会花在这些重复性的基础工作上。
因此,LangChain 的定位并不是替代模型,而是帮助开发者快速搭建完整的大模型应用,让更多精力投入到业务逻辑,而不是重复造轮子。
二、什么是 LangChain?
LangChain 是一个用于开发 LLM(Large Language Model)应用 的开源框架。
它提供了一套统一的开发规范,将 Prompt、模型调用、上下文管理、工具调用、知识检索以及 Agent 等能力全部进行了标准化封装。
可以理解为:
大模型负责思考,LangChain 负责组织整个应用流程。
它不会替代 OpenAI、Claude、DeepSeek 等模型,而是充当这些模型与业务系统之间的桥梁。
借助 LangChain,开发者可以更加方便地构建:
- AI 聊天助手
- 企业知识库
- RAG 应用
- 自动办公系统
- AI Agent
- 智能客服
- 文档分析系统
随着 LangChain v1.x 的发布,它已经逐渐成为当前 Python AI 应用开发中最主流的框架之一。
三、LangChain 可以解决什么问题?
相比直接调用模型 API,LangChain 最大的优势在于提供了完整的能力组件。
| 能力 | 作用 |
|---|---|
| Models | 统一调用各种大模型 |
| Prompts | 管理 Prompt 模板 |
| Messages | 管理聊天上下文 |
| Output Parser | 解析模型输出 |
| Memory | 保存历史对话 |
| Tools | 调用外部工具 |
| RAG | 构建知识库问答 |
| Agent | 实现自主决策 |
| LCEL | 组合完整工作流 |
这些模块彼此独立,又可以自由组合。
例如,一个企业知识库问答系统通常包含以下流程:
用户问题
│
▼
Prompt 模板
│
▼
Retriever 检索知识库
│
▼
LLM 推理生成
│
▼
Output Parser
│
▼
返回最终答案
开发者只需要将对应模块连接起来,而无需重复实现底层逻辑。
四、LangChain 生态体系
随着版本不断更新,LangChain 已经不仅仅是一个 Python 库,而是形成了完整的官方生态。
目前主要包含三个部分:
Deep Agents
│
▼
LangChain
│
▼
LangGraph
它们分别负责不同层面的能力。
1、LangChain
最常使用的开发框架。
主要负责:
- Prompt
- Models
- Tools
- Memory
- RAG
- Chains
- Agent
2、LangGraph
当项目开始涉及复杂流程时,例如:
- 多 Agent 协同
- 状态流转
- 人工审批
- 长任务执行
- 企业级工作流
官方推荐使用 LangGraph。
它采用状态图(State Graph)描述整个执行流程,开发者可以精确控制每一步执行逻辑。
3、Deep Agents
Deep Agents 是官方推出的新一代 Agent 开发套件。
相比 LangChain,它更强调:
- 自动规划
- 自动拆解任务
- 自动调用工具
- 自动协调多个 Agent
开发者只需要描述目标即可,大部分流程都会自动完成。
五、LangChain 核心架构
整个 LangChain 可以理解为三层结构。
AI Application
│
┌──────────────┴──────────────┐
│ 应用能力层 │
│ Chain | Agent | RAG | LCEL │
└──────────────┬──────────────┘
│
┌──────────────┴──────────────┐
│ 能力组件层 │
│ Prompt | Memory | Tools │
│ Output Parser | Messages │
└──────────────┬──────────────┘
│
┌──────────────┴──────────────┐
│ 模型接口层 │
│ OpenAI Claude DeepSeek 等 │
└─────────────────────────────┘
整个调用流程如下:
用户输入
│
▼
Prompt
│
▼
Model
│
▼
Tools(可选)
│
▼
Memory(保存上下文)
│
▼
Output Parser
│
▼
最终结果
这种模块化设计让 LangChain 既具有很高的灵活性,又便于维护和扩展。
六、环境准备
目前官方推荐使用 uv 管理 Python 项目。
相比传统的 pip 或 conda,uv 具有以下优势:
- 安装速度更快
- 自动创建虚拟环境
- 自动锁定依赖版本
- 支持 Python 多版本管理
- 更适合团队协作
1、安装 uv
Windows:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
macOS / Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
验证安装:
uv --version
2、创建项目
mkdir langchain-demo
cd langchain-demo
uv init
指定 Python 版本:
uv python pin 3.12
3、安装 LangChain
安装核心依赖:
uv add langchain
安装 OpenAI 支持:
uv add langchain-openai
安装环境变量工具:
uv add python-dotenv
如果需要其他模型,可以继续安装:
uv add langchain-anthropic
uv add langchain-google-genai
uv add langchain-ollama
uv add langchain-deepseek
4、项目目录
安装完成后,目录结构通常如下:
langchain-demo
│
├── .venv
├── pyproject.toml
├── uv.lock
└── main.py
各文件作用:
| 文件 | 说明 |
|---|---|
| pyproject.toml | 项目配置和依赖 |
| uv.lock | 锁定依赖版本 |
| .venv | 虚拟环境 |
| main.py | 项目入口 |
建议将 .venv 添加到 .gitignore,避免提交虚拟环境。
七、配置模型 API
为了避免 API Key 泄露,推荐使用 .env 文件统一管理配置。
创建 .env
OPENAI_API_KEY=你的API_KEY
OPENAI_BASE_URL=https://api.openai.com/v1
如果使用 DeepSeek:
DEEPSEEK_API_KEY=你的API_KEY
读取环境变量
import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
load_dotenv()
llm = ChatOpenAI(
model="gpt-4.1",
api_key=os.getenv("OPENAI_API_KEY"),
base_url=os.getenv("OPENAI_BASE_URL")
)
如果使用兼容 OpenAI API 的平台(如 DeepSeek、硅基流动、阿里百炼等),通常只需修改 base_url 和对应的 API Key,其余业务代码保持不变。
八、第一个 LangChain 程序
完成环境配置后,可以运行一个简单示例,验证是否能够正常调用模型。
import os
from dotenv import load_dotenv
from langchain_openai import ChatOpenAI
load_dotenv()
llm = ChatOpenAI(
model="gpt-4.1",
api_key=os.getenv("OPENAI_API_KEY"),
base_url=os.getenv("OPENAI_BASE_URL")
)
response = llm.invoke("请用一句话介绍 LangChain。")
print(response.content)
如果能够成功输出模型回复,说明环境已经配置完成。
九、总结
LangChain 并不是一个新的大语言模型,而是一套围绕大模型开发的应用框架。它通过统一接口整合模型调用、Prompt 管理、工具调用、上下文记忆、知识检索以及 Agent 等能力,大幅降低了 AI 应用开发的复杂度。
完成以上内容的学习后,基本可以独立开发聊天机器人、企业知识库、智能 Agent 等主流 AI 应用。
初步了解LangChain后我们将正式进入 Model I/O,学习 LangChain 如何统一接入 OpenAI、DeepSeek、Claude 等不同模型,并掌握最基础的模型调用方式。
更多推荐

所有评论(0)