Part 2|各类模型接入 LangChain 1.0 流程(详细笔记)
安装对应集成包dashscope(或 OpenAI 兼容模式)准备鉴权信息.env写入,用加载本地模型:确保服务已启动,模型已下载且名称正确初始化 Chat Model调用统一用获取结果(可能含推理、token、工具调用等扩展信息)
0. 课程与环境说明(Notebook 开头信息)
-
这是《LangChain 1.0 入门实战》的 Part 2:各类模型接入 LangChain 流程
-
环境要求:
-
LangChain >= 1.0.0 -
Python >= 3.11 -
若版本过低,建议用升级命令(示例):
pip install -U <包名>
-
1. LangChain 1.0 接入 DeepSeek 模型流程
这一节的核心:先验证 API 可用 → 再用 LangChain 封装调用 →(可选)读取推理链 reasoning_content。
1.1 安装 LangChain & 查看版本
-
安装(Notebook 中是注释写法):
pip install langchain -
查看版本:
import langchain langchain.__version__
1.2 准备 DeepSeek API Key(.env)
Notebook 的建议做法:
-
在项目同级目录创建
.env文件 -
写入(示意):
DEEPSEEK_API_KEY=你的key
Notebook 中用截图演示了创建
.env文件与写入方式。
1.3 用 python-dotenv 加载 .env 到环境变量
安装依赖:
pip install python-dotenv
加载并读取:
import os
from dotenv import load_dotenv
load_dotenv(override=True)
DeepSeek_API_KEY = os.getenv("DEEPSEEK_API_KEY")
# print(DeepSeek_API_KEY) # 可以通过打印查看
1.4 不用 LangChain:先用 DeepSeek 的 OpenAI 风格接口测试连通性
目的:排除 Key/网络/base_url 等问题(确保能“直接打通”再谈 LangChain)
安装 OpenAI SDK:
pip install openai
调用测试代码(Notebook 原代码):
from openai import OpenAI
# 初始化DeepSeek的API客户端
client = OpenAI(api_key=DeepSeek_API_KEY, base_url="https://api.deepseek.com")
# 调用DeepSeek的API,生成回答
response = client.chat.completions.create(
model="deepseek-chat",
messages=[
{"role": "system", "content": "你是乐于助人的助手,请根据用户的问题给出回答"},
{"role": "user", "content": "你好,请你介绍一下你自己。"},
],
)
# 打印模型最终的响应结果
print(response.choices[0].message.content)
✅ 如果能正常返回,说明:
-
DEEPSEEK_API_KEY有效 -
网络可访问
https://api.deepseek.com -
OpenAI SDK 版本/调用方式 OK
1.5 用 LangChain 接入 DeepSeek(langchain-deepseek)
安装 LangChain 的 DeepSeek 集成包:
pip install langchain-deepseek
初始化与调用(Notebook 原代码):
from langchain_deepseek import ChatDeepSeek
model = ChatDeepSeek(model="deepseek-chat")
调用:
question = "你好,请你介绍一下你自己。"
result = model.invoke(question)
print(result.content)
1.5.1 invoke() 返回值是什么?
result 通常是一个消息对象(类似 AIMessage),常用字段:
-
result.content:模型最终输出文本 -
result.additional_kwargs:额外信息(不同模型/厂商会塞不同结构)
1.6 调用 deepseek-reasoner 并读取推理过程(reasoning_content)
切换模型为推理模型:
model = ChatDeepSeek(model="deepseek-reasoner")
result = model.invoke(question)
print(result.content)
查看完整对象与附加字段:
result
result.additional_kwargs
result.additional_kwargs['reasoning_content']
✅ 这一步的意义:
-
result.content:最终“答复” -
result.additional_kwargs['reasoning_content']:推理链/思考过程(如果该模型与 SDK 返回了该字段)
注意:并非所有模型都提供推理内容;字段名也可能因厂商实现而不同。
1.7 “一键切模型”的核心思想(Notebook 文本说明)
Notebook 解释了一个重要观念:
LangChain 能支持很多模型(OpenAI / Qwen / Gemini 等),一般路径是:
-
选定模型提供方
-
安装对应集成包
-
初始化对应
ChatXXX类 -
调用
invoke()
并提示:可在 LangChain 的 integrations 文档里查支持的模型与接入方式(Notebook 给了链接与截图)。
2. LangChain 1.0 接入 OpenAI 模型流程
核心:安装 langchain-openai + 配置 API KEY +(必要时)处理网络/代理/base_url。
2.1 安装集成包
pip install langchain-openai
2.2 配置 .env
Notebook 提示:在 .env 中写入 OpenAI 的 API Key(示意):
OPENAI_API_KEY=你的key
2.3 初始化与调用(Notebook 原代码)
from langchain_openai import ChatOpenAI
model = ChatOpenAI(model="gpt-5-nano",base_url="https://ai.devtool.tech/proxy/v1")
question = "你好,请你介绍一下你自己。"
result = model.invoke(question)
print(result.content)
2.3.1 关键点:base_url 与网络环境
Notebook 的注释要点:
-
使用 OpenAI 模型需要设置好网络环境
-
或者使用代码中这种“国内反向代理地址”(
base_url=...)
实际工程中:
base_url走第三方代理要格外注意安全与合规(key 的保护、日志、数据出境等)。
3. LangChain 1.0 接入 DashScope(阿里百炼)平台模型流程
这一节给了两条路线:
-
OpenAI 兼容模式(直接用 OpenAI SDK 调用 DashScope endpoint)
-
LangChain 内部集成(
langchain_community的ChatTongyi)
3.1 DashScope / 百炼平台基本信息(Notebook 文本)
-
DashScope(百炼)提供大量模型(含开源模型与在线商业模型)
-
需要注册阿里云账号并获取 API Key
-
Notebook 强调:把
DASHSCOPE_API_KEY写到本地.env文件中
3.2 路线 A:OpenAI 兼容模式调用(Notebook 原代码)
import os
from openai import OpenAI
client = OpenAI(
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
# 模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models
model="qwen-plus",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "你是谁?"},
],
)
print(completion.model_dump_json())
✅ 这条路线的优点:
-
统一 OpenAI SDK 的调用方式(对接成本低)
-
便于把“不同厂商”包装成一致调用接口
3.3 路线 B:LangChain 接入 DashScope(ChatTongyi)
Notebook 给出的安装与调用顺序:
安装/升级 dashscope(清华源示例):
pip install --upgrade dashscope -i https://pypi.tuna.tsinghua.edu.cn/simple
安装 langchain_community(清华源示例):
pip install langchain_community -i https://pypi.tuna.tsinghua.edu.cn/simple
使用 ChatTongyi:
from langchain_community.chat_models.tongyi import ChatTongyi
model = ChatTongyi()
调用:
question = "你好,请你介绍一下你自己。"
result = model.invoke(question)
print(result.content)
说明:
ChatTongyi()默认会从环境变量/配置中读取 key;生产环境里建议用更明确的配置方式(如统一配置管理/密钥管理)。
4. LangChain 1.0 接入 Ollama 本地模型流程
核心:本地推理前提是 Ollama 已启动 + 本地已有模型,然后用 langchain-ollama 封装调用。
4.1 背景(Notebook 文本)
-
除了在线模型,也可以用本地推理框架:
Ollama、vLLM等 -
Notebook 用 Ollama 演示
4.2 安装集成包
pip install langchain-ollama
4.3 初始化与调用(Notebook 原代码)
from langchain_ollama import ChatOllama
确保 Ollama 已开启,并确认模型名称(Notebook 用截图提示通过 ollama list 等方式查看)。
初始化:
model = ChatOllama(model="deepseek-r1")
调用:
question = "你好,请你介绍一下你自己。"
result = model.invoke(question)
print(result.content)
5. 通用接入套路总结(可当“Checklist”)
无论 DeepSeek / OpenAI / DashScope / Ollama,本 Notebook 体现的“最通用流程”基本是:
-
安装对应集成包
-
DeepSeek:
langchain-deepseek -
OpenAI:
langchain-openai -
DashScope:
dashscope+langchain_community(或 OpenAI 兼容模式) -
Ollama:
langchain-ollama
-
-
准备鉴权信息
-
在线模型:
.env写入XXX_API_KEY,用python-dotenv加载 -
本地模型:确保服务已启动,模型已下载且名称正确
-
-
初始化 Chat Model
-
ChatDeepSeek(...) -
ChatOpenAI(...) -
ChatTongyi() -
ChatOllama(...)
-
-
调用
-
统一用
invoke(prompt_or_messages)获取结果 -
读结果主要看:
-
result.content -
result.additional_kwargs(可能含推理、token、工具调用等扩展信息)
-
-
6. Notebook 中提到的参考入口(按原文保留为代码块,避免“裸 URL”)
DeepSeek 平台(Notebook 文本中给出):
https://platform.deepseek.com/usage
LangChain Chat Integrations(Notebook 文本中给出):
https://python.langchain.com/docs/integrations/chat/
DashScope / 百炼(Notebook 文本中给出):
https://bailian.console.aliyun.com/
LangChain OSS integrations(Notebook 文本中给出):
https://docs.langchain.com/oss/python/integrations/chat
更多推荐

所有评论(0)