LangChain 介绍
环境
- Anaconda:v25.5.1
- Python:v3.13.9
- LangChain:v1.0.3
什么是 LangChain
LangChain 是一个用于支持 AI 大模型应用开发的框架,它的主张是:强大的 AI 应用不仅是调用模型 API 的,还能感知上下文、连接外部数据,并且借助外部工具与环境进行交互来生成更好的回答。因此,LangChain 提供了一系列组件和链来简化开发过程。比如:如果想要 AI 有记忆,借助 LangChain 的话我们就不需要手动维护一个储存历史消息的列表,我们直接可以创建一个 ConversationBufferMemory 的实例,然后连同模型的实例一起作为对话链的参数即可,后续每次对话时新消息都会自动被添加然后传给模型,相当于模型被外接了记忆。
上述我们所说的 ConversationBufferMemory 只是 LangChain 提供的一个小功能,其实它还提供了很多能力组件,包括:模型、提示模版、记忆、文件加载器、检索器、链、agent等等,这些我们后续都会介绍到,它们可以很大程度上降低我们 AI 应用开发的复杂度。除此之外,LangChain 还为聊天模型和向量数据库等提供了统一的抽象层,相当于在聊天模型和向量数据库之上封装了一层统一的接口,这样我们在后续写好的项目代码里面切换模型和数据库时极为方便,不再需要改动一大堆适配的代码。
Assistant API
Assistant API 是 OpenAI 官方推出的一个 API,它是基于 OpenAI 模型来实现维护对话历史、访问文件和调用工具的一个 API,与原始的 OpenAI API 相比,它有如下优势:
- 它能保留之前的对话历史,让开发者不需手动管理历史对话;
- 它能使用像文件检索器、代码解释器、自定义函数等外部工具,解决 AI 大模型的一些局限性。
乍一看它跟刚才所讲的 LangChain 所做的事情差不多,但是本质上它俩是有很大区别的。具体如下:
- Assistant API 本质上 API,LangChain 则是应用框架;
- 支持模型的范围不同。Assistant API 仅支持 OpenAI 模型,但是 LangChain 则支持市面上几乎所有的 AI 模型;
- 简易性和灵活性不同。Assistant API 更简单、直接,它有很多工作是 OpenAI 直接封装了的,对于开发者而言无法做很多定制化的调整;LangChain 则更加灵活,因为它是开源的,开发者可以随时查看里面的代码,甚至修改代码;
- 应用范围不同。Assistant API 主要用来构建对话型应用,LangChain 则可以构建更复杂的 AI 系统。
所以我们先来学习 LangChain 框架,然后回过头来再看 Assistant API 时会发现,对于它里面隐藏的实现细节不会感到那么陌生和疑惑。
安装 LangChain 及了解核心模块
LangChain 的安装极为简单,通过以下命令即可安装:
pip install langchain
LangChain 提供了很多模块化组件,最核心的组件包括以下几种:
- 模型(Model):提供语言理解和生成能力,是 AI 应用的核心,可以是各种厂商提供的模型;
- 记忆(Memory):用来储存和管理历史对话或相关的上下文信息,是对话性 AI 应用中保持连贯性和上下文感知的关键;
- 链(Chain):用来把不同组件串联起来,进而创建出复杂的流程,流程里的每个组件可以负责处理特定的任务;
- 检索器(Retriever):负责从外部信息源检索信息,对增加模型的知识面和回答准确性很重要;
- Agent:代表一个基于大模型的能执行一系列动作的智能体。它的核心理念是利用 AI 模型的能力进行推理,根据任务动态评估和确定行动路径。
以上就是 LangChain 这个框架最核心的几个组件,接下来的文章我们一一介绍这些组件,完成越来越复杂的 AI 应用。
总结
本文我们主要介绍了 LangChain 框架的定义和安装,以及其包括的几个核心组件的简单介绍,同时也简单介绍了与 LangChain 类似的 OpenAI 提供的一个 API —— Assistant API,并且介绍了两者之间的区别。下一篇文章我们将主要介绍 LangChain 框架的模型、提示模板、输出解析器以及链这几个核心组件。
更多推荐



所有评论(0)