基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
技术实践2026-10-26 10:58

发票 Agent 的人工审批边界怎么定

dev.to · AI#Agent#人工审批#工作流
Editor brief · 编辑速览

文章将人工介入细化为停止位置、审批信息、授权范围和无人响应时的处理规则。符合财务容差的发票按规则自动结案,涉及价格、数量或入账调整的具体提案则必须由有权限的人批准。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

发票 Agent 查完采购单、收货记录和供应商历史,接下来能不能直接改账、发邮件?作者给出的答案是:查询可以放开,影响资金和供应商关系的操作必须经过人工审批,而且拦截要写进业务 API,不能只靠提示词约束。

这是「One Agent, Five Platforms」系列第 6 篇。它先规定一套跨平台通用的审批规则,再要求第 11 篇起的各平台实现遵守。对程序员来说,最有用的部分是把「需要人确认」拆成了可以实现、校验和审计的接口契约。

哪些操作该停下来,哪些可以自动走

作者沿用第 2 篇的发票处理流程,划出三处决策位置,但并非每处都安排人工审批。

第一处是容差范围内的正常发票。发票与采购订单(PO)、收货记录匹配,偏差也在财务认可的范围内,就由规则自动结案,不需要 Agent 调整,也不需要人点确认。容差由财务设定和维护,修改属于受控变更,Agent 无权触碰。

理由很实际:让人反复审批大量正确发票,容易养成不看内容直接点击的习惯。审批越多,未必越安全。

第二处是写入企业资源计划系统(ERP)之前。只要 post_invoice_adjustment 要修改价格、数量或记账结果,就必须由具备相应权限的人批准具体方案。Agent 负责整理异常类型、采购订单行、收货记录、供应商历史、价格协议和拟议调整,人负责决定这一次能否执行。

第三处是联系供应商之前。notify_supplier 发送任何内容前,都要有人批准消息。作者认为,错误或措辞不当的询问可能伤害长期合作关系,因此由 Agent 起草,人确认后发送。

发票 Agent 自动处理与人工审批的边界

查询和调查不设审批关卡。Agent 可以按需读取发票、采购订单、收货记录和供应商历史。这也解释了第 2 篇为什么把只读工具设为默认入口。

提示词里的「先问我」为什么不够

作者把审批检查放在参考架构的第 4 层,也就是流程 API 所在层。

提示词中的「提交前必须询问」是一条模型需要遵守的指令。遇到异常单据、过长对话或难以理解的工具返回,模型仍可能偏离要求。流程 API 则可以直接拒绝不符合条件的调用:post_invoice_adjustment 收不到有效的 approval_id,就返回 APPROVAL_MISSING。

审批约束要由执行操作的接口强制校验。

作者在系列 1 的 SAP 变更审批讨论中也采用了这个原则,并要求它在五个平台上保持一致。平台负责怎样暂停和恢复任务,业务接口负责决定操作是否获得授权。

这里的 approval_id 不能只是一个「用户点过同意」的标记,它至少要满足四个条件:

  • 绑定一张发票、一个动作和一个金额;批准后修改价格等提案内容,原审批就不能继续使用。
  • 只能使用一次,不能拿去处理另一张发票。
  • 必须有有效期;过期后重新申请,避免采购单、发票或会计期间变化后继续执行旧决定。
  • 申请人与审批人职责分离;Agent 可以申请审批,但不能批准自己提出的操作,审批人必须是真人,且身份不能与申请者相同。

原文没有给出审批记录结构、有效期长度,也没有展示校验实现。它定义的是接口必须满足的行为。

审批发给谁,没人回复怎么办

审批路由也不能交给 Agent 临场判断。request_approval 根据异常类型和金额,按规则找到对应人员。

低风险情况,例如缺少收货记录、疑似重复发票,由应付账款(AP)团队快速审批;超出容差的价格或数量偏差,交给拥有对应金额财务权限的人;税务不匹配由税务团队判断,Agent 只提供证据;采购订单已关闭,则由采购部门决定。

审批页面至少要展示异常类型、拟议动作、金额、Agent 使用的证据,以及源单据入口。审批人可以批准或拒绝,也可以填写进入审计记录的备注。系列第 34 篇将比较各平台如何呈现这些信息,当前文章没有提供比较结果。

无人响应时,流程应先提醒,再升级给代理人或更高一级负责人。原文没有规定具体等待时长,但给出了明确的默认行为:

超时后发票继续挂起,不入账,也不发送消息。

「没有回答」不能被转换成「已经同意」。

因此,作者计划检查各平台能否创建附带提案和证据的审批任务、暂停并恢复 Agent、返回可供流程 API 验证的 approval_id,以及记录谁在何时批准了什么。这些能力对应评分表中的人工介入指标。

我的判断

我认同把审批放进执行接口,也认同按操作后果设置关卡。相比每一步都弹确认框,这套方案更有机会把人的注意力留给重要决定;相比只在提示词里写要求,它提供了明确的拒绝路径。

但这篇是虚构公司的参考设计。产品能力依据截至 2026 年 10 月的厂商文档,作者也提醒实际构建前核对最新文档。文中没有上线数据、事故率或不同审批策略的对照实验,因此「减少无效审批能改善审批质量」目前仍是设计判断,不能当作已经验证的收益。

它还依赖几个前提:财务容差已经定义清楚,人员权限能够查询,审批记录可信,业务 API 真能拦住越权操作。只有一个审批弹窗,后端仍接受任意写入,这套机制就没有成立。

另外,作者以「读取不改变数据」为理由放开调查,这在流程副作用上成立,却没有讨论读取权限和敏感信息范围。实际接入时,只读权限仍需要限定到任务所需的数据。

能拿来做什么

  • 给现有 AI 工具按后果分类,把查询、财务修改和对外发送分别列清楚,再确定哪些必须停下来等待人工决定。
  • 如果用 Node 封装业务工具,就在写入接口校验审批记录与当前提案是否匹配,并检查有效期和使用状态;缺少有效授权时明确拒绝调用。
  • 做审批前端时,把具体动作、金额、证据和源单据放在确认按钮之前,让审批人能够核查这一次操作。
  • 为等待审批设计提醒、升级和挂起状态,并验证超时路径不会触发入账或发送;选平台时同时检查暂停恢复、授权返回和审计能力。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
把反复踩坑沉淀成AI编程技能
下一篇
Agent 文件写入:先解析路径再校验

资讯速览

dev.to · AI · 2026-10-26 10:58

AI 评分 8.0 / 10

相关标签

#Agent#人工审批#工作流

继续阅读

  • RAG重排如何权衡精度、延迟与成本
  • 把反复踩坑沉淀成AI编程技能
  • Agent 文件写入:先解析路径再校验
  • 用统一技能库减少多 Agent 配置漂移
  • AI 分析链路如何放大业务语义错误