LangChain Model组件!
LangChain Model组件!
月伴飞鱼Model组件的基本组成
Model 是 LangChain 的核心组件,但是
LangChain本身不提供自己的 LLM,而是提供了一个标准接口。用于封装不同类型的 LLM 进行交互。
其中 LangChain 为两种类型的模型提供接口和集成。
LLM:使用纯文本作为输入和输出的大语言模型。
Chat Model:使用聊天消息列表作为输入并返回聊天消息的聊天模型。
在 LangChain 中,无论是 LLM 亦或者 Chat Model 都可以接受 PromptValue/字符串/消息列表 作为参数。
内部会根据模型的类型自动转换成字符串亦或者消息列表,屏蔽了不同模型的差异。
对于 Model 组件,LangChain 有一个模型总基类,并对基类进行了划分。
调用大模型最常用的方法为:
invoke:传递对应的文本提示/消息提示,大语言模型生成对应的内容。
batch:invoke 的批量版本,可以一次性生成多个内容。
stream:invoke 的流式输出版本,大语言模型每生成一个字符就返回一个字符。
基础聊天应用的运行流程更改成如下:
Message组件
在 LangChain 中,Message 是消息组件。
所有消息都具有type(类型)、content(内容)、response_metadata(响应元数据)。
LangChain 封装的 Message 涵盖了 5 种类型的消息:
- SystemMessage、HumanMessage、AIMessage、FunctionMessage、ToolMessage。

















