今天,我们非常激动地宣布,LangChain 0.1.0 版本正式发布了,这是我们推出的首个稳定版本。这个版本能够兼容以前的版本,提供了 Python 和 JavaScript 两种编程语言的支持,并通过改进功能和文档,使得我们的产品更加专注和高效。LangChain 的这个稳定版本不仅赢得了开发者们的信任,还为我们提供了一个系统且安全地更新和完善这个软件库的机会。
简介
LangChain 已经诞生一年多,它在成长为 LLM 应用的首选框架过程中,经历了诸多变化。就像我们一个月前预览的那样,我们近期对 LangChain 的包架构做了重大调整,目的是为了更好地组织这个项目,同时也加强了它的基础结构。
具体来说,我们进行了两项重要的架构变革:一是分离出了 langchain-core 核心模块;二是将合作伙伴的包分为 langchain-community 社区版或独立的合作伙伴包。
提醒一下,langchain-core 包含了主要的抽象概念、接口和核心功能。这部分代码已经非常稳定,并在过去一个多月里遵循了更加严格的版本管理政策。
但是,LangChain 本身之前一直停留在 0.0.x 版本。所有版本都处于初级阶段,这带来了一些挑战:
- 用户担心更新后可能会遇到兼容性问题。
- 为了尽量避免破坏性的更新和频繁的弃用通知,我们采取了全面维护的策略,结果却使得 LangChain 变得庞大且不稳定。
不过,从今天开始,随着 LangChain 0.1.0 版本的发布,所有未来的版本更新都将遵循新的版本标准。具体是:
- 任何对公共 API(Application Programming
Interface,应用程序编程接口)造成破坏性更改的操作,都会导致次要版本号的提升(即版本号的第二位数字)。 - 任何错误修复或新增功能都会导致补丁版本号的提升(即版本号的第三位数字)。
我们期望这些结合之前的架构变革,能够:
- 清晰地通报任何重大更改,让开发者能够放心更新
- 为我们提供正式淘汰及清理老旧代码的途径,减少代码冗余
- 更加负责任地处理集成问题(这些集成的 SDK 变化通常和 LangChain 一样迅速)
- 即便在我们推出 0.2 版本之后,我们依然承诺维护 0.1 版本的一个分支,但仅针对关键 bug 提供修补。
在我们将包结构调整为稳定的 0.1 版本的过程中,我们抓住机会与数百名开发者交流,