- 大型语言模型 (LLM) 是一项强大且卓越的新技术。
- 当您将 LLM 与外部数据源结合时,它们会变得更加出色。
- LLM 将改变未来应用程序的面貌。具体来说,未来的应用程序将越来越像智能体。
- 这种转变仍处于非常早期的阶段。
- 虽然构建这些智能体应用程序的原型很容易,但要构建足够可靠以投入生产的智能体仍然非常困难。
1
我们希望让开发人员能够使用最好的模型进行构建。
不同的提供商公开不同的 API,具有不同的模型参数和不同的消息格式。标准化这些模型输入和输出是核心关注点,使开发人员可以轻松更改为最新的最先进模型,避免锁定。
2
我们希望让使用模型编排更复杂的流程(与其他数据和计算交互)变得容易。
模型应该不仅仅用于文本生成——它们还应该用于编排与其他数据交互的更复杂的流程。LangChain 使定义 LLM 可以动态使用的工具变得容易,并有助于解析和访问非结构化数据。
历史
鉴于该领域不断变化的步伐,LangChain 也随时间演变。以下是 LangChain 多年来如何随着使用 LLM 构建应用的意义而变化的简要时间线在 ChatGPT 发布前一个月,LangChain 作为 Python 包发布。它包含两个主要组件
- LLM 抽象
- “链”,或预定的计算步骤,用于常见用例。例如 - RAG:运行检索步骤,然后运行生成步骤。
2022-12
第一个通用智能体被添加到 LangChain 中。这些通用智能体基于 ReAct 论文(ReAct 代表推理和行动)。它们使用 LLM 生成表示工具调用的 JSON,然后解析该 JSON 以确定要调用哪些工具。
2023-01
OpenAI 发布了“聊天完成”API。此前,模型接受字符串并返回字符串。在 ChatCompletions API 中,它们演变为接受消息列表并返回消息。其他模型提供商也效仿,LangChain 也更新为支持消息列表。
2023-01
LangChain 发布了 JavaScript 版本。LLM 和智能体将改变应用程序的构建方式,而 JavaScript 是应用程序开发人员的语言。
2023-02
LangChain Inc. 作为一家公司成立,围绕开源 LangChain 项目。主要目标是“让智能体无处不在”。团队认识到,虽然 LangChain 是关键部分(LangChain 使 LLM 入门变得简单),但也需要其他组件。
2023-03
OpenAI 在其 API 中发布了“函数调用”。这允许 API 明确生成表示工具调用的有效负载。其他模型提供商也效仿,LangChain 也更新为使用此方法作为首选的工具调用方法(而不是解析 JSON)。
2023-06
LangSmith 作为 LangChain Inc. 的闭源平台发布,提供可观察性和评估。构建智能体的主要问题是使其可靠,而提供可观察性和评估的 LangSmith 就是为了解决这一需求而构建的。LangChain 已更新,可与 LangSmith 无缝集成。
LangChain 发布了 0.1.0,这是其第一个非 0.0.x 版本。行业从原型阶段发展到生产阶段,因此,LangChain 更加注重稳定性。
2024-02
LangGraph 作为开源库发布。最初的 LangChain 有两个重点:LLM 抽象,以及用于常见应用程序入门的高级接口;但是,它缺少一个低级编排层,允许开发人员控制其智能体的精确流程。于是,LangGraph 诞生了。在构建 LangGraph 时,我们吸取了构建 LangChain 时的经验教训,并添加了我们发现所需的功能:流式传输、持久执行、短期内存、人机协作等等。
2024-06
LangChain 拥有 700 多个集成。集成从核心 LangChain 包中分离出来,要么移入自己的独立包(用于核心集成),要么移入
langchain-community。2024-10
LangGraph 成为构建任何不仅仅是单个 LLM 调用的 AI 应用程序的首选方式。随着开发人员试图提高其应用程序的可靠性,他们需要比高级接口提供的更多控制。LangGraph 提供了这种低级灵活性。LangChain 中的大多数链和智能体都被标记为已弃用,并提供了如何将其迁移到 LangGraph 的指南。LangGraph 中仍然存在一个高级抽象:一个智能体抽象。它建立在低级 LangGraph 之上,并具有与 LangChain 中的 ReAct 智能体相同的接口。
2025-04
模型 API 变得更加多模态。模型开始接受文件、图像、视频等。我们相应地更新了
langchain-core 消息格式,以允许开发人员以标准方式指定这些多模态输入。LangChain 发布 1.0,进行了两个主要更改
-
彻底改造
langchain中的所有链和智能体。所有链和智能体现在都只被一个高级抽象取代:一个建立在 LangGraph 之上的智能体抽象。这是最初在 LangGraph 中创建的高级抽象,只是移到了 LangChain 中。 对于仍在使用旧 LangChain 链/智能体且不希望升级的用户(注意:我们建议您升级),您可以通过安装langchain-classic包继续使用旧 LangChain。 - 标准消息内容格式:模型 API 从返回具有简单内容字符串的消息演变为更复杂的输出类型——推理块、引用、服务器端工具调用等。LangChain 演变其消息格式以标准化这些跨提供商。
以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。