---
title: "人在回路怎么设计"
description: "人在回路不是加一个确认弹窗。本文讲审批为什么按动作而不是按会话、超时后该拒绝还是放行、怎么避免橡皮图章，以及哪些动作必须强制人工并留下审计记录。"
updated: 2026-11-13
canonical: https://docai.cc/concepts/human-in-the-loop/
markdown_mirror: https://docai.cc/concepts/human-in-the-loop.md
---
## 它是什么

人在回路指 Agent 在执行某个动作之前停下来，把即将做什么交给一个人确认、修改或拒绝，再继续。

关键在动作前：事后审计挡不住已经发生的损失。真正的人在回路是流程里的阻塞点，而不是日志里的标记。

## 怎么工作

一次审批包含四件事：动作描述、影响范围、可选决定、超时后的默认行为。

动作描述具体到[工具调用](/concepts/tool-use/)与参数：调用哪个接口、写哪个文件、发给谁、数量是多少。影响范围说明是只读还是写入、能否回滚、影响哪些用户或系统。可选决定至少包括批准、拒绝、修改参数；拒绝理由要回传给 [Agent](/concepts/agent/)，让它调整计划，而不是原样重试。

## 按动作审批，不按会话审批

会话级审批问的是「这个任务可以开始吗」。短任务里够用，长任务里会失效：用户开头点了同意，后面每一步具体动作就没人看了。授权抽象成一句「你看着办」，高风险动作就失去了把关。

动作级审批按三个维度分级：读还是写、影响范围大小、是否可逆。只读查询自动放行；可逆写入可以抽样或事后审计；不可逆、对外可见、涉及资金或权限的动作逐次确认。

粒度过细也有代价：每一步都弹窗，人很快会机械点过。分级要和批量策略配合：同一次任务里同类的低风险写入可以一次批准，但要设次数和范围上限。

## 超时与降级

审批请求必须带超时。超时后应当拒绝或挂起，而不是自动放行。无人值守时自动通过，等于把风险控制交给计时器。

降级路径提前设计：转成只读结果、保存草稿等人工处理、拆成更小步骤，或者排队等有人值班。降级不是失败，它让任务在没有确认时停在安全的一侧。

## 避免橡皮图章

橡皮图章常见于三种情况：信息太多、信息无关、默认就是批准。

改进办法：模型自述摘要与真实动作参数分开显示，人看参数；只展示本次的关键差异；不可逆动作默认选拒绝，批准需要明确点击；定期抽查批准记录，发现一路批准就收紧粒度。

## 记录什么

审批记录至少包含：谁批准的、什么时候、批准的是哪个动作（请求标识、工具名、参数摘要）、决定与理由、最终执行结果。记录由你的系统写入，Agent 不能修改。它用于追责与评估：哪些动作经常被拒绝，说明工具或计划有问题；哪些批准从未被复核，说明审批已经形式化。

## 哪些动作必须强制人工

判断标准是不可逆、对外可见、涉及资金或权限。典型清单：付款与转账、删除或覆盖数据、对外发送消息或发布内容、修改权限与密钥、变更生产配置与部署、代表用户提交有法律效力的内容。

受监管行业还要按行业规则补充。官方未给出统一清单，需要业务方自己定义并定期复核。

## 常见误解

- **有确认弹窗就是人在回路**：信息不足的弹窗只是仪式，人无法判断。
- **会话级批准就够了**：长任务里授权会漂移，必须落到动作级。
- **人工确认能兜住所有错误**：人会疲劳也会点错，高风险动作仍要设计成可回滚。
- **超时自动继续更顺畅**：无人确认时放行，等于关掉这道闸门。
