概念指南¶
本指南解释了 LangGraph 框架和更广泛的 AI 应用背后的关键概念。
我们建议您在深入阅读概念指南之前,至少先完成快速入门。这将提供实用的背景知识,有助于您更容易地理解此处讨论的概念。
概念指南不包括分步说明或具体的实现示例——这些内容可在教程和操作指南中找到。有关详细的参考资料,请参阅API 参考。
LangGraph¶
高阶¶
- 为什么选择 LangGraph?:对 LangGraph 及其目标的高阶概述。
概念¶
- LangGraph 术语表:LangGraph 工作流被设计为图,其中节点代表不同的组件,边代表信息在它们之间的流动。本指南概述了与 LangGraph 图元相关的关键概念。
- 常见的智能体模式:智能体使用大型语言模型 (LLM) 来选择自己的控制流以解决更复杂的问题!智能体是许多 LLM 应用中的关键构建模块。本指南解释了不同类型的智能体架构以及如何使用它们来控制应用的流程。
- 多智能体系统:复杂的 LLM 应用通常可以分解为多个智能体,每个智能体负责应用的不同部分。本指南解释了构建多智能体系统的常见模式。
- 断点:断点允许在特定点暂停图的执行。断点允许逐步执行图以进行调试。
- 人机协作 (Human-in-the-Loop):解释了将人工反馈集成到 LangGraph 应用中的不同方法。
- 时间旅行:时间旅行允许您在 LangGraph 应用中重放过去的操作,以探索替代路径和调试问题。
- 持久化:LangGraph 具有内置的持久化层,通过检查点实现。此持久化层有助于支持强大的功能,如人机协作、记忆、时间旅行和容错。
- 记忆:AI 应用中的记忆是指处理、存储并有效回忆过去交互信息的能力。通过记忆,您的智能体可以从反馈中学习并适应用户的偏好。
- 流式处理:流式处理对于增强基于 LLM 构建的应用的响应能力至关重要。通过渐进式地显示输出,甚至在完整响应准备好之前,流式处理显著改善了用户体验 (UX),特别是在处理 LLM 的延迟时。
- 函数式 API:
@entrypoint
和@task
装饰器,允许您将 LangGraph 功能添加到现有代码库中。 - 持久执行:LangGraph 的内置持久化层为工作流提供持久执行,确保每个执行步骤的状态都保存到持久存储中。
- Pregel:Pregel 是 LangGraph 的运行时,负责管理 LangGraph 应用的执行。
- 常见问题:关于 LangGraph 的常见问题。
LangGraph 平台¶
LangGraph 平台是一个商业解决方案,用于在生产环境中部署智能体应用,构建于开源 LangGraph 框架之上。
LangGraph 平台提供了一些不同的部署选项,详见部署选项指南。
提示
- LangGraph 是一个 MIT 许可的开源库,我们致力于为其社区进行维护和发展。
- 您始终可以使用开源 LangGraph 项目在自己的基础设施上部署 LangGraph 应用,而无需使用 LangGraph 平台。
高阶¶
- 为什么选择 LangGraph 平台?:LangGraph 平台是一种用于部署和管理 LangGraph 应用的规范化方式。本指南概述了 LangGraph 平台背后的关键特性和概念。
- 平台架构:LangGraph 平台架构的高阶概述。
- 可扩展性和弹性:LangGraph 平台设计为可扩展且具有弹性。本文解释了平台如何实现这一点。
- 部署选项:LangGraph 平台提供四种部署选项:云端 SaaS、自托管数据平面、自托管控制平面和独立容器。本指南解释了这些选项之间的区别以及它们适用的套餐计划。
- 套餐计划:LangGraph 平台提供三种不同的套餐计划:Developer、Plus、Enterprise。本指南解释了这些选项之间的区别、每个计划可用的部署选项以及如何注册。
- 模板应用:参考应用,旨在帮助您在使用 LangGraph 构建时快速入门。
组件¶
LangGraph 平台包含多个协同工作的组件,以支持 LangGraph 应用的部署和管理
- LangGraph Server:LangGraph Server 设计用于支持广泛的智能体应用用例,从后台处理到实时交互。
- LangGraph Studio:LangGraph Studio 是一种专门的集成开发环境 (IDE),可以连接到 LangGraph Server,以实现应用的本地可视化、交互和调试。
- LangGraph CLI:LangGraph CLI 是一个命令行界面,用于与本地 LangGraph 进行交互。
- Python/JS SDK:Python/JS SDK 提供了一种以编程方式与已部署的 LangGraph 应用进行交互的方法。
- 远程图:RemoteGraph 允许您与任何已部署的 LangGraph 应用进行交互,就像它在本地运行一样。
- LangGraph 控制平面:LangGraph 控制平面指的是控制平面用户界面 (UI),用户可以在其中创建和更新 LangGraph Server,以及支持 UI 体验的控制平面 API。
- LangGraph 数据平面:LangGraph 数据平面指的是 LangGraph Server、每个服务器对应的基础设施以及持续轮询 LangGraph 控制平面更新的“监听器”应用。
LangGraph Server¶
- 应用结构:一个 LangGraph 应用包含一个或多个图、一个 LangGraph API 配置文件 (
langgraph.json
)、一个指定依赖项的文件以及环境变量。 - 助手:助手是一种保存和管理 LangGraph 应用不同配置的方法。
- Webhooks:Webhooks 允许您正在运行的 LangGraph 应用在特定事件发生时向外部服务发送数据。
- Cron 作业:Cron 作业是一种在 LangGraph 应用中按特定时间安排任务运行的方法。
- 重复消息发送:重复消息发送是 LLM 应用中的一个常见问题,用户可能在图完成运行之前发送多条消息。本指南解释了如何使用 LangGraph Deploy 处理重复消息发送。
- 身份验证与访问控制:了解在部署 LangGraph 平台时的身份验证和访问控制选项。
- MCP 端点:使用 MCP 端点将您的 LangGraph 智能体作为 MCP 工具公开。
部署选项¶
- 云端 SaaS(Beta):连接到您的 GitHub 仓库,并将 LangGraph Server 部署到 LangChain 的云端。我们管理一切。
- 自托管数据平面(Beta):从控制平面 UI 创建部署,并将 LangGraph Server 部署到您的云端。我们管理控制平面,您管理部署。
- 自托管控制平面(Beta):从自托管的控制平面 UI 创建部署,并将 LangGraph Server 部署到您的云端。您管理一切。
- 独立容器:您可以按照自己喜欢的方式部署 LangGraph Server Docker 镜像。