目录
一、LangChain模型分类
现在市面上的模型多如牛毛,各种各样的模型不断出现,LangChain模型组件提供了与各种模型的集成,并为所有模型提供一个精简的统一接口。
LangChain目前支持三种类型的模型:LLMs(大语言模型)、Chat Model(聊天模型)、Embedding Models(嵌入模型)。
LLMs(大语言模型):是技术范畴的统称,指的是基于海量文本训练的 Transformer 架构模型,核心能力是理解和生成自然语言,主要服务于文本生成场景。
Chat Model(聊天模型):是应用范围的细分,是专为对话场景优化的LLMs,核心能力是模拟人类对话的轮次交互,主要服务于聊天场景。
Embedding Models(嵌入模型):文本嵌入模型接收文本作为输入,得到文本的向量。
LangChain支持的三类模型,它们的使用场景不同,输入和输出不同。
阿里云通义千问系列主要来源于:langchain_community包。
二、LangChain调用大语言模型
我使用的大语言模型是qwen3.5-plus。
注意:其实Tongyi在调用的时候还需要一个dashscope_api_key=DASHSCOPE_API_KEY,API Key,我已经配置在环境变量中了,它会自动取检索。
python
from langchain_community.llms.tongyi import Tongyi
# 实例化模型
model = Tongyi(model_name="qwen3.5-plus")
# 模型推理
response = model.invoke("帮我讲个笑话吧")
print(response)
流式输出
python
from langchain_community.llms.tongyi import Tongyi
# 实例化模型
model = Tongyi(model_name="qwen3.5-plus")
# 模型推理
response = model.stream("给我讲个笑话吧")
for chunk in response:
print(chunk, end="", flush=True)
三、LangChain调用本地Ollama大语言模型
python
from langchain_ollama import OllamaLLM
model = OllamaLLM(model="qwen3:4b")
response = model.invoke("给我讲个笑话吧")
print(response)
流式输出
python
from langchain_ollama import OllamaLLM
model = OllamaLLM(model="qwen3:4b")
response = model.stream("给我讲个笑话吧")
for chunk in response:
print(chunk, end="", flush=True)