1 概述
LangGraph是一个用于构建具有状态、多参与者应用程序的大语言模型(LLM)的库,用于创建智能体和多智能体的工作流程。与其他 LLM 框架相比,它提供以下核心优势:
- 循环
- 可控性
- 持久性
LangGraph 允许你定义涉及循环的流程,这对于大多数智能体架构至关重要,使其与基于DAG的解决方案区别开来。作为一个非常底层的框架,它提供了对应用程序的流程和状态的细粒度控制,这对于创建可靠的智能体至关重要。
此外,LangGraph 包含内置的持久性功能,支持高级的“人类在环”(human-in-the-loop)和记忆功能。
LangGraph 的灵感来源于 Pregel 和 Apache Beam。其公共接口借鉴了 NetworkX 的设计。LangGraph 由 LangChain Inc. 创建,该公司也是 LangChain 的开发者,但它可以独立于 LangChain 使用。
1.1 关键特性
- 循环和分支:在应用程序中实现循环和条件判断
- 持久性:在图中的每一步之后自动保存状态。你可以在任意时间点暂停和恢复图的执行,以支持错误恢复、“人类在环”工作流、时间回溯等功能
- 人类在环:在图执行过程中打断执行,以批准或编辑智能体计划的下一个动作
- 流式支持:在每个节点生成输出时进行流式传输(包括 token 流式传输)
- 与 LangChain 集成:LangGraph 可以与 LangChain 和 LangSmith 无缝集成(但不要求使用它们)
2 安装
代码语言:bash
pip install -U langgraph
3 示例
LangGraph 的核