AI 与 LLM智能体

LangGraph 检查点

在 HotKV 上持久化 LangGraph 智能体。暂停、恢复并在图状态中时间回溯,长期记忆还可以按语义搜索。

项一致性测试通过
81
saver
同步 + 异步
即可使用
无需许可证
步骤 1 / 6
安装

一个包同时提供检查点和存储。需要 Python 3.10 或更高版本。

示例会话playing
# 安装
$ pip install langgraph-checkpoint-hotkv
Successfully installed langgraph-checkpoint-hotkv

使用真实 HotKV 命令和示例回复的动画演示。点击任意步骤即可跳转。 命令和回复保持英文,与您在 HotKV 中输入和看到的完全一致。

问题所在

把状态保存在进程内存中的 LangGraph 智能体,一重启就会丢失一切。人工审批无法等到第二天,失败的运行无法恢复,智能体学到的东西也无法延续到下一次对话。

HotKV 如何解决

langgraph-checkpoint-hotkv 把每个图的检查点存入 HotKV。图可以被中断并恢复,也可以回退到任意更早的步骤并从那里分支。配套的存储跨线程保存长期记忆,可按命名空间、按过滤条件查找,配合嵌入模型还可以按语义查找。

逐步演示

逐条命令,看看发生了什么

  1. 01

    安装

    一个包同时提供检查点和存储。需要 Python 3.10 或更高版本。

    pip install langgraph-checkpoint-hotkv
  2. 02

    用 HotKV 检查点编译

    图的每一步现在都保存在 HotKV 中。

    graph = builder.compile(checkpointer=HotKVSaver(hotkv.from_url("hotkv://localhost:6379")), interrupt_before=["refund"])
  3. 03

    运行到需要审批为止

    图逐步执行,每一步之后保存一个检查点,并在退款之前停下。

    graph.invoke({"messages": [("user", "Refund order 1182")]}, {"configurable": {"thread_id": "t-81"}})
  4. 04

    数小时后,重启之后

    进程在夜里重启了。状态仍在 HotKV 中,停在同一步等待。

    graph.get_state({"configurable": {"thread_id": "t-81"}}).next
  5. 05

    批准并恢复

    审批人同意后,图从已保存的检查点继续执行。

    graph.invoke(None, {"configurable": {"thread_id": "t-81"}})
  6. 06

    跨线程记忆

    长期记忆存放在存储中,之后任何一次对话都能再次找到。

    store.put(("users", "42"), "prefs", {"refunds": "prefers store credit"})
适用场景

真实场景

人工参与的工作流

退款、合同变更和生产部署等待人工审批,可以等几分钟也可以等几天,而无需让进程一直挂着。

长时间运行的研究智能体

在第 40 步失败的运行从第 40 步恢复,而不是从头再来。

调试与评测

回到任意更早的检查点,修改输入并分支,看看智能体本来会如何表现。

内置功能

您将获得

检查点

HotKVSaver 和 AsyncHotKVSaver 在多次运行之间保存图状态,支持中断、恢复和时间回溯。

长期存储

HotKVStore 跨线程保存条目,可按命名空间、过滤条件或语义搜索,并可选设置过期。

通过一致性测试

两种 saver 均通过 LangGraph 官方的检查点一致性测试套件,涵盖 8 项能力共 81 项测试。

无需模块,无需许可证

使用 HotKV 的核心数据类型和向量索引,有无企业许可证均可运行。

检查点与存储

python
from langgraph.checkpoint.hotkv import HotKVSaver

with HotKVSaver.from_conn_string("hotkv://localhost:6379") as checkpointer:
    graph = builder.compile(checkpointer=checkpointer)
    graph.invoke({"messages": [("user", "hi")]}, {"configurable": {"thread_id": "1"}})

常见问题

我需要企业许可证吗?

不需要。检查点和存储使用 HotKV 的核心数据类型和向量索引,在有无许可证的服务器上都能运行。

支持异步吗?

支持。AsyncHotKVSaver 和 AsyncHotKVStore 可与 ainvoke 和 astream 配合使用。

多个应用可以共用一台服务器吗?

可以。所有内容都存放在一个键前缀之下,默认是 langgraph,您可以按应用或环境修改。

相关用例

在您自己的工作负载上试试

HotKV 兼容 Redis 协议,您可以把现有客户端指向它,运行这些相同的命令。