首页 › AI Agent › Agent100道面试题 › 安全与对齐-safety-and-alignment › Human-in-the-Loop:何时以及如何引入人工审核?

Human-in-the-Loop:何时以及如何引入人工审核?

​

难度:中级 分类:Safety & Alignment​

​

Human-in-the-Loop (HITL) 是在 AI Agent 工作流中战略性嵌入人类判断的设计模式——不是所有决策都该自动化,也不是所有操作都需要人工审核,关键是找到自动化效率和人类监督安全之间的最佳平衡点。核心设计模式包括:(1) 审批/检查点模式——在关键操作前暂停等待人类确认(如删除数据、发送邮件、支付);(2) 置信度路由——Agent 对自身置信度评分,低于阈值自动升级给人类;(3) Human-as-a-Tool——Agent 将"人类"视为可调用的工具,遇到不确定时主动提问;(4) 角色审批——只有特定角色(审核员、管理员)才能批准敏感操作;(5) 异步升级——非阻塞性地将决策路由到 Slack/邮件等异步审核渠道。何时使用的决策原则:不可逆操作、合规监管要求、高风险领域(医疗/金融/法律)、需要同理心的场景必须加人工介入。主流框架 LangGraph(interrupt())、HumanLayer、Amazon Bedrock Agents 都提供了开箱即用的 HITL 支持。​

详细解析​

何时需要 Human-in-the-Loop​

​

代码块​

Plain Text

必须加 HITL 的场景:​

│​

├── 不可逆/破坏性操作​

│ ├── 删除数据、文件、资源​

│ ├── 发送外部通信(邮件、消息、通知)​

│ ├── 金融交易(支付、转账)​

│ └── 修改权限或配置​

│​

├── 合规监管要求​

│ ├── 合同审核(法律)​

│ ├── 医疗建议(医疗)​

│ ├── 投资建议(金融)​

│ └── 涉及隐私数据的操作​

│​

├── 高风险/高影响​

│ ├── 影响客户的决策​

│ ├── 影响业务指标的变更​

│ └── 安全关键操作​

│​

└── 主观判断​

├── 需要同理心的客服场景​

├── 创意内容的最终审定​

└── 复杂的优先级权衡​

​

可以完全自动化的场景:​

├── 信息查询和检索​

├── 数据格式转换​

├── 日志分析和报告生成​

├── 内部代码的 lint/格式化​

└── 低风险的重复性操作​

​

五种 HITL 设计模式​

​

代码块​

Python

​

LangGraph HITL 实现​

​

代码块​

Python

# 关键点:interrupt() 不是同步函数!它会抛出特殊异常暂停图执行,​

# 必须配合 Checkpointer + Command(resume=...) 才能正常工作​

from langgraph.graph import StateGraph​

from langgraph.types import interrupt, Command​

from langgraph.checkpoint.memory import MemorySaver​

​

def agent_node(state):​

"""Agent 决策节点"""​

result = llm.invoke(state["messages"])​

return {"messages": [result], "pending_action": result.tool_calls}​

​

def human_review_node(state):​

"""人工审核节点——interrupt() 暂停并把 value 透传给外部"""​

​

决策框架​

​

​

要不要人审,两次分叉就定:先问质量还是速度,再问可逆性与风险。​

​

代码块​

Plain Text

​

HITL 工具生态​

​

#MGfSfgcTQneE text { white-space: pre; }#MGfSfgcTQneE .fb0 { stroke: var(--N900-FG, 0.15); }#MGfSfgcTQneE .fb0 {stroke: rgba(31,35,41, 0.15)}#MGfSfgcTQneE .fx0 { stroke-miterlimit: 10; }#MGfSfgcTQneE .fx0 {stroke-miterlimit: 10}#MGfSfgcTQneE .fa1 { fill: rgb(187, 191, 196); }#MGfSfgcTQneE .fa1 {fill: rgb(187, 191, 196)}#MGfSfgcTQneE .fx1 { font: 400 12px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#MGfSfgcTQneE .fx1 {font-style: normal}#MGfSfgcTQneE .fx2 { text-anchor: middle; }#MGfSfgcTQneE .fx2 {text-anchor: middle}#MGfSfgcTQneE .fx3 { dominant-baseline: central; }#MGfSfgcTQneE .fx3 {dominant-baseline: central}#MGfSfgcTQneE .fx4 { stroke: none; }#MGfSfgcTQneE .fx4 {stroke: none}#MGfSfgcTQneE .fc0 { fill: var(--text-caption); }#MGfSfgcTQneE .fc0 {fill: #646a73}#MGfSfgcTQneE .fa2 { fill: var(--text-link-disabled); }#MGfSfgcTQneE .fa2 {fill: rgb(187, 191, 196)}#MGfSfgcTQneE .fx5 { font: 400 16px MonospacedNumber, LarkHackSafariFont, LarkEmojiFont, LarkChineseQuote, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Tahoma, "PingFang SC", "Microsoft Yahei", Arial, "Hiragino Sans GB", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; }#MGfSfgcTQneE .fx5 {font-style: normal}#MGfSfgcTQneE .fx6 { text-anchor: start; }#MGfSfgcTQneE .fx6 {text-anchor: start}#MGfSfgcTQneE .fx7 { dominant-baseline: alphabetic; }#MGfSfgcTQneE .fx7 {dominant-baseline: alphabetic}#MGfSfgcTQneE .fc1 { fill: rgb(31, 35, 40); }#MGfSfgcTQneE .fc1 {fill: rgb(31, 35, 40)}#MGfSfgcTQneE .fb1 { fill: var(--N900-FG, 0.15); }#MGfSfgcTQneE .fb1 {fill: rgba(31,35,41, 0.15)}#MGfSfgcTQneE .fb2 { fill: rgb(209, 217, 224); }#MGfSfgcTQneE .fb2 {fill: rgb(209, 217, 224)}#MGfSfgcTQneE .fa3 { fill: var(--bg-body); }#MGfSfgcTQneE .fa3 {fill: #fff}AB123456工具LangGraphHumanLayerAmazon Bedrock AgentsCrewAIPermit.ioHITL 能力interrupt() 暂停图执行完全控制路由和恢复框架无关的 HITL API/SDKSlack/Email/UI 多渠道审批内置 user confirmation 功能可配置哪些工具需要确认human_input=True 参数Agent 级别的人工输入开关基于 RBAC/ABAC 的细粒度审批与 Agent 框架集成的权限管理

​

常见误区 / 面试追问​

误区:"HITL 只是临时方案,最终目标是完全自动化" — HITL 不是权宜之计,而是长期的架构模式。即使 AI 能力不断提升,高风险决策、合规审核和同理心判断仍然需要人类。随着 Agent 能力提升,人类的角色从"逐一审核"转向"战略监督和异常处理"。​

误区:"加了 HITL 就安全了" — HITL 本身也有失败模式:审核疲劳(人类不仔细看就点批准)、响应延迟(人类不在线导致 Agent 阻塞)、能力不匹配(审核者不理解技术细节)。需要配合良好的 UI 设计、轮值机制和明确的审核标准。​

追问:"如何降低 HITL 对用户体验的影响?" — (1) 异步审核——非阻塞操作用异步通知;(2) 批量审核——收集多个待审项一次性处理;(3) 预审批——用户提前授权某类操作;(4) 置信度路由——只有低置信度的才需人工,大部分自动通过。​

追问:"如何量化 HITL 的投入产出?" — 跟踪三个指标:(1) 人工介入率及趋势(应该随 Agent 优化而下降);(2) 人工否决后的实际影响(避免了多少潜在问题);(3) HITL 引入的延迟对业务指标的影响。如果否决率 < 2% 且历史无重大事故,可以考虑降低该类操作的审核要求。​