【思考】银行落地业务Agent的思考

最近,跟不少银行科技部的同事讨论一个很有趣的命题:"在内部用Claude Code写辅助代码,效果很不错。那能不能把这套模式直接搬到供应商付款审批、或者贷后风控上?让一个通用的Agent去跑财务、风控、客服这些业务链路?"

我的答案是:"能跑起来,但大概率跑不稳,甚至可能跑出风险。"

这并不是因为模型不够聪明,而是因为代码Agent业务Agent虽然都叫"Agent",但它们要解决的根本不是同一类问题。


一、仓库代码 vs 组织网络

在代码仓库里无往不利的Agent,一进银行核心业务就"水土不服"

  • 代码Agent(如Claude Code) :面对的是一个高度结构化的"静态仓库"。这里有明确的语法规则、可以无限次回滚的版本控制、以及自动化的单元测试。错了?没事,回退重来,成本极低。
  • 业务Agent(如付款审批) :面对的是一个正在运转的"动态组织网络" 。一笔付款单一旦进入流程,它关联着供应商的账期、财务的做账节点、风控的合规校验。不能重来、不能试错、每一步都必须有明确的责任人。

这个本质差异,决定了两者的工程化路径截然不同。
#mermaid-svg-dNHUgl9j7kCazg78{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-dNHUgl9j7kCazg78 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-dNHUgl9j7kCazg78 .error-icon{fill:#552222;}#mermaid-svg-dNHUgl9j7kCazg78 .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-dNHUgl9j7kCazg78 .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-dNHUgl9j7kCazg78 .marker{fill:#333333;stroke:#333333;}#mermaid-svg-dNHUgl9j7kCazg78 .marker.cross{stroke:#333333;}#mermaid-svg-dNHUgl9j7kCazg78 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-dNHUgl9j7kCazg78 p{margin:0;}#mermaid-svg-dNHUgl9j7kCazg78 .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-dNHUgl9j7kCazg78 .cluster-label text{fill:#333;}#mermaid-svg-dNHUgl9j7kCazg78 .cluster-label span{color:#333;}#mermaid-svg-dNHUgl9j7kCazg78 .cluster-label span p{background-color:transparent;}#mermaid-svg-dNHUgl9j7kCazg78 .label text,#mermaid-svg-dNHUgl9j7kCazg78 span{fill:#333;color:#333;}#mermaid-svg-dNHUgl9j7kCazg78 .node rect,#mermaid-svg-dNHUgl9j7kCazg78 .node circle,#mermaid-svg-dNHUgl9j7kCazg78 .node ellipse,#mermaid-svg-dNHUgl9j7kCazg78 .node polygon,#mermaid-svg-dNHUgl9j7kCazg78 .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-dNHUgl9j7kCazg78 .rough-node .label text,#mermaid-svg-dNHUgl9j7kCazg78 .node .label text,#mermaid-svg-dNHUgl9j7kCazg78 .image-shape .label,#mermaid-svg-dNHUgl9j7kCazg78 .icon-shape .label{text-anchor:middle;}#mermaid-svg-dNHUgl9j7kCazg78 .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-dNHUgl9j7kCazg78 .rough-node .label,#mermaid-svg-dNHUgl9j7kCazg78 .node .label,#mermaid-svg-dNHUgl9j7kCazg78 .image-shape .label,#mermaid-svg-dNHUgl9j7kCazg78 .icon-shape .label{text-align:center;}#mermaid-svg-dNHUgl9j7kCazg78 .node.clickable{cursor:pointer;}#mermaid-svg-dNHUgl9j7kCazg78 .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-dNHUgl9j7kCazg78 .arrowheadPath{fill:#333333;}#mermaid-svg-dNHUgl9j7kCazg78 .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-dNHUgl9j7kCazg78 .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-dNHUgl9j7kCazg78 .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-dNHUgl9j7kCazg78 .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-dNHUgl9j7kCazg78 .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-dNHUgl9j7kCazg78 .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-dNHUgl9j7kCazg78 .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-dNHUgl9j7kCazg78 .cluster text{fill:#333;}#mermaid-svg-dNHUgl9j7kCazg78 .cluster span{color:#333;}#mermaid-svg-dNHUgl9j7kCazg78 div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-dNHUgl9j7kCazg78 .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-dNHUgl9j7kCazg78 rect.text{fill:none;stroke-width:0;}#mermaid-svg-dNHUgl9j7kCazg78 .icon-shape,#mermaid-svg-dNHUgl9j7kCazg78 .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-dNHUgl9j7kCazg78 .icon-shape p,#mermaid-svg-dNHUgl9j7kCazg78 .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-dNHUgl9j7kCazg78 .icon-shape .label rect,#mermaid-svg-dNHUgl9j7kCazg78 .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-dNHUgl9j7kCazg78 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-dNHUgl9j7kCazg78 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-dNHUgl9j7kCazg78 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 业务Agent 工作环境
动态组织网络
流程/权限约束
不可逆/需留痕
人工复核兜底
代码Agent 工作环境
结构化代码仓库
语法/规范约束
支持回滚/分支
自动化测试验证


二、AGENTS.md解读

开发者圈最近在热议要不要维护好AGENTS.md,这个文件给代码Agent提供了"项目怎么构建"、"哪些文件不能碰"等仓库上下文

这个逻辑放到银行里完全成立,只是"资产"变了。银行业务Agent极度依赖流程上下文(Process Context)

  • 付款申请是从ERP进来还是从财资系统进来?
  • 10万以下 走简易流程,100万以上是否需要CFO甚至资金调度会签?
  • 哪些供应商(如新成立、或有过风险预警的)必须额外触发风控校验?
  • 节点卡住超过2小时,需不需要自动转人工催办?

核心洞察 :模型参数里存储的是"通识",但它绝对记不住贵行《供应商付款管理办法》第三条第2款的例外情况。这类知识不在参数里,而在制度文件和老员工的经验里。 没人替Agent写清楚,它就永远是个"不懂规矩"的新人。


三、别被Demo骗了:银行业务需要"重Loop工程"

全球AI圈都在卷 "Loop工程" (让Agent自己计划、执行、监工、返工),而不是简单的"一问一答"。

在银行场景下,我们不能讲"Loop"这种极客词汇,要翻译成业务听得懂的**"业务闭环"。一个真正能进生产的银行业务闭环,必须包含以下五步**,缺一不可:

  1. 计划(Plan):解读工单意图,拆解成具体任务清单。
  2. 执行(Do):调用API查余额、调RPA抓取流水、或生成审核意见。
  3. 监控(Check):每一步执行后,核对返回结果是否符合预期(如:额度超限了吗?)。
  4. 异常返工(Action/Adjust):报错或风控拦截时,Agent要能自动降级,换接口或转人工。
  5. 复盘(Review):任务结束后,记录日志,供后续模型微调或审计追溯。

少了任何一步,Agent就只是个"更能聊天的机器人",而不是一个"能干活的合规员工"。
#mermaid-svg-jsTjNJcZbG1k9PgF{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-jsTjNJcZbG1k9PgF .error-icon{fill:#552222;}#mermaid-svg-jsTjNJcZbG1k9PgF .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-jsTjNJcZbG1k9PgF .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-jsTjNJcZbG1k9PgF .marker{fill:#333333;stroke:#333333;}#mermaid-svg-jsTjNJcZbG1k9PgF .marker.cross{stroke:#333333;}#mermaid-svg-jsTjNJcZbG1k9PgF svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-jsTjNJcZbG1k9PgF p{margin:0;}#mermaid-svg-jsTjNJcZbG1k9PgF .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF .cluster-label text{fill:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF .cluster-label span{color:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF .cluster-label span p{background-color:transparent;}#mermaid-svg-jsTjNJcZbG1k9PgF .label text,#mermaid-svg-jsTjNJcZbG1k9PgF span{fill:#333;color:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF .node rect,#mermaid-svg-jsTjNJcZbG1k9PgF .node circle,#mermaid-svg-jsTjNJcZbG1k9PgF .node ellipse,#mermaid-svg-jsTjNJcZbG1k9PgF .node polygon,#mermaid-svg-jsTjNJcZbG1k9PgF .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-jsTjNJcZbG1k9PgF .rough-node .label text,#mermaid-svg-jsTjNJcZbG1k9PgF .node .label text,#mermaid-svg-jsTjNJcZbG1k9PgF .image-shape .label,#mermaid-svg-jsTjNJcZbG1k9PgF .icon-shape .label{text-anchor:middle;}#mermaid-svg-jsTjNJcZbG1k9PgF .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-jsTjNJcZbG1k9PgF .rough-node .label,#mermaid-svg-jsTjNJcZbG1k9PgF .node .label,#mermaid-svg-jsTjNJcZbG1k9PgF .image-shape .label,#mermaid-svg-jsTjNJcZbG1k9PgF .icon-shape .label{text-align:center;}#mermaid-svg-jsTjNJcZbG1k9PgF .node.clickable{cursor:pointer;}#mermaid-svg-jsTjNJcZbG1k9PgF .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-jsTjNJcZbG1k9PgF .arrowheadPath{fill:#333333;}#mermaid-svg-jsTjNJcZbG1k9PgF .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-jsTjNJcZbG1k9PgF .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-jsTjNJcZbG1k9PgF .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-jsTjNJcZbG1k9PgF .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-jsTjNJcZbG1k9PgF .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-jsTjNJcZbG1k9PgF .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-jsTjNJcZbG1k9PgF .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-jsTjNJcZbG1k9PgF .cluster text{fill:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF .cluster span{color:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-jsTjNJcZbG1k9PgF .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-jsTjNJcZbG1k9PgF rect.text{fill:none;stroke-width:0;}#mermaid-svg-jsTjNJcZbG1k9PgF .icon-shape,#mermaid-svg-jsTjNJcZbG1k9PgF .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-jsTjNJcZbG1k9PgF .icon-shape p,#mermaid-svg-jsTjNJcZbG1k9PgF .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-jsTjNJcZbG1k9PgF .icon-shape .label rect,#mermaid-svg-jsTjNJcZbG1k9PgF .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-jsTjNJcZbG1k9PgF .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-jsTjNJcZbG1k9PgF .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-jsTjNJcZbG1k9PgF :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 数据异常/超限
符合预期
接收付款/风控任务
计划阶段

拆解意图 & 调取制度规则
执行阶段

API调用 / RPA抓数 / 规则匹配
监控阶段

执行结果校验
异常返工

自动补偿或转人工介入
任务完成 & 留痕
复盘阶段

写入审计日志 & 经验库
结束


四、架构选型:为什么单一"超级Agent"扛不住业务链路?

在真实的银行信贷审批或付款流程中,单一Agent几乎不可能完美扛住一整条链路

比较成熟的落地做法是 Supervisor-Worker(监督者-工作者)分层架构

  • 上层(Supervisor):负责意图识别和任务拆解(比如:判断这是"加急付款"还是"常规对公")。
  • 下层(Worker):负责调用具体的工具和系统(A Worker查风控名单,B Worker抓取应付账款账龄,C Worker填制支付指令)。

复杂业务不再靠一个大模型"硬扛"到底,而是靠角色分工和流程编排。这一点,恰恰是很多银行在技术选型时容易忽略的------他们往往只看"这个模型大不大",而忽略了"这个系统好不好管"。


五、银行业务Agent落地的"四条红线"判断

  1. 涉及资金与数据变更,不能只靠推理 :涉及资金流转、核心系统写入或客户敏感数据变更的场景,Agent绝对不能 单凭模型推理"拍板"。必须绑定显式的审批链路和操作留痕。在这里,出错不是一个Bug,而是一次操作风险(Operational Risk)事件
  2. 接口不统一,必须"API+RPA"两条腿走路 :银行有大量存量系统和外包系统(甚至只有客户端界面)。业务Agent必须同时具备API集成 (处理标准接口)和RPA执行 (处理"非人类友好"的遗留系统界面)能力,以及顶层的流程编排能力。
  3. 选型标准要从"够不够聪明"转向"三可原则" :进入强合规生产环境,选型标准排序变了:动作可不可控 (不能乱动数据)、过程可不可审 (每一步都有日志)、出错能不能退回去(原子性回滚)。
  4. 别推倒重来,要"长"在现有数字员工资产上:很多银行已经有大量RPA机器人(数字员工)。新的AI Agent更适合作为"大脑"去调度这些现成的"手脚"(RPA组件),而不是推倒重来做一个通用的聊天入口。

六、企业级AI Agent平台怎么选?银行必看的6个硬指标

真正决定业务Agent能不能上银行生产环境的,从来不是会不会写代码,而是下面这6项工程化能力

序号 关键指标 银行关注的核心要点
1 权限继承与治理 能不能继承AD/LDAP(目录服务)和组织架构?Agent必须带着"经办人"的身份去干活,绝不能成为一个权限过大的超级账号
2 流程引擎编排 能否图形化拖拽编排多步骤流程?支不支持会签、或签、加签、转办等复杂人工节点?
3 可观测性(观测) 能不能提供完整的"链路追踪"(Trace),让我知道这笔拒绝付款的原因是哪条规则命中了?
4 断点续作与补偿 接口超时或系统宕机后,Agent能否自动重试或执行逆向补偿(冲正)操作?
5 数据隔离与合规 训练数据和业务数据是否物理/逻辑隔离?能否满足等保和监管数据驻留要求?
6 资产复用能力 能否无缝调用现有的RPA脚本、Excel宏模板或Python核算脚本?

七、国内银行流程自动化的三条演进路线

企业级业务Agent的建设不会只有一种路线

  1. 模型平台路线(云厂商/大模型厂):优势在于基座模型强、工具调用生态好,适合搭建全行统一的"AI能力底座"。
  2. 业务系统路线(ERP/核心厂商):优势在于贴近财务、人力等既有业务数据,适合在系统内部做"智能增强"(如智能助手)。
  3. 企业级流程自动化路线(RPA+AI厂商) :代表如金智维、来也科技等。它们的优势在于长期处理跨系统操作、流程编排、权限隔离和执行留痕,这恰恰补上了大模型落地银行业的"最后一公里"。

以金智维为例,它更合适作为金融、政务这类强流程、强合规 场景的候选方案之一。在这类场景里,银行关注的往往不只是"Agent能不能懂业务",还包括"能不能跨系统调度20个RPA机器人"、"出了问题能不能查得到秒级日志"------这类能力,正是业务Agent与代码Agent的工程分界线。


八、FAQs

Q1:已经在用Claude Code写辅助代码了,还需要单独建业务Agent吗?

A :需要分场景看。代码Agent 适合研发效能提升(代码审查、测试生成);业务Agent适合财务审核、风控处理。两者在银行科技体系内可以并存,但绝对不能互相替代------术业有专攻。

Q2:银行做业务Agent,应该先选大场景还是小场景?

A :强烈建议先选高频、规则相对清晰、人工复核容易介入、收益可量化 的流程。比如报销单据初审对账辅助合同要素核验。第一批场景不一定最大,但一定要跑得稳、算得清节省了多少"人日"。

Q3:怎么判断试点值不值得继续投入?

A:不要看演示效果,要看四类硬指标:①人工耗时是否下降;②处理周期是否缩短;③因疏忽导致的错误率是否降低;④异常情况(如报错)能否被完整追踪到具体环节。

Q4:RPA+AI这类厂商到底适合什么样的银行?

A :最适合流程重、系统多、合规要求极高、且已有自动化基础的银行(尤其是国有行、股份行)。这类银行更关心执行稳定性和权限隔离,而不只是模型问答溜不溜。


真正决定一个业务Agent能不能上银行生产环境的,一定不是模型参数有多大,而是它有没有被套进一套看得见、管得住、退得回去的流程铠甲里。

相关推荐
梦想三三1 小时前
YOLOv5口罩检测完整实战(二):从现成数据集到训练、评估与摄像头识别
人工智能·yolo·计算机视觉·目标跟踪
gwf2161 小时前
Soft-RoCE与Soft-iWARP深度解析:无硬件RDMA学习环境搭建(零基础必知必会)
人工智能·python·tcp/ip·tcp·tcpdump
云端漫步19871 小时前
HarmonyOS NEXT AI 智能生活助手:会话管理与聊天记录保存
人工智能·生活·harmonyos
AI行业学习1 小时前
Claude Code + cc-switch + Git + Node.js 一站式完整安装配置教程(2026最新·国内可用版)
人工智能·git·python·安全·node.js·html·notepad++
汽车仪器仪表相关领域1 小时前
NHA-604/605汽车排放气体测试仪:00级国标计量|多动力车型兼容|移动/固定双工况|智能联网尾气检测设备
大数据·人工智能·功能测试·安全·汽车·压力测试·可用性测试
科技园长1 小时前
睿视医疗与晓闻科技达成战略合作,推动宠物专用CT设备智能化、数字化全面升级
人工智能·科技·宠物
杰瑞学AI1 小时前
一个回答需要10分钟:飞书问答机器人踩坑实录——纯Agent自由检索,差点让我们的机器人“难产”
人工智能·机器人·prompt·transformer·飞书·ai-native
灵枢时代2 小时前
小程序在生鲜配送行业,如何设计夜间预约和次日达的订单处理流程?
数据结构·人工智能·小程序