外观
第 14 章 Research Brief:Human-in-the-loop
读者问题
当 Agent 能够提出修改、调用 Tool 或生成结论时,“让人看一眼”并不是可实现的设计。读者需要能回答:什么动作应自动放行,什么动作需要人工确认;人工究竟在确认意图、范围、证据还是结果;批准如何关联到一次具体动作;以及批准过期、范围变化、拒绝或外部效果未知时,系统为何不能继续执行。
章节目标与非目标
本章将帮助读者把人类在环(Human-in-the-loop,HITL)设计成一个可审查的决策接口:输入是行动卡、证据与风险分类,输出是可关联的批准、拒绝、补证或升级决定。读者应能写出一个审批矩阵,并让每项人工参与都具有明确的触发条件、责任、过期条件和后续路径。
本章不设计真实审批后端、身份认证、权限系统、消息队列、法律合规流程、支付系统、生产发布或事后责任认定。第 11 章负责 Tool 请求与结果协议;第 12 章负责环境、Sandbox 与实际权限;第 17 章负责结果验证;第 18 章负责重试与恢复。人工批准不会自动授予权限、执行 Tool 或接受结果。
需要核验的事实与来源边界
| 待写入的限定陈述 | 来源 | 可以写什么 | 必须避免什么 |
|---|---|---|---|
| 人工角色、责任与监督应当被清晰定义、评估和记录。 | CH14-REF-01、CH14-REF-02 | 明确这是 NIST AI RMF 1.0 的自愿风险管理框架语境,且其在线资源列出了相关结果项。 | 写成每个 Agent 都必须逐步人工审批,或声称 NIST 给出了具体字段/阈值。 |
| 高风险、敏感或不可逆动作,以及超过失败阈值,可作为考虑人工介入的触发器。 | CH14-REF-04 | 明确为该 OpenAI 工程指南给出的两类触发示例。 | 引入未核验的重试次数、风险分数或全行业规则。 |
| 某 SDK 可在敏感 Tool 调用处中断,得到批准或拒绝后再恢复,并使决定关联到调用。 | CH14-REF-03 | 明确为 OpenAI Agents SDK Python 页面描述的该 SDK 流程。 | 将其 Python 类型、序列化、MCP 支持或自动批准回调外推为通用审批协议。 |
| EU AI Act 有针对其适用范围内高风险 AI 系统的人工监督条款。 | CH14-REF-05 | 只作为法规语境存在“专门条款”的提醒。 | 给出法律意见、系统分级判断、地域判断或合规时间表。 |
本书工程扩展
以下对象不是上述来源的产品格式、法规要求或 API:
- 行动卡(Action Card): 待决定动作的意图、对象范围、效果类别、可逆性、证据、新鲜度与失败边界。
- 审批矩阵(Approval Matrix): 依据影响、可逆性、证据强度、策略与不确定性选择自动放行、请求审批、补证、阻塞或升级的本书模型。
- 审批记录(Approval Record): 把一个人的决定绑定到具体行动摘要、范围、时间、证据版本和后续条件的审查工件;不是身份、权限或不可抵赖审计系统。
- 刷新条件(Refresh Condition): 当行动范围、证据、环境、风险等级或时间假设变化时,使旧决定不再可复用的规则。
计划结构
- 把“有人参与”拆成批准、复核、共同决策、接管和事后纠错。
- 用行动卡与审批矩阵把风险路由从 Prompt 文字中移到可检查工件。
- 解释批准的范围、时效、证据与拒绝理由,避免把“同意”写成永久权限。
- 描述暂停、补证、拒绝、超时、范围变化和外部效果未知时的保守路径。
- 通过“依赖漏洞修复建议与发布门”教学案例串联建议、人工决策、执行前检查和结果验证。
计划图示
图源为 diagrams/mermaid/chapter-14-human-approval-routing.mmd。它将回答:一张行动卡怎样根据影响、可逆性、证据和现有决定,路由到自动候选、补证、人工审查、拒绝/升级或“允许进入后续执行前检查”?
图必须明确:
- “允许进入后续检查”不是 Tool 已执行,也不是结果已验收;
- 效果未知先阻塞,不用旧批准或再试一次覆盖;
- 拒绝和范围变化都回到可审查记录,不消失为聊天文本;
- 人工审批只解决决策边界,不替代第 12 章权限与第 17 章验证。
计划示例
示例文件为 examples/agent/human-approval-routing.mjs。纯函数 assessHumanApprovalRoute 只读取注入的 action、policy、approval 和 observation,返回教学状态:allowed、requires_approval、needs_evidence、rejected 或 blocked。
计划测试覆盖:低影响可逆的自动候选、不可逆动作、缺少行动摘要、证据不足、效果未知、过期批准、批准范围不匹配和明确拒绝。示例不得读取文件、使用时钟、调用网络、访问真实身份/权限/审批系统、执行 Tool 或修改外部状态。
风险与待核验项
TODO(verify):若未来引入某云、代码托管、工单或发布产品的审批功能,需在写作日读取该产品官方文档并把产品行为与本书模型分开。TODO(verify):若案例讨论漏洞严重性、CVSS、SLA、发布窗口或法律要求,必须引用适用标准/政策;本章当前不使用这些数值或规则。- 人工环节可能造成延迟、偏差、注意力耗竭或“橡皮图章”式审批。本章只能给出可审查接口,不能保证人类判断正确。
- 将批准记录保存或传输到真实系统时,需要第 12 章及第 41 章的环境、权限、隐私和审计边界;本章不声称记录本身安全。
Research 完成检查
- [x] 读者问题、范围、非范围与相邻章节责任已明确。
- [x] 每项可归因陈述均有本章局部来源与禁止外推范围。
- [x] 行动卡、审批矩阵、审批记录和刷新条件已标为本书工程扩展。
- [x] 图示和示例均具有不执行真实外部操作的边界。
- [x] 动态产品与法规资料均标明后续写作时重新核验的要求。
