人工参与的工作流
退款、合同变更和生产部署等待人工审批,可以等几分钟也可以等几天,而无需让进程一直挂着。
在 HotKV 上持久化 LangGraph 智能体。暂停、恢复并在图状态中时间回溯,长期记忆还可以按语义搜索。
一个包同时提供检查点和存储。需要 Python 3.10 或更高版本。
使用真实 HotKV 命令和示例回复的动画演示。点击任意步骤即可跳转。 命令和回复保持英文,与您在 HotKV 中输入和看到的完全一致。
把状态保存在进程内存中的 LangGraph 智能体,一重启就会丢失一切。人工审批无法等到第二天,失败的运行无法恢复,智能体学到的东西也无法延续到下一次对话。
langgraph-checkpoint-hotkv 把每个图的检查点存入 HotKV。图可以被中断并恢复,也可以回退到任意更早的步骤并从那里分支。配套的存储跨线程保存长期记忆,可按命名空间、按过滤条件查找,配合嵌入模型还可以按语义查找。
一个包同时提供检查点和存储。需要 Python 3.10 或更高版本。
pip install langgraph-checkpoint-hotkv图的每一步现在都保存在 HotKV 中。
graph = builder.compile(checkpointer=HotKVSaver(hotkv.from_url("hotkv://localhost:6379")), interrupt_before=["refund"])图逐步执行,每一步之后保存一个检查点,并在退款之前停下。
graph.invoke({"messages": [("user", "Refund order 1182")]}, {"configurable": {"thread_id": "t-81"}})进程在夜里重启了。状态仍在 HotKV 中,停在同一步等待。
graph.get_state({"configurable": {"thread_id": "t-81"}}).next审批人同意后,图从已保存的检查点继续执行。
graph.invoke(None, {"configurable": {"thread_id": "t-81"}})长期记忆存放在存储中,之后任何一次对话都能再次找到。
store.put(("users", "42"), "prefs", {"refunds": "prefers store credit"})退款、合同变更和生产部署等待人工审批,可以等几分钟也可以等几天,而无需让进程一直挂着。
在第 40 步失败的运行从第 40 步恢复,而不是从头再来。
回到任意更早的检查点,修改输入并分支,看看智能体本来会如何表现。
HotKVSaver 和 AsyncHotKVSaver 在多次运行之间保存图状态,支持中断、恢复和时间回溯。
HotKVStore 跨线程保存条目,可按命名空间、过滤条件或语义搜索,并可选设置过期。
两种 saver 均通过 LangGraph 官方的检查点一致性测试套件,涵盖 8 项能力共 81 项测试。
使用 HotKV 的核心数据类型和向量索引,有无企业许可证均可运行。
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,您可以按应用或环境修改。