在 LangGraph 中,让 Agent 针对过去的某个错误决策重新执行(即从历史节点“分叉”或“时间旅行”)是其核心特性之一。这个功能被称为 Time Travel(时间旅行)。 要实现这一点,必须启用检查点机制(Checkpointer)(如 ),因为只有保存了图的状态历史,才能回到过去。 完整的流程分为四个步骤:保存状态 -> 获取历史记录 -> 修改过去的状态(分叉) -> 重新执行。 以下是具体的实现步骤和代码示例: 1. 基础准备:启用 Checkpointer 在编译图时,必须传入一个 checkpointer 来持久化状态。 2. 获取历史状态记录 假设 Agent 已经运行了一段距离,并做出了错误决策。你需要查看这个 Thread 的历史状态(Checkpoints),找到出错前的那一步。 3. 从特定历史节点“分叉”并修改状态 找到你想回到的那个状态的 。为了纠正 Agent 的错误决策,你可以修改此时的状态(State),然后让图从这里重新运行。 假设历史记录中,Agent 在 的状态后做出了错误决策。你可以获取这个配置: 接下来,使用 来修改状态并创建分...