目录
- 1 LangChain 基础介绍
- 1.1 什么是 LangChain
- 1.1.1 为什么需要 LangChain
- 1.1.2 LangChain 包结构
- 1.2 LangChain 四大核心模块
- 2 项目环境准备
- 2.1 .env 文件管理密钥(项目推荐)
- 2.2 Windows 全局环境变量(学习使用)
- 3 Model I/O 模型调用实战
- 3.1 调用在线大模型(OpenAI 兼容接口)
- 3.1 OpenAI 原生 SDK 调用
- 3.2 LangChain 统一调用模型
- 3.3 消息类型(System/Human/AI/Tool)
- 3.4 四种调用方式
- 3.2 本地模型 Ollama 部署调用
- 3.1 Ollama 介绍
- 3.3 LangChain 调用 Ollama 本地模型
- 4 本章小结
1 LangChain 基础介绍
1.1 什么是 LangChain
LangChain 2022 年 10 月发布,早于 ChatGPT,是主流 LLM 应用开发开源框架,统一封装各类大模型、工具、知识库能力,快速搭建问答、RAG、Agent 智能体。 官方地址:
- Github:https://github.com/langchain-ai/langchain
- 官网:https://www.langchain.com/langchain
1.1.1 为什么需要 LangChain
原生 LLM API 存在诸多局限:
- 知识滞后,无法获取实时信息
- 不能读取企业私有文档
- 无法联网、查询数据库、调用第三方接口
- 输出不稳定,难结构化
直接调用各家 API 学习成本高,LangChain 提供统一标准接口,切换模型零成本,内置 Agent、RAG 完整方案。
1.1.2 LangChain 包结构
表格
| 包名 | 作用 |
|---|---|
| langchain | 主包,高层应用组件 |
| langchain-core | 底层统一抽象、Runnable 标准 |
| langchain-openai/langchain-deepseek | 各家模型集成包 |
| langchain-text-splitters | 文档切分工具 |
| langchain-mcp-adapters | MCP 协议工具适配 |
1.2 LangChain 四大核心模块
1 Model I/O:模型输入输出标准化(提示模板、调用、输出解析) 2 Chains:LCEL 链式组合,串联多个步骤 3 Retrieval(RAG):文档加载、切片、向量库检索 4 Agents:自主智能体,可规划任务、调用工具
2 项目环境准备
1 新建 conda 虚拟环境,Python=3.12
conda create -n langchain python=3.12 conda activate langchain2 安装基础依赖
pip install langchain langchain-core python-dotenv3 配置 API 密钥管理
2.1 .env 文件管理密钥(项目推荐)
项目根目录新建.env
OPENAI_API_KEY=sk-xxx OPENAI_BASE_URL=https://xxx/v1 DEEPSEEK_API_KEY=sk-xxx读取代码:
from dotenv import load_dotenv import os load_dotenv() api_key = os.getenv("OPENAI_API_KEY")注意:.env 不要提交 git
2.2 Windows 全局环境变量(学习使用)
Win 搜索「编辑系统环境变量」,在用户变量新建 KEY、BASE_URL 字段,重启终端生效。
3 Model I/O 模型调用实战
3.1 调用在线大模型(OpenAI 兼容接口)
3.1 OpenAI 原生 SDK 调用
from openai import OpenAI import os from dotenv import load_dotenv load_dotenv() client = OpenAI(base_url=os.getenv("OPENAI_BASE_URL"),api_key=os.getenv("OPENAI_API_KEY")) # ChatCompletion 传统接口 res = client.chat.completions.create( model="gpt-4o-mini", messages=[{"role":"user","content":"你好"}] ) print(res.choices[0].message.content)3.2 LangChain 统一调用模型
两种初始化方式:init_chat_model / ChatOpenAI
from langchain.chat_models import init_chat_model llm = init_chat_model( model="gpt-4o-mini", model_provider="openai", base_url=os.getenv("OPENAI_BASE_URL"), api_key=os.getenv("OPENAI_API_KEY"), temperature=0 ) resp = llm.invoke("你好") print(resp.content)3.3 消息类型(System/Human/AI/Tool)
from langchain_core.messages import SystemMessage,HumanMessage res = llm.invoke([ SystemMessage(content="你是Python专家"), HumanMessage(content="写快速排序") ])3.4 四种调用方式
1 同步 invoke:单次问答 2 异步 ain:高并发服务使用 3 stream 流式:打字机实时输出 4 batch 批量:一次性处理多条问题
3.2 本地模型 Ollama 部署调用
3.1 Ollama 介绍
本地开源大模型运行工具,一键下载运行 Qwen、DeepSeek 等开源模型,支持 LangChain 无缝集成。
1 官网下载 Windows/Mac/Linux 客户端 2 命令拉取模型:ollama run qwen3:8b3 修改模型存储路径,避免 C 盘占用
3.3 LangChain 调用 Ollama 本地模型
pip install langchain-ollama from langchain_ollama import ChatOllama llm = ChatOllama(model="qwen3:8b",base_url="http://localhost:11434") res = llm.invoke("介绍LangChain") print(res.content)4 本章小结
1 LangChain 四大核心:Model I/O、Chains、RAG、Agents 2 密钥统一用.env 文件管理,避免硬编码泄露 3 在线模型统一使用兼容 OpenAI 接口调用 4 Ollama 快速本地运行开源大模型,适合离线开发