Skip to main content
要在智能体或工作流中审查、编辑和批准工具调用,请使用 LangGraph 的人机协同功能。

动态中断

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

静态中断

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

了解更多

  • 人机协同概念指南:深入了解 LangGraph 人机协同功能。
  • 常见模式:学习如何实现批准/拒绝操作、请求用户输入、工具调用审查和验证人工输入等模式。