Skip to main content
LangGraph v1 是一个专注于稳定性的代理运行时版本。 它保持核心图 API 和执行模型不变,同时改进了类型安全性、文档和开发者体验。 它旨在与 LangChain v1 协同工作(其 createAgent 基于 LangGraph 构建),因此您可以从高级功能开始,并在需要时深入到细粒度控制。

稳定的核心 API

图原语(状态、节点、边)和执行/运行时模型保持不变,使升级变得简单直接。

默认可靠性

具有检查点、持久化、流式传输和人在环路的持久执行仍然是首要功能。

与 LangChain v1 无缝集成

LangChain 的 createAgent 在 LangGraph 上运行。使用 LangChain 快速启动;使用 LangGraph 进行自定义编排。
要升级,请使用以下命令:
npm install @langchain/langgraph @langchain/core
有关完整更改列表,请参阅迁移指南

createReactAgent 的弃用

LangGraph 的 createReactAgent 预构建功能已被弃用,转而使用 LangChain 的 createAgent。它提供了更简单的接口,并通过引入中间件提供了更大的自定义潜力。

类型化中断

StateGraph 现在在构造函数中接受中断类型的映射,以更严格地约束图中可以使用的中断类型。
import { StateGraph, MemorySaver, interrupt } from "@langchain/langgraph";
import * as z from "zod";

const stateSchema = z.object({
  foo: z.string(),
})

const graphConfig = {
  interrupts: {
    // 定义一个简单的中断,接受原因并返回消息
    simple: interrupt<{ reason: string }, { messages: string[] }>,
    // 定义一个具有相同签名的复杂中断
    complex: interrupt<{ reason: string }, { messages: string[] }>,
  }
}

const checkpointer = new MemorySaver();

const graph = new StateGraph(stateSchema, graphConfig)
  .addNode("node", async (state, runtime) => {
    // 使用原因触发简单中断
    const response = runtime.interrupt.simple({ reason: "test" });
    // 将中断响应作为新状态返回
    return { foo: response };
  })
  // 使用检查点编译图
  .compile({ checkpointer });

// 使用初始状态调用图
const result = await graph.invoke({ foo: "test" });

// 访问中断数据
if (graph.isInterrupted(result)) {
  console.log(result.__interrupt__.messages);
}
有关中断的更多信息,请参阅中断文档。

前端 SDK 增强

LangGraph v1 在与前端 LangGraph 应用交互时提供了一些增强功能。

事件流编码

底层的 toLangGraphEventStream 助手已被移除。流式响应现在由 SDK 原生处理,您可以通过向 graph.stream 传递 encoding 格式来选择有线格式。这使得在 SSE 和普通 JSON 响应之间切换变得简单,无需更改 UI 逻辑。 有关更多信息,请参阅迁移指南

useStream 中的自定义传输

React 的 useStream 钩子现在支持可插拔传输,因此您可以在不更改 UI 代码的情况下更好地控制网络层。
const stream = useStream({
  transport: new FetchStreamTransport({
    apiUrl: "http://localhost:2024",
  }),
});
了解如何集成和自定义钩子:将 LangGraph 集成到您的 React 应用中

报告问题

请在 GitHub 上使用 'v1' 标签 报告在 1.0 中发现的任何问题。

其他资源

LangGraph 1.0

阅读公告

概述

LangGraph 是什么以及何时使用它

图 API

使用状态、节点和边构建图

LangChain 代理

基于 LangGraph 构建的高级代理

迁移指南

如何迁移到 LangGraph v1

GitHub

报告问题或贡献

另请参阅