在 LangChain,我们的目标是简化构建 LLM 应用程序的过程,这些系统将 LLM 连接到外部数据和计算源以推理世界。让 LLM 决定应用程序的控制流程(即我们所说的代理)很有吸引力,因为它们可以解锁以前无法自动化的各种任务。然而,在实践中,构建可靠地执行这些任务的系统非常困难。
为了解决这个问题,几个月前,我们推出了LangGraph——一个用于构建代理和多代理应用程序的框架。LangGraph 独立于 langchain 包,其核心设计理念是帮助开发人员在代理工作流程中添加更好的精度和控制,适用于现实世界系统的复杂性。
今天,我们推出LangGraph v0.1 的稳定版本,重申我们致力于帮助用户创建更多此类强大的代理系统。我们感谢 Klarna、Replit、Ally、Elastic、NCL 等领先公司,他们已经依靠 LangGraph 将其公司的 AI 举措提升到一个新的水平。
我们还很高兴地宣布推出LangGraph Cloud。LangGraph Cloud 现已进入封闭 beta 版,是用于以可扩展、容错的方式部署 LangGraph 代理的基础设施。它还提供了一个集成的开发人员体验,使您在对代理工作流程进行原型设计、调试和监控时能够获得更高的可见性和信心。
继续阅读以了解更多信息,并了解如何试用它。如果您更喜欢直观的学习方法,可以查看我们的视频演练这里。
LangGraph v0.1:平衡代理控制与代理
大多数代理框架可以处理简单的预定义任务,但在需要任何公司或领域特定上下文的复杂工作流程方面却遇到了困难。LangChain AgentExecutor 的旧版本也是如此,但通过迭代和经验,我们了解到,较高级别的抽象隐藏了过多的细节,最终导致系统缺乏可靠完成任务所需的控制。
LangGraph则相反,它拥有灵活的 API,可让您设计自定义认知体系结构。这意味着您可以对代码、提示和 LLM 调用的流程进行低级别控制,这些调用接收用户输入以执行操作或生成响应。通过条件分支和循环,LangGraph 允许用户构建具有层次或顺序决策模式的单代理或多代理设置。在挪威邮轮公司等公司,这种级别的代理控制至关重要。
"LangGraph 对我们的 AI 开发至关重要。它用于构建带状态的、具有 LLM 的多参与者应用程序的强大框架,改变了我们评估和优化 AI 面向客人的解决方案性能的方式。LangGraph 使我们能够对代理的思维过程进行细粒度控制,这使我们能够做出数据驱动的、深思熟虑的决策,以满足客人的多样化需求。" - Andres Torres(挪威邮轮公司高级解决方案架构师)
LangGraph 还使添加审核和质量检查变得容易,这些检查可确保代理在继续其任务之前满足某些条件。这可以确保代理正常进行,并减少它在错误路径上卡住的可能性,因为它可能无法从中恢复。
对于 Replit 等公司而言,LangGraph 的细粒度控制增强了他们交付可靠代理的能力。
"构建编码代理的原型很容易,但提高其可靠性却出奇地难。Replit 想要为数百万用户提供编码代理——可靠性是我们的重中之重,并将长期保持下去。LangGraph 为我们提供了构建和交付功能强大的编码代理所需的控制和人体工程学。" - Michele Catasta(Replit AI 副总裁)
对于最复杂或最敏感的任务,仍然需要人工协作来补充代理自动化。LangGraph 通过其内置的持久层使人机协作成为可能。具体而言,借助 LangGraph,您可以
- 设计代理,使其在执行任务并恢复其工作流程之前明确等待人工批准。
- 在执行代理操作之前对其进行编辑。
- 检查、重新连接、编辑和恢复代理执行(在我们所说的“时间旅行”功能中)。
对于 Elastic 等团队而言,这种设计灵活性具有颠覆性意义。他们指出
"LangChain 凭借 LangGraph 所做出的贡献,遥遥领先。LangGraph 为我们构建和扩展 AI 工作负载奠定了基础——从对话式代理、复杂的任务自动化到基于 LLM 的自定义体验,这些体验“只管用”。使用 LLM 构建复杂的生产就绪型功能的下一阶段是代理化,借助 LangGraph 和 LangSmith,LangChain 提供了开箱即用的解决方案,可快速迭代、立即调试并轻松扩展。" – Garrett Spong(Elastic 首席软件工程师)
最后,LangGraph 原生支持中间步骤的流式传输和逐个标记的流式传输,为用户提供更动态、更响应式的体验,这些用户处理的是长时间运行的代理任务。
LangGraph Cloud:具有集成监控的可扩展代理部署
为了补充 LangGraph 框架,我们还推出了一个新的运行时,LangGraph Cloud,现在已进入 beta 版,它提供专门用于部署大规模代理的基础设施。
随着代理用例的普及,代理之间的任务分配不均会导致系统过载,从而造成速度下降和停机。LangGraph Cloud 承担了繁重的工作,帮助您实现容错的可扩展性。它优雅地管理水平扩展的任务队列、服务器和健壮的 Postgres 检查点,以处理大量并发用户,并高效地存储大型状态和线程。
LangGraph Cloud 旨在支持现实世界的交互模式。除了流式传输和人工参与循环(在 LangGraph 中已涵盖)之外,LangGraph Cloud 还添加了
- 双重发短信,用于处理当前正在运行的图线程上的新用户输入。它支持四种不同的策略来处理额外的上下文:拒绝、排队、中断和回滚。
- 异步后台作业,用于长时间运行的任务。您可以通过轮询或网络钩子检查完成情况。
- 计划作业,用于按计划运行常见任务
LangGraph Cloud 还带来了更集成的体验,用于协作、部署和监控您的代理应用程序。它附带了LangGraph Studio——一个类似于游乐场的空间,用于可视化代理轨迹,以帮助调试故障模式并添加断点以进行中断、状态编辑、恢复和时间旅行。LangGraph Studio 使您可以与内部利益相关者共享 LangGraph 代理,以获取反馈并快速迭代。
此外,LangGraph Cloud 简化了部署。从 GitHub 选择一个 LangGraph 存储库,只需单击一下,即可部署您的代理应用程序——无需任何基础设施专业知识。由于 LangGraph Cloud 集成在 LangSmith 中,您还可以深入了解您的应用程序,并在生产中跟踪和监控使用情况、错误、性能和成本。
我们很高兴推出 LangGraph Cloud,并得到 Ally Financial 等合作伙伴的支持,他们已经取得了 LangGraph 的进展。
“随着 Ally 加快对生成式 AI 的探索,我们的技术实验室对 LangGraph(LangChain 推出的新库)感到兴奋,该库是我们对多参与者代理工作流程的实验的核心。我们致力于深化与 LangChain 的合作关系。” - Sathish Muthukrishnan(Ally Financial 首席信息、数据和数字官)
亲身体验
要开始使用 LangGraph,只需访问GitHub 项目并按照安装说明操作。
要访问 LangGraph Cloud,请注册LangGraph Cloud 候补名单。您需要首先拥有 LangSmith 帐户(您可以免费试用)才能使用 LangGraph Cloud 功能。
我们相信我们对构建代理采取了一种独特的方法——一种让您可以将公司特定的工作流程放在中心位置并为您提供交付生产所需的控制的方法。我们希望,随着这些工具的推出,我们离弥合用户期望与代理能力之间的差距又近了一步。
如果您有任何反馈,请通过 [email protected] 与我们联系!
从以下其他资源中了解更多信息