Interrupt 与人工审批
Interrupt 可以让图执行到某个节点时暂停,等待外部输入后再继续。它非常适合 Human-in-the-loop 场景。
典型场景
- Agent 准备发起退款,需要客服确认。
- Agent 生成 SQL,需要 DBA 审核。
- Agent 准备执行服务器命令,需要运维确认。
- Agent 给用户下单,需要用户二次确认。
示例
python
from langgraph.types import interrupt
def approval_node(state):
approved = interrupt({
"message": "是否确认执行该操作?",
"action": state["pending_action"]
})
return {"approved": approved}恢复执行:
python
from langgraph.types import Command
graph.invoke(
Command(resume=True),
config={"configurable": {"thread_id": "task-001"}}
)设计建议
人工审批页面要展示:操作内容、风险等级、上下文、模型理由、审批按钮、拒绝原因。不要只给一个“是否确认”的弹窗。
非官方声明
本站为个人维护的非官方中文学习文档,不代表 LangChain 官方。页面内容是基于公开文档、源码实践和中文开发者视角重新整理的学习资料。涉及 API 细节时,请以官方文档和实际安装版本为准。
参考来源
- LangChain / LangGraph 官方文档:
https://docs.langchain.com/ - LangChain API Reference:
https://reference.langchain.com/ - 本站内容为中文学习整理,不做官方身份声明。