今天,我们发布了 LangGraph.js v0.2.0,这是我们用于构建 LLM 驱动的代理的 JavaScript/TypeScript 框架。以下是新增功能
- 灵活的流式传输,支持以不同流式传输模式传输中间步骤和聊天模型消息
- 内置的检查点系统,使您可以回溯到过去的状态并调试错误,例如模型响应错误
- 一流的人工干预支持,允许您中断、更新内部状态并在图中的任何给定点恢复
- 并行节点支持,可同时运行和合并来自多个节点的结果
我们还在 LangGraph Studio(我们的桌面代理 IDE)和 LangGraph Cloud(我们用于部署代理的可扩展基础设施)中推出了对 LangGraph.js 项目的 Beta 支持。
LangGraph.js 已经帮助顶尖的 AI 团队解决关键问题。Elastic 的生成式 AI 和 ML 安全分析总监 James Spiteri 强调:
LangGraph.js 和整个 LangChain 生态系统是我们 Elastic 的 AI 安全助手、攻击发现和自动导入架构中的关键组成部分,帮助我们迭代并推动 这些功能 在创纪录的时间内投入生产。LangChain 团队持续不断的改进和协作给我们留下了深刻的印象,我们很高兴继续使用 LangChain 进行构建。
对于 JavaScript 社区而言,这些新功能为构建、调试和部署可靠的代理解锁了更强大的循环。
有很多内容要介绍,让我们深入了解一下!
使用 JavaScript 中的 LangGraph 0.2 构建可控的代理
与传统的 API 不同,LLM 由于其长期运行、非确定性的性质,给开发者带来了独特的挑战。随着逻辑中 LLM 调用数量的增加,这些挑战会加剧,尤其是在引入代理步骤后,这些步骤赋予了模型对代码执行的自主权。
LangGraph.js 为 JavaScript 开发者提供了一个强大的工具包,用于解决这些复杂性并围绕代理创建令人愉悦的体验。LangGraph.js 可以提高应用程序的:
- 响应性: 通过 逐个 token 流式传输结果,您可以提供实时的、交互式的体验并立即报告进度。拥有各种流式传输模式对于需要即时反馈和流畅用户体验的 Web 应用程序至关重要。
- 弹性: 使用节点级重试策略和检查点,确保您的应用程序保持稳健。如果服务宕机或步骤失败,您的应用程序可以无缝恢复并从之前的状态继续执行。
- 访问控制: 限制敏感工具 需要人工批准。这使您可以保护您的应用程序并降低意外后果的风险。
LangGraph.js 也可以在大多数 JS 运行时中运行,包括 Node、Deno、Cloudflare Workers、Vercel 的 Edge runtime 和通过 @langchain/langgraph/web
入口点的 甚至在浏览器中。
查看我们改版的 文档,其中包含新的操作指南、教程和概念指南,可帮助您入门。有关文档的最新更改和更新的概述,您还可以 此处 查看摘要。
使用 LangGraph Studio 更快地迭代和调试
LangGraph Studio 为调试代理提供了最佳体验。在涉及异步操作的动态 TypeScript/JavaScript 环境中,通常很难理解数据流——而 LLM 驱动的代理进一步增加了分支逻辑的复杂性。
LangGraph Studio 使用 TypeScript 的类型推断自动检测图的输入和输出,为您提供清晰的逻辑可视化概览。这消除了手动跟踪不同数据流的需要,并简化了调试。
在测试时,您可以回溯到各个状态并重新运行它们。这使您可以识别和修复问题,而无需重新启动整个应用程序。您还可以设置中断来逐步执行逻辑,并检查代码是如何逐步执行的。LangGraph Studio 甚至支持热重载,以实时应用更改并加快开发速度!
我们很高兴地宣布,LangGraph Studio 现在支持 LangGraph.js。LangGraph Studio 目前处于 Beta 阶段,在 Beta 期间对所有 LangSmith 用户免费。您可以在此处下载最新版本,并查看 此仓库 以获取 JavaScript 入门模板。
如果您有现有的图,则需要 更新到最新版本 的 LangGraph.js 和 LangChain core,然后从文件中导出您的图,并添加一个包含路径和一些元数据的 langgraph.json 文件。
使用 LangGraph Cloud 进行规模化部署
一旦您在本地完善了 LangGraph.js 图,您就可以在 LangGraph Cloud 上一键部署它们。LangGraph Cloud 专为 Web 规模设计,可帮助您管理和配置任务队列和服务器,以便您的代理可以处理许多并发用户和高流量。
为了诊断生产中的问题,LangGraph Cloud 与 LangSmith 集成以进行详细的跟踪,并使用内置的 Postgres 检查点程序。这种开箱即用的检查点程序存储状态和线程,以便您可以回溯并重新运行以前的状态,从而使您可以像在本地开发一样对问题进行故障排除和复制。
此外,LangGraph Cloud 还支持超出流式传输和人工干预的高级真实世界交互模式。这些功能包括双重文本处理以处理活动图线程上的新用户输入、异步后台作业以管理长时间运行的任务以及 cron 作业以自动化计划流程。
LangGraph Cloud 现已在 Beta 阶段面向所有 LangSmith Plus 或 Enterprise 计划用户开放。立即免费试用,注册 LangSmith。
下一步是什么?
这仅仅是个开始 - 我们致力于使 LangGraph.js 长期以来成为在 JavaScript 中构建代理的最令人愉悦的方式。
我们正在密切听取社区及其反馈,他们中的许多人已经在生产环境中运行 LangGraph.js – 我们邀请您分享您的想法。 在 X 上与我们联系,或加入我们的 社区 Slack 工作区。