Skip to main content
LangGraph 受到包括 Klarna、Replit、Elastic 等在内的塑造智能体未来的公司的信任,是一个用于构建、管理和部署长时间运行、有状态智能体的低级编排框架和运行时。 LangGraph 非常低级,完全专注于智能体 编排。在使用 LangGraph 之前,我们建议您熟悉一些用于构建智能体的组件,从 模型工具 开始。 我们将在整个文档中通过使用 LangChain 组件来集成模型和工具,但您不需要使用 LangChain 即可使用 LangGraph。如果您刚刚开始使用智能体或想要更高级别的抽象,我们建议您使用 LangChain 的 智能体,它为常见的 LLM 和工具调用循环提供了预构建的架构。 LangGraph 专注于对智能体编排非常重要的底层能力:持久执行、流式传输、人机交互等。

安装

pip install -U langgraph
然后,创建一个简单的 hello world 示例:
from langgraph.graph import StateGraph, MessagesState, START, END

def mock_llm(state: MessagesState):
    return {"messages": [{"role": "ai", "content": "hello world"}]}

graph = StateGraph(MessagesState)
graph.add_node(mock_llm)
graph.add_edge(START, "mock_llm")
graph.add_edge("mock_llm", END)
graph = graph.compile()

graph.invoke({"messages": [{"role": "user", "content": "hi!"}]})
使用 LangSmith 来跟踪请求、调试智能体行为并评估输出。设置 LANGSMITH_TRACING=true 和您的 API 密钥以开始使用。

核心优势

LangGraph 为 任何 长时间运行的有状态工作流或智能体提供低级支持基础设施。LangGraph 不抽象提示或架构,并提供以下核心优势:
  • 持久执行:构建能够在故障中持久存在并可以运行很长时间的智能体,从中断的地方恢复。
  • 人机交互:通过在任何点检查和修改智能体状态来纳入人工监督。
  • 综合记忆:创建具有短期工作记忆(用于正在进行的推理)和长期记忆(跨会话)的有状态智能体。
  • 使用 LangSmith 调试:通过可视化工具深入了解复杂的智能体行为,这些工具可以跟踪执行路径、捕获状态转换并提供详细的运行时指标。
  • 生产级部署:使用旨在处理有状态、长时间运行的工作流的独特挑战的可扩展基础设施,自信地部署复杂的智能体系统。

LangGraph 生态系统

虽然 LangGraph 可以独立使用,但它也与任何 LangChain 产品无缝集成,为开发人员提供了一整套用于构建智能体的工具。为了改善您的 LLM 应用程序开发,请将 LangGraph 与以下工具搭配使用:

致谢

LangGraph 的灵感来自 PregelApache Beam。公共接口从 NetworkX 汲取灵感。LangGraph 由 LangChain 的创建者 LangChain Inc 构建,但可以在没有 LangChain 的情况下使用。