如果你已经会用某一家大模型的 API,却在换模型、做流式输出、批量跑任务时被各家 SDK 的差异折磨过,那么 LangChain 大概率就是你要找的东西。这是本系列的第一篇,从“为什么需要它”讲起,带你走完初始化模型、四种消息写法、同步/异步、流式输出、批量调用和提示词模板这条主线;第二篇会继续讲输出解析与链式编排。
一、为什么需要 LangChain#
直接用官方 SDK 调大模型当然可行,OpenAI、Anthropic、Google 都提供了自己的 Python 库。但只要项目稍微认真一点,你很快会撞上两类问题:
第一类:接口不统一。 每家厂商的 SDK 参数名、返回结构、流式协议都不一样。今天用 GPT,明天想切换到 DeepSeek 或 Gemini 对比效果,业务代码就得跟着改一遍。模型能力迭代很快,“随时可以换模型”应该是架构能力,而不是重构任务。
第二类:模型本身有短板。 裸模型不会联网搜索、不会调用外部工具、不会记住上一轮对话。这些能力都需要在模型之外用工程手段补齐——提示词拼装、工具调用循环、对话历史管理……每一件事都不难,但每一件事都要自己写,就很难了。
LangChain 解决的正是这两件事:
- 统一异构模型的 API——一套调用语法适配所有主流模型厂商,切换模型基本只改一个字符串;
- 提供任务编排能力——把提示词、模型、工具、记忆、知识库串成一条可维护的链路。
从学习路线的角度,LangChain 通常被拆成四大模块,也正好是循序渐进的四个阶段:
| 模块 | 解决什么问题 |
|---|---|
| Model I/O | 构建输入(提示词模板)、调用模型、解析输出 |
| Chains | 把多个步骤编排成链,实现多步任务 |
| RAG | 检索增强生成,让模型基于你的私有文档回答问题 |
| Agents | 让模型自主决策调用哪些工具、如何完成任务 |
本文聚焦在 Model I/O——它是一切的地基,后面三个模块都建立在“会调模型”这件事之上。
二、准备工作:安装与密钥管理#
安装很简单,按你要用的厂商装对应的扩展即可:
pip install -U "langchain[openai]" # OpenAI 及兼容 OpenAI 协议的模型
pip install -U "langchain[anthropic]" # Anthropic Claude
pip install -U "langchain[google-genai]" # Google Gemini
API Key 这类敏感信息不要写死在代码里。推荐的做法是放进环境变量,有两种常见方案:
- 系统环境变量:适合生产环境,配置后记得重启 IDE 才能生效;
- 项目内的
.env文件:适合开发环境,配合python-dotenv读取。注意.env要加入.gitignore,另外维护一份脱敏的.env.example提交到仓库,方便协作者知道需要配置哪些变量。
from dotenv import load_dotenv
# 读取 .env 文件中的 OPENAI_API_KEY、OPENAI_BASE_URL 等配置
# 默认系统环境变量优先;override=True 则让 .env 文件优先
load_dotenv(override=True)



还没有公开留言,成为第一个写下回声的人。