LangGraph
LangGraph 深受 Klarna、Replit、Elastic 等塑造智能体未来的公司的信赖,它是一个用于构建、管理和部署长期运行、有状态智能体的底层编排框架。
开始使用¶
安装 LangGraph
然后,使用预构建组件创建一个智能体
API 参考:create_react_agent
# pip install -qU "langchain[anthropic]" to call the model
from langgraph.prebuilt import create_react_agent
def get_weather(city: str) -> str:
"""Get weather for a given city."""
return f"It's always sunny in {city}!"
agent = create_react_agent(
model="anthropic:claude-3-7-sonnet-latest",
tools=[get_weather],
prompt="You are a helpful assistant"
)
# Run the agent
agent.invoke(
{"messages": [{"role": "user", "content": "what is the weather in sf"}]}
)
更多信息,请参阅快速入门。或者,要学习如何使用可自定义的架构、长期记忆和其他复杂任务处理功能来构建智能体工作流,请参阅 LangGraph 基础教程。
核心优势¶
LangGraph 为任何长期运行、有状态的工作流或智能体提供底层支持基础设施。LangGraph 不会抽象提示或架构,并提供以下核心优势
- 持久执行:构建能够经受住故障并能长时间运行的智能体,能从中断处自动恢复。
- 人机协同:在执行过程中的任何时刻,通过检查和修改智能体状态,无缝地引入人类监督。
- 全面记忆:创建真正有状态的智能体,既有用于持续推理的短期工作记忆,也有跨会话的长期持久记忆。
- 使用 LangSmith 调试:通过可视化工具深入了解复杂的智能体行为,这些工具可以追踪执行路径、捕获状态转换并提供详细的运行时指标。
- 生产级部署:使用专为处理有状态、长期运行工作流的独特挑战而设计的可扩展基础设施,自信地部署复杂的智能体系统。
LangGraph 的生态系统¶
LangGraph 既可独立使用,也可与任何 LangChain 产品无缝集成,为开发人员提供一套完整的工具来构建代理。为了改进您的 LLM 应用程序开发,请将 LangGraph 与以下产品结合使用:
- LangSmith — 有助于代理评估和可观察性。调试性能不佳的 LLM 应用程序运行,评估代理轨迹,在生产中获得可见性,并随着时间的推移提高性能。
- LangGraph 平台 — 使用专为长期运行、有状态工作流打造的部署平台,轻松部署和扩展智能体。在团队之间发现、复用、配置和共享智能体 — 并在 LangGraph Studio 中通过可视化原型设计快速迭代。
- LangChain – 提供集成和可组合的组件,以简化 LLM 应用程序的开发。
更多资源¶
- 指南:关于流式处理、添加记忆与持久化以及设计模式(例如分支、子图等)等主题的快速、可操作的代码片段。
- 参考:关于核心类、方法、如何使用图和检查点 API 以及更高级别的预构建组件的详细参考。
- 示例:关于如何开始使用 LangGraph 的引导性示例。
- LangChain 论坛:与社区联系,分享您的所有技术问题、想法和反馈。
- LangChain 学院:在我们免费的结构化课程中学习 LangGraph 的基础知识。
- 模板:为常见智能体工作流(例如 ReAct 智能体、记忆、检索等)预构建的参考应用,可以克隆和修改。
- 案例研究:了解行业领导者如何使用 LangGraph 大规模交付 AI 应用程序。
致谢¶
LangGraph 的灵感来自 Pregel 和 Apache Beam。其公共接口借鉴了 NetworkX。LangGraph 由 LangChain 的创建者 LangChain Inc 构建,但可以独立于 LangChain 使用。