跳至正文
Starone

解决方案

持久可靠、可观测并由人掌控的自动化

我们用工作流引擎、文档处理和 AI 智能体实现多步骤业务流程的自动化:确定性规则够用的地方用规则,需要对非结构化输入作出判断的地方用 AI。

问题域

组织中的大部分运营工作,都是跨越多个系统的流程:一张发票通过邮件到达,与 ERP 中的采购订单核对,由经理审批,过账到账本,然后付款。是人在系统之间搬运这个流程,重复录入数据,并记住下一步该做什么。自动化省去的正是这种搬运。要把它做好,自动化后的流程至少要和它所替代的人一样可靠,并且更容易检查。

这样的流程里有两类步骤。一类是完全可以明确规定的:如果金额低于阈值且供应商已获批准,就转入付款。这类步骤应当放在确定性代码或规则引擎中,在那里它们快速、便宜、可测试、可解释。另一类涉及非结构化输入或判断:读取扫描文档、对客户邮件分类、起草回复、判断一个含糊的引用指的是几条记录中的哪一条。这才是语言模型发挥价值的地方。

工程上的难题,是把两者结合起来而不失去控制。能够调用工具的 AI 智能体能力强大,同时也是非确定性的。把它放进持久化工作流中,配上类型化的输入输出、有边界的权限、校验,以及在关键节点上的人工审批,它就成为一个可以托付实际工作的组件。任由它在生产系统上自由运行,则不然。

难在哪里

工程挑战

01

静默失败的自动化

定时脚本在第三步抛出错误后停止。没有任何机制重试,没有人收到通知,做到一半的工作要等客户投诉时才被发现。没有持久化的状态和可见性,每一个自动化都是一处隐患。

02

规则就能解决的地方用了 AI

在逻辑完全已知的情况下把决策交给语言模型,每次运行都会增加成本、延迟和小概率的错误答案,结果也更难解释。相反的错误同样常见:用几百条脆弱的规则去解析自由文本,而模型本可以轻松处理。

03

权限过大的智能体

一个拥有宽泛 API 凭证和开放式目标的智能体,可能做出没有人打算让它做的操作,当它读取的文档中含有被注入的指令时尤其如此。风险随它持有的权限同步放大。权限必须按任务限定范围,有后果的操作必须设卡把关。

04

文档的多样性

发票、表单和合同以扫描件、照片和 PDF 的形式到达,版式多达数百种。基于模板的抽取在供应商更改格式时就会失效。抽取需要置信度评分、与已知数据的校验,以及把不确定的情况转交给人的通道。

05

跨系统的部分失败

流程更新了 CRM,随后更新 ERP 失败。从头重试会重复第一次更新;就此停下则让系统之间不一致。每一步都需要是幂等的,流程也需要为无法完成的步骤定义补偿措施。

06

事后才考虑的人工审批

通过邮件处理的审批没有期限、没有升级机制,也没有与流程关联的记录。工作就这样搁置在收件箱里。人工任务需要成为流程中的正式步骤,具备指派、超时、委托和审计轨迹。

我们如何构建

架构

流程运行在持久化每一步的工作流引擎之上。确定性规则、文档处理和 AI 智能体作为带类型化契约的活动被调用,人的决策则被建模为显式任务。

  1. 01

    持久化工作流引擎

    由 Temporal 这类引擎,或 Camunda 这类 BPMN 平台,把每个流程作为持久化的状态机来执行。如果工作节点崩溃,流程从最后一个已完成的步骤恢复。重试、超时和定时器在工作流定义中声明,流程可以为等待一个外部事件而停留数天,却不占用资源。

  2. 02

    集成连接器

    每个外部系统都通过连接器访问,由连接器处理认证、限流、分页和错误映射。连接器的操作被设计为幂等,使用自然键或幂等令牌,因此重试的步骤不会产生重复记录。当某个系统不提供 API 时,才把基于用户界面的机器人流程自动化(RPA)作为最后手段,并把它隔离在同样的接口之后。

  3. 03

    规则与决策服务

    可以完全明确规定的业务规则,以版本化的决策表或代码的形式放在决策服务中,与调用它们的工作流分开。这样策略变更可以单独评审和测试。每次求值都记录输入、规则版本和结果,为任何一项自动决策提供直接的解释。

  4. 04

    文档处理流水线

    传入的文档先分类,再经过光学字符识别(OCR)和版面分析,由适合该文档类型的模型抽取字段。抽取出的值与参考数据进行校验,例如匹配 ERP 中的供应商和采购订单,并被赋予置信度评分。高置信度的结果自动继续;其余的进入审核界面,界面上并排显示原件与抽取出的字段。

  5. 05

    AI 智能体运行时

    智能体作为工作流活动被调用,有明确的目标、固定的工具集合,以及对步数、时间和花费的限制。工具是功能单一、带类型化参数的函数,以限定在该任务范围内的凭证执行。智能体的输出必须符合既定 schema 并通过校验,工作流才会据此行动;智能体读取的内容则被视为不可信数据。

  6. 06

    人工任务服务

    审批、审核和异常都是指派给某个角色或个人的任务,带有到期时间、升级路径和委托规则。审核人可以看到自动化所依据的证据和它提议的操作,并可以批准、修改或拒绝。决定被记录在工作流实例上,并使其恢复运行。

  7. 07

    流程可观测性

    每个工作流实例都对外呈现其当前步骤、历史、输入和输出。仪表盘报告吞吐量、周期时间、失败率、无需人工干预即完成的案例占比,以及 AI 步骤对照持续维护的评估集所得到的质量。失败的实例会出现在运营队列中,可以在那里检查、修正并恢复运行。

带人工审批的智能体工作流

推理

  1. 01

    触发

    事件、定时任务或用户请求

  2. 02

    规划

    把目标拆成有边界的步骤

  3. 03

    工具调用

    通过类型化工具只读查询

  4. 04

    拟定操作

    拟议的变更及其证据

受控执行

  1. 01

    策略检查

    限额、权限与风险评级

  2. 02

    人工审批

    高影响操作必须审批

  3. 03

    执行

    向目标系统幂等写入

  4. 04

    验证

    确认结果,重试或回滚

  5. 05

    审计

    每一步都有日志且可重放

智能体先用只读工具制定计划、收集证据,再提出一项操作。写操作要经过策略检查,影响较大时还需人工审批,之后才会执行并留下审计记录。

一次合作交付什么

  • 流程分析,识别基于规则的步骤与基于判断的步骤
  • 部署在持久化引擎上的工作流定义
  • 连接相关系统的幂等连接器
  • 带置信度阈值与审核界面的文档抽取流水线
  • AI 智能体的工具、权限范围与评估集
  • 带升级规则的审批与异常处理
  • 运营仪表盘,以及处理失败实例的运维手册

开始之前

需要尽早做出的决策

某一步骤用规则,还是用 AI
当输入是结构化的、逻辑可以完整写下来时,使用规则;它们更便宜、更快,并且可审计。当输入是非结构化的,或者情况多到规则难以管理时,使用 AI。一个不错的默认做法是由模型负责抽取和分类,再由规则作出决定,这样决策本身仍然是确定性的。
人工审批放在哪里
放在出错代价高或不可逆的地方:付款、对外沟通、合同变更,以及任何触及客户法律地位的事项。使用置信度阈值,让人只审核不确定的情况,而不是每一个案例。随着证据的积累重新审视这些阈值;取消一个人工步骤,应当是一项经过深思熟虑并有记录的决定。
工作流引擎,还是事件协同
当流程有既定顺序、需要清晰地看到自身状态并且带有补偿逻辑时,使用工作流引擎。当各个独立系统对事实作出反应、没有哪一方拥有整个流程时,使用事件协同(choreography)。冗长的协同链条难以追踪和修改,因此对核心业务流程而言,编排器通常更为合适。
一个全能的智能体,还是多个专精的智能体
优先选择工具集小、职责单一的专精智能体,由工作流把它们组合起来。它们更容易评估,运行成本更低,并且能限制任何单点失败的影响范围。一个拥有许多工具的通用智能体起步更简单,却更难预测、测试和保障安全。

常见问题

常见问题

这与机器人流程自动化(RPA)有什么不同?

机器人流程自动化通过用户界面驱动应用程序,在没有 API 时很有用,在界面变化时却很脆弱。这里的做法是尽可能通过 API 和事件集成,在工作流引擎中持久化流程状态,并把 AI 用于非结构化输入。界面自动化只保留给别无选择的系统。

AI 智能体可以在无人监督的情况下执行操作吗?

对于影响小且可撤销的操作,在限定于该任务的权限范围内,可以。有后果的操作要经过人工审批步骤。这条界线按流程、与对流程负责的人共同设定,并由工作流强制执行,而不是交给智能体自行判断。

某个步骤失败时会怎样?

引擎以退避方式重试瞬时故障。如果故障持续存在,实例会暂停在一个可见的错误状态,并保留完整历史,运营人员可以修正数据并从该步骤恢复运行。对于跨多个系统的操作,补偿动作会撤销已经完成的步骤。

组织应该从哪里入手?

从一个发生频繁、已被充分理解并且令人头疼的流程入手,其输入和结果应当可以度量。在规范的引擎上把一个端到端流程自动化,可以建立起后续流程能够复用的连接器、审批模式和监控。

有一套必须在生产环境中正常运行的系统?

告诉我们您正在构建什么。工程师会阅读您的留言,并在两个工作日内回复。