Langgraph¶
版本 0.2.6
受到塑造未来代理的公司信任——包括 Klarna、Replit、Elastic 等——LangGraph 是一个低级别的编排框架,用于构建、管理和部署长期运行的有状态代理。
开始使用¶
安装 LangGraph:
然后,创建一个 使用预构建组件 的代理:
API Reference: 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 Inc 构建,LangChain 的创始人,但可以在没有 LangChain 的情况下使用。