人机协作 (Human-in-the-loop)¶
要在代理或工作流中审查、编辑和批准工具调用,请使用 LangGraph 的人机协同(human-in-the-loop)功能,以便在工作流的任何时刻进行人工干预。这在大型语言模型 (LLM) 驱动的应用中尤其有用,因为模型输出可能需要验证、修正或额外的上下文。
提示
有关如何使用人机协同的信息,请参阅启用人工干预和使用服务器 API 实现人机协同。
核心功能¶
-
持久化执行状态:中断功能使用了 LangGraph 的持久化层,该层会保存图的状态,从而可以无限期地暂停图的执行,直到您恢复为止。这是因为 LangGraph 在每一步之后都会为图状态创建检查点,这使得系统能够持久化执行上下文并在之后从中断处继续恢复工作流。这支持了没有时间限制的异步人工审查或输入。
有两种暂停图的方法
- 动态中断:在特定节点内部,根据图的当前状态使用
interrupt
来暂停图。 - 静态中断:使用
interrupt_before
和interrupt_after
在预定义的点暂停图,即在节点执行之前或之后。
一个由3个顺序步骤组成的示例图,在 step_3 之前设有一个断点。 - 动态中断:在特定节点内部,根据图的当前状态使用
-
灵活的集成点:人机协同逻辑可以引入到工作流的任何一点。这允许有针对性的人工参与,例如批准 API 调用、修正输出或引导对话。
模式¶
您可以使用 interrupt
和 Command
实现四种典型的设计模式