LangChain 发展历程
由于该领域快速发展,LangChain 也在快速发展。本文档旨在概述 LangChain 的主要变化及其原因。
0.1
0.1 版本为 LangChain 带来了一些重大变化。到此时,LangChain 生态系统已经变得很大,包括其功能的广度以及背后的社区。
拆分包
LangChain 被拆分为几个包,以提高模块化并减少臃肿。首先,创建了 @langchain/core
作为轻量级核心库,包含基本抽象、这些抽象的一些核心实现以及用于创建链的通用运行时。接下来,所有第三方集成都被拆分为 @langchain/community
或其各自的独立合作伙伴包。高级链和代理仍然保留在 langchain
中。
可运行对象
为每个链创建一个特定的类已被证明不是非常可扩展或灵活。虽然这些类在这个版本中被保留(没有弃用警告),但在文档中为通用可运行对象提供了更多空间。
< 0.1
LangChain 0.1 版本之前具有几个关键特征。
单个包
LangChain 主要是一个单一包。这意味着所有集成都位于 langchain
中。
链作为类
大多数高级链都是它们自己的类。有一个 Chain
基类,所有链都继承自该类。这意味着为了链接链内部的逻辑,你基本上需要修改源代码。有一些旨在更加通用的链(SequentialChain
、RouterChain
)。