跳到主要内容
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: {
    // Define a simple interrupt that accepts a reason and returns messages
    simple: interrupt<{ reason: string }, { messages: string[] }>, 
    // Define a complex interrupt with the same signature
    complex: interrupt<{ reason: string }, { messages: string[] }>, 
  }
}

const checkpointer = new MemorySaver();

const graph = new StateGraph(stateSchema, graphConfig)
  .addNode("node", async (state, runtime) => {
    // Trigger the simple interrupt with a reason
    const response = runtime.interrupt.simple({ reason: "test" });
    // Return the interrupt response as the new state
    return { foo: response };
  })
  // Compile the graph with the checkpointer
  .compile({ checkpointer });

// Invoke the graph with initial state
const result = await graph.invoke({ foo: "test" });

// Access the interrupt data
if (graph.isInterrupted(result)) {
  console.log(result.__interrupt__.messages);
}
有关中断的更多信息,请参阅中断文档。

前端 SDK 增强功能

LangGraph v1 在与前端的 LangGraph 应用程序交互时带有一些增强功能。

事件流编码

低级 toLangGraphEventStream 辅助函数已被移除。流式响应现在由 SDK 本地处理,您可以通过将 encoding 格式传递给 graph.stream 来选择有线格式。这使得在 SSE 和普通 JSON 响应之间切换变得简单,而无需更改 UI 逻辑。 有关更多信息,请参阅迁移指南

useStream 中的自定义传输

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

报告问题

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

附加资源

另请参见


以编程方式连接这些文档到 Claude、VSCode 等,通过 MCP 获取实时答案。
© . This site is unofficial and not affiliated with LangChain, Inc.