技术实践
淘天以拦截器和通知管理Agent人工介入
概述
针对权限控制、问题澄清等需要人工介入的人机协作场景,团队用异常机制实现快速中断:某个工具执行中需要中断(如权限校验失败、HITL 需人工确认)时,ToolInterceptor 抛出 HumanInterventionException。ObservationInterceptor 捕获后调用 agentInterruptManager.interrupt() 设置中断标记、通过 SSE 向前端发送中断通知(对话框弹窗或表单页面),并返回 status=error 的 mock 工具响应。 中断标记置位后,后续工具的 ToolRecordInterceptor 在执行前检测到标记即直接跳过执行并返回 mock 响应,使一次模型推理产生的多个工具调用链被整体快速跳过,无需等待每个工具逐一执行。最终由 Checkpoint 保存完整的工具响应状态,恢复时框架据已有响应识别哪些需要重试。该机制支持三类中断场景:权限不足(异常携带权限申请链接)、表单填写(携带表单协议信息由前端渲染表单页)、对话框确认(携带对话框协议信息由前端渲染确认弹窗)。