编辑
2025-02-11
后端
00
请注意,本文编写于 88 天前,最后修改于 88 天前,其中某些信息可能已经过时。

目录

LangGraph 概念指南:从入门到精通
概述
快速开始
核心概念
1. LangGraph 是什么?
2. LangGraph 术语
3. 常见代理模式
4. 断点(Breakpoints)
5. 人在回路(Human-in-the-Loop)
6. 时间旅行(Time Travel)
7. 持久化(Persistence)
8. 记忆(Memory)
9. 流式处理(Streaming)
10. 功能 API(Functional API)
LangGraph 平台
1. 为什么选择 LangGraph 平台?
2. 部署选项
3. 计划
组件
1. LangGraph 服务器
2. LangGraph Studio
3. LangGraph CLI
4. Python/JS SDK
5. 远程图(RemoteGraph)
LangGraph 服务器
1. 应用结构
2. 助手(Assistants)
3. Webhooks
4. Cron 任务
5. 双重文本(Double Texting)
6. 认证与访问控制
部署选项
1. 自托管精简版
2. 云 SaaS
3. 自带云(BYOC)
4. 自托管企业版
模板应用
FAQ
总结

LangGraph 概念指南:从入门到精通


概述

LangGraph 是一个强大的框架,用于构建基于图的 AI 应用。它通过将应用分解为节点和边,帮助开发者设计复杂的控制流和代理系统。本指南将带你了解 LangGraph 的核心概念、常见模式以及如何在实际项目中应用。


快速开始

在深入概念之前,建议先完成 快速开始 教程。这将为你提供实践背景,帮助你更好地理解后续内容。


核心概念

1. LangGraph 是什么?

LangGraph 是一个基于图的框架,用于设计和执行 AI 应用。它的核心思想是将应用分解为节点(组件)和边(信息流),从而实现灵活的控制流和复杂的逻辑。

2. LangGraph 术语
  • 节点(Node):表示应用中的一个组件,例如调用 LLM 或执行特定任务。
  • 边(Edge):定义节点之间的信息流,决定应用的执行顺序。
  • 图(Graph):由节点和边组成的结构,描述应用的整体逻辑。
3. 常见代理模式

代理(Agent)是 LangGraph 的核心组件,它使用 LLM 自主决定控制流,以解决复杂问题。常见的代理模式包括:

  • 单代理系统:一个代理负责整个任务。
  • 多代理系统:多个代理协作,每个代理负责不同的子任务。
4. 断点(Breakpoints)

断点允许在图的特定位置暂停执行,便于调试和检查中间状态。

5. 人在回路(Human-in-the-Loop)

通过集成人类反馈,提升应用的准确性和适应性。例如,在关键决策点请求用户确认。

6. 时间旅行(Time Travel)

时间旅行允许回放过去的操作,探索不同的执行路径,帮助调试和优化应用。

7. 持久化(Persistence)

LangGraph 内置持久化层,通过检查点(Checkpointers)实现。支持故障恢复、记忆和时间旅行等功能。

8. 记忆(Memory)

记忆使代理能够存储和回忆过去的信息,从而适应用户偏好和上下文。

9. 流式处理(Streaming)

流式处理逐步显示输出,提升用户体验,特别是在处理高延迟的 LLM 时。

10. 功能 API(Functional API)

功能 API 是 StateGraph 的替代方案,提供更灵活的开发方式。


LangGraph 平台

1. 为什么选择 LangGraph 平台?

LangGraph 平台是一个商业解决方案,用于在生产环境中部署代理应用。它基于开源的 LangGraph 框架,提供额外的功能和管理工具。

2. 部署选项

LangGraph 平台提供四种部署方式:

  • 自托管精简版(Self-Hosted Lite):免费,适合小规模应用。
  • 云 SaaS:由 LangSmith 托管,适合快速部署。
  • 自带云(BYOC):我们管理基础设施,但运行在你的云环境中。
  • 自托管企业版(Self-Hosted Enterprise):完全由你管理,适合大规模企业。
3. 计划

LangGraph 平台提供三种计划:

  • 开发者计划:适合个人开发者和小团队。
  • Plus 计划:适合中型团队。
  • 企业计划:适合大型企业。

组件

1. LangGraph 服务器

LangGraph 服务器支持多种代理应用场景,从后台处理到实时交互。

2. LangGraph Studio

LangGraph Studio 是一个专用 IDE,用于可视化、交互和调试本地应用。

3. LangGraph CLI

LangGraph CLI 是一个命令行工具,用于与本地应用交互。

4. Python/JS SDK

Python/JS SDK 提供编程接口,用于与部署的应用交互。

5. 远程图(RemoteGraph)

远程图允许你像本地应用一样与部署的应用交互。


LangGraph 服务器

1. 应用结构

LangGraph 应用由以下部分组成:

  • 一个或多个图。
  • LangGraph API 配置文件(langgraph.json)。
  • 依赖文件。
  • 环境变量。
2. 助手(Assistants)

助手用于保存和管理应用的不同配置。

3. Webhooks

Webhooks 允许应用在特定事件发生时向外部服务发送数据。

4. Cron 任务

Cron 任务用于在特定时间调度任务。

5. 双重文本(Double Texting)

双重文本是 LLM 应用中的常见问题,用户可能在图完成运行前发送多条消息。本指南解释了如何处理这一问题。

6. 认证与访问控制

了解 LangGraph 平台的认证和访问控制选项。


部署选项

1. 自托管精简版

免费版本,适合小规模应用,每年最多执行 100 万个节点。

2. 云 SaaS

由 LangSmith 托管,适合快速部署。

3. 自带云(BYOC)

我们管理基础设施,但运行在你的云环境中。

4. 自托管企业版

完全由你管理,适合大规模企业。


模板应用

LangGraph 平台提供参考应用模板,帮助你快速上手。


FAQ

  • LangGraph 是开源的吗?
    是的,LangGraph 是一个 MIT 许可的开源库。
  • 我可以自己部署 LangGraph 应用吗?
    可以,你可以使用开源版本在自己的基础设施上部署应用。

总结

LangGraph 是一个强大的工具,适用于构建复杂的 AI 应用。通过理解其核心概念和平台功能,你可以更高效地设计和部署代理应用。如果需要进一步帮助,请参考 官方文档 或联系支持团队。

本文作者:yowayimono

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!