Skip to main content
要审查、编辑和批准代理或工作流中的工具调用,请使用 LangGraph 的人机交互功能。

动态中断

  1. 使用一些初始状态调用图。
  2. 当图遇到中断时,它会返回一个包含有效负载和元数据的中断对象。 3. 使用 Command(resume=...) 恢复图的执行,注入人类输入并继续执行。
这是一个可以在代理服务器中运行的示例图。 有关更多详细信息,请参阅 LangSmith 快速入门
  1. interrupt(...)human_node 处暂停执行,将给定的有效负载呈现给人类。
  2. 任何可 JSON 序列化的值都可以传递给 interrupt 函数。这里是一个包含要修订文本的字典。
  3. 恢复后,interrupt(...) 的返回值是人类提供的输入,用于更新状态。
一旦你有了一个运行的代理服务器,你可以使用 LangGraph SDK 与之交互。
  1. 使用一些初始状态调用图。
  2. 当图遇到中断时,它会返回一个包含有效负载和元数据的中断对象。 3. 使用 Command(resume=...) 恢复图的执行,注入人类输入并继续执行。

静态中断

静态中断(也称为静态断点)在节点执行之前或之后触发。
不建议将静态中断用于人机交互工作流。它们最适合用于调试和测试。
你可以通过在编译时指定 interrupt_beforeinterrupt_after 来设置静态中断:
  1. 断点在 compile 时设置。
  2. interrupt_before 指定应在节点执行之前暂停执行的节点。
  3. interrupt_after 指定应在节点执行之后暂停执行的节点。
或者,你可以在运行时设置静态中断:
  1. 使用 interrupt_beforeinterrupt_after 参数调用 client.runs.wait。这是一个运行时配置,可以为每次调用更改。
  2. interrupt_before 指定应在节点执行之前暂停执行的节点。
  3. interrupt_after 指定应在节点执行之后暂停执行的节点。
以下示例展示了如何添加静态中断:
  1. 运行图直到遇到第一个断点。
  2. 通过为输入传递 None 来恢复图的执行。这将运行图直到遇到下一个断点。

了解更多

  • 人机交互概念指南:了解更多关于 LangGraph 人机交互功能的信息。
  • 常见模式:学习如何实现批准/拒绝操作、请求用户输入、工具调用审查和验证人类输入等模式。