今天,我们宣布推出 langgraph 和 langchain 的 v1.0 alpha 版本,支持 Python 和 JS。LangGraph 是一个底层的代理编排框架,为开发者提供持久化执行和精细控制,以便在生产环境中运行复杂的代理系统。LangChain 通过标准化的模型抽象和预构建的代理模式,帮助开发者快速交付 AI 功能,轻松构建复杂的应用程序,且无供应商锁定。我们正朝着 10 月下旬正式发布 1.0 版的目标迈进——请 在此 给予我们任何反馈!
LangGraph
langgraph 已经经过了实战考验,如 Uber、LinkedIn 和 Klarna 等公司都在生产环境中使用了它。我们将其提升到 1.0 版本,不会有破坏性更改。它内置了一个代理运行时(持久化执行、短期记忆、人工干预模式、流式传输),可用于构建任意工作流和代理模式。
LangChain
langchain 一直提供高层接口,以便尽可能轻松地开始使用各种代理模式。早期,有少数几种模式(这些构成了最初 langchain 中的所有链和代理)。在过去的两年里,我们认识到
- 许多用例需要完全自定义的模式。对于这些,我们推荐使用
langgraph并构建您自己的模式。 - 其余的则已经整合到一种特定的“代理”实现中。
这个“代理”抽象在很大程度上是
- 让 LLM 能够访问某些工具。
- 用一些输入调用它。
- 如果它调用了一个工具,
- 执行该工具。
- 返回到第 2 步,加入工具调用和工具结果。
- 如果没有调用工具:完成。
我们从早期就开始在 LangChain 中引入了这个抽象——早在 2022 年 11 月。随着工具调用等功能的出现,这个抽象多年来不断发展,使其更加便捷。
在 LangChain 1.0 中,我们将 langchain 包的重点集中在这个抽象周围,并引入了一个新的 create_agent 实现——具有相同的高层接口,但底层不同。我们基于 langgraph 构建了这个实现,以利用其底层的代理运行时。虽然这对 langchain 包来说是新的,但它在 LangChain 生态系统中并不陌生。在过去一年中,它作为 langgraph.prebuilts 的一部分已经过实战考验。您可以通过以下方式轻松尝试:
Python:from langchain.agents import create_agent
JS:import { createAgent } from "langchain"
如果您正在使用现有的 langchain 链和代理,请放心。我们将发布一个 langchain-legacy 包,允许开发者继续使用这些旧的链和代理,同时也可以选择更新新改进的 langchain 1.0。
LangChain Core
langchain 的一个关键部分保持不变的是集成抽象。LangChain 包含对 OpenAI、Anthropic 等提供商的数千种集成。这些抽象技术上存在于 langchain-core 中——这是一个我们专门为包含这些抽象而创建的基础包。
我们正在将 langchain-core 提升到 1.0 版本,不会有破坏性更改,但增加了一个核心功能。
langchain-core 的一个重要部分是“消息”的概念,即我们如何与 LLM API 通信。在 1.0 版本中,我们正在围绕消息的格式化方式引入更多结构(以向后兼容的方式)。LangChain 的一个主要价值主张始终是与 LLM 交互的标准方法。与 LLM 交互的方式随着时间的推移而改变——它从字符串开始,然后变为消息(其中每条消息的 content 是一个字符串)。但现在,LLM API 返回的是内容*块*的列表。因此,我们引入了一个新的 .content_blocks 属性,其中包含标准的内容类型。您可以在 此处 阅读有关内容块的所有信息。
文档
最后,我们还为所有这些开源项目推出了一个新文档网站。这些文档将我们的开源文档集中在一个地方,并为 Python 和 Javascript 提供一个统一的页面。我们听到了您希望拥有一个更集中、更易于遵循的文档网站的诉求。这曾经是,而且将继续是我们的一个重要关注点。
试用一下
我们很高兴今天宣布 1.0 alpha 版本。您可以轻松地试用它们。
JavaScript
LangChain:npm install langchain@next
LangGraph:npm install @langchain/langgraph@alpha
Python
LangChain:pip install langchain==1.0.0a3
LangGraph:pip install langgraph==1.0.0a1
再次感谢——请 在此 给予我们关于这些 1.0 版本(和文档)的反馈。您还可以找到 GitHub 讨论项(LangChain、LangGraph)。这是一个重要的里程碑——我们很高兴在接下来的两个月里与社区一起努力。