把财务流程交给AI,这个词听着有点玄,但真做起来,其实就是把一批规则明确、样本充足、沟通成本高的重复劳动,一件一件从人手里接过来。我所在的公司规模不大,员工1000人出头,下属公司加起来10家主体,放在市场上就是个标准的中型集团。但就是这个体量,财务部常年卡在同一个问题上:单子太多、规则太碎、人多也没用——人越多,沟通成本越高,复核链条越长。
去年我们把六个核心财务流程陆续交到了财务智能体手上。半年跑下来,费用审核周期从平均三天压到当天清,月结时间提前了四天,代理记账那边每个月少加班二十几个人天。这篇文章就把整个实施过程复盘一遍,从流程选型到技术架构,从模型部署到权限设计,再到实际踩过的坑,尽量说细,给准备往这个方向走的团队一个参考。
1. 项目背景:1000人的集团,财务到底卡在哪
1.1 十套账、十套口径,难的不是业务是协同
先说清楚我们这种组织的复杂度。名义上是集团,实际上是一家母公司加九家子公司,行业不同、规模不同、信息化程度也不同。有的子公司用成熟的ERP,有的还在Excel记账;有的主体有独立的采购权限,有的要走母公司审批。10家主体就是10套账、10套科目体系、10条审批链。
这种格局下,财务部最耗时间的根本不是记账本身,而是跨主体的单据流转和口径对齐。员工报销要按所属主体走不同的费用科目;采购付款要在多个系统之间核对合同、订单、发票;月结的时候,10个主体的数据汇总到集团,光校验表间勾稽关系就要一两天。过去这些活全靠人肉拉Excel、发邮件、打电话确认,不仅慢,还容易错。
1.2 为什么是智能体,而不是传统RPA
立项前我们对比过三条路线:传统RPA、规则引擎、大模型智能体。
RPA的问题在于它只能执行固定流程,单据格式一变、审批层级一改,脚本就要重新录一遍。对于多主体、多系统的环境,RPA的维护成本高到不现实。规则引擎适合处理完全确定性的逻辑,但碰到合同条款审查、发票真伪判断这种语义问题,规则根本写不出来。
智能体的核心差异在于它能理解上下文,并且自己决定调用什么工具、按什么顺序执行。同样是审核一笔报销单,它看到餐饮发票会去核对报销标准,看到住宿发票会去核验出差申请单,这种动态决策能力是传统自动化工具给不了的。我们最后确定的方向是:以大型语言模型为推理中枢,配合OCR、规则引擎、ERP接口、知识库,组成一个能独立处理完整财务任务的智能体系统。
2. 六个流程的选定逻辑:先啃硬骨头还是先摘软柿子
2.1 流程选型的四条标准
定了技术路线之后,最难的是选试点流程。集团财务有几十个流程,不可能一口气全接上。我们当时定了四条筛选标准:
- 规则可以沉淀。流程中大部分决策能写成明确规则,或者通过文档描述清楚。
- 样本量足够大。流程每月发生次数多,AI才有一百种以上的案例可学,也容易量化前后对比。
- 跨系统流程优先。流程涉及ERP、OA、发票平台等多个系统,最能体现智能体的价值。
- 风险可控。出错不会直接导致资金损失,或者有足够的人工复核环节兜底。
按这四条标准,我们从几十个流程里筛出了六个:费用报销审核、发票查验与三单匹配、合同财务条款审查、银行流水自动对账、会计凭证自动生成、经营分析报表生成。
2.2 每个流程解决的痛点
这六个流程不是随便挑的,它们覆盖了财务域的六个典型场景:员工费用、采购付款、合同风控、资金管理、核算记账、管理分析。每个流程背后都有一个具体的业务痛点:
- 费用报销审核:1000个员工每月大约1400笔报销,财务4个人专职审核,高峰期还要业务部门抽调人手帮忙。
- 发票查验与三单匹配:采购订单、入库单、发票三者信息齐不齐、金额对不对、发票是否真实,过去靠人工逐笔核对,月均1000多笔,眼睛都快看瞎了。
- 合同财务审查:每份合同财务条款是否合规、付款节点是否安全、税率是否准确,法务和财务来回传文件,平均一份合同要流转两天。
- 银行流水对账:10个主体几十个银行账户,每月流水上万笔,与账面记录逐一匹配,月末要加班三天。
- 凭证生成:重复性极强的借贷分录录入,纯结构化劳动,但量大,且容易因为选错科目导致报表不平。
- 经营分析报表:每月月结后要出集团合并快报、各主体经营分析,Excel公式套公式,修改一次报表逻辑要牵连一片。
选完这六个流程后,我们心里就有数了:这不是做一个炫技的AI演示,而是要把财务最枯燥、最费时、最容易被投诉的活真正接过来。
3. 财务智能体的技术架构:模型底座与Agent设计
3.1 整体架构怎么搭
整个系统分成四层。最底层是基础设施,包括GPU算力集群、向量数据库、文件存储;往上是大模型推理服务,统一封装成内部API;再往上是Agent引擎,负责任务拆解、工具调度、记忆管理;最上层是财务业务应用,把六个流程的入口暴露给用户。
四个层次之间有两条关键约定。第一,所有数据交互必须走内部API,禁止智能体直接连数据库拿数据。第二,每一步工具调用的入参和出参都要落日志,保证审计可追溯。这两条约定在后期排查问题和通过合规审计时帮了大忙。
3.2 模型选型与私有化部署
模型选型我们纠结了比较久。最初考虑过直接调用云端API,算下来一年token费用百万级,而且财务数据涉及员工薪酬、供应商信息、银行账号,出于合规要求必须私有化部署。
最后选定的是基于开源底座模型微调的方案。显卡用的是8卡A800模组,用过去12个月脱敏后的真实财务数据做了指令微调,让模型熟悉财务术语、单据格式和审核口径。后来实测效果明显比通用底座好——同样的提示词,财务术语的生成准确率提升了大约15个百分点。
3.3 Agent工作流设计
光有模型不行,财务智能体真正干活靠的是Agent工作流。我们的设计思路是把一个完整的财务任务拆成三个环节:规划、执行、复核。
规划阶段,智能体根据用户提交的任务类型,从流程模板库中选取对应的执行方案,比如“费用报销审核”会包含票据识别、标准比对、异常标记、生成结论四个子任务。执行阶段,Agent按顺序调用OCR服务、发票查验接口、ERP查询工具,每一步拿到的结果都会写入上下文。复核阶段,系统会强制校验关键字段——比如金额是否一致、发票代码是否存在、审批链是否完整——校验不通过就进入人工复核队列。
这个设计的关键是让智能体“带着证据说话”。它输出的每一笔审核结论,后面都跟着数据来源,人工复核时点开就能看到对应票据图片、原始单据、规则命中记录。
4. 六个流程逐个拆解:实操方法与参数细节
4.1 费用报销审核:三重校验机制
费用报销是员工感知最强的流程,也是我们第一个上线的。它的核心逻辑是三重校验:OCR识别、硬规则校验、语义审核。
第一步,员工拍照或上传PDF报销单后,OCR模型把票据的关键字段抽取出来,包括发票代码、金额、日期、商家名称。第二步,规则引擎做硬校验:发票是否在报销时间范围内、金额是否超过预算、交通票据是否与出差申请重合。第三步,大模型做语义审核:把OCR结果、报销事由、审批链信息拼成一段结构化文本,让模型判断这笔报销是否符合公司的费用管理制度。
语义审核这一步最容易出问题。早期模型经常把“客户招待费”误判为“员工福利费”,原因是我们没有给模型提供足够多的公司内部定义。后来我们在知识库里补充了费用科目的判定条件,每个科目给了5到10个历史案例作为few-shot示例,误判率才降下来。最终线上的表现是:自动通过率62%,退回待补件率21%,人工复核率17%,平均单笔审核时长从原来的15分钟降到40秒。
4.2 发票查验与三单匹配:API编排与置信度阈值
这个流程复杂度更高,涉及采购订单、入库单、发票三个数据源。技术上的难点在于信息格式不一致:采购订单是ERP导出的,入库单是仓储系统生成的,发票是PDF扫描件,三者的金额格式、日期格式、商品描述都不一样。
我们的方案是先用OCR抽取出三份单据的结构化字段,再用一个统一的“单据对齐器”做字段匹配。对齐器内部有两层:第一层是确定性规则,比如采购订单号必须完全匹配、金额差异不能超过0.01元;第二层是模糊匹配,处理商品名称、税率、供应商名称这种语义等价但字面不同的字段。
大模型在这个流程中主要负责两件事:一是处理匹配置信度处于临界值(85%到95%)的单据,判断是否可以放行;二是对匹配失败的单据生成具体的差异说明,方便采购员快速处理。上线三个月后,三单匹配的自动化准确率稳定在97.2%,剩余2.8%进入人工队列,基本是退货、折扣、多笔合并这类特殊业务。
4.3 合同财务条款审查:RAG知识库的实践
合同审查是六个流程里最像“AI”的一个。它不是简单的规则判断,而是需要结合公司财务政策、税务法规、历史合同先例来综合判断。
我们的做法是搭了一个合同条款知识库,把三类文档灌进去:公司财务管理制度、主要合同模板的历史批注、当地税务部门的常见口径说明。智能体审查合同时,先通过RAG检索与当前合同最相关的知识片段,再让大模型基于检索结果给出三条结论:合同付款节点是否存在现金流风险、税率适用是否正确、违约金比例是否在可接受范围内。
RAG的检索质量直接决定了审核质量。早期用BM25做检索,结果经常抓到不相关的章节,后来改成向量检索加关键词混合召回,并且按合同类型给知识库打了标签。现在合同类型的准确识别率达到91%,财务条款审查意见的采纳率超过85%。
4.4 银行流水自动对账:NL2SQL与异常聚类
银行对账这个流程,数据量最大、规则最机械,但恰恰是ROI最高的。10个主体、30多个银行账户、每月流水约2万笔,过去靠Excel的VLOOKUP和人工肉眼,现在交给智能体。
底层逻辑是把“对账”转成一次数据库查询任务。Agent通过自然语言理解对账规则,自动生成SQL查询语句,从流水表和账面记录表里找出金额相同、方向相反、日期匹配的配对记录。匹配成功的自动打标,未匹配的聚成几类:时间错位、金额差异、手续费遗漏、重复入账。
NL2SQL这个环节,我们的解决方式是既不完全走自然语言生成,也不完全走固定模板,而是用“半模板化”:对账规则库先提供SQL模板,智能体只负责从用户描述中提取参数,填入模板。这样做的好处是SQL语法错误率从早期的12%降到0.3%以下,瓶颈不在模型能力,而在参数提取的准确性。最终月度对账的自动完成率达到93%,剩下的7%推给资金会计处理,月末加班从三天缩短到半天。
4.5 会计凭证自动生成:从结构化数据到借贷分录
凭证生成是核算域的“最后一公里”。前几道流程已经把单据验证好了,生成凭证就是将审核结果映射为会计科目和借贷方向。
这个流程我们用的策略是“科目映射表+异常转人工”。财务部提前维护了一张映射表,把常见的业务类型、费用类型、部门主体映射到标准科目编码。智能体根据单据上已经结构化的字段,先查映射表,查不到就让模型推断科目,并标注“需人工确认”。上线一个月后,直接命中映射表的凭证比例是78%,模型推断的比例是15%,人工干预比例降至7%。需要强调的是,最终凭证入账之前必须经财务主管复核一道——这是原则性问题,凭证是最后的财务记录,不能完全放手。
4.6 经营分析报表:大模型写分析初稿
最后一个流程相对“轻”,但价值最直观。月结后,智能体会自动读取10个主体的利润表、资产负债表、现金流量表关键数据,生成一份标准化的经营分析初稿,包括收入同比环比、毛利变化、费用率异动、现金流预警。
这部分我们让大模型以“首席财务官助理”的角色来写作,提示词里规定了分析框架:先总后分、先利润后现金、每个异常指标必须给出可能原因和需要业务确认的问题。生成完初稿后,财务分析师在原稿上修改,而不是从空白开始写。实际跑下来,一篇原本需要两小时的分析报告,现在只要30分钟——AI写骨架,人补血肉。
5. 实施推进的节奏与团队配合
5.1 试点、灰度、全量的三阶段策略
六个流程不是一次上线成功的,我们分了三批。
第一批是费用报销审核和凭证自动生成,选了一个业务量中等、财务负责人配合度最高的子公司做试点。试点阶段的要求是不追求自动化率,追求“AI结论正确、人工复核能发现所有错误”,跑了一个月才放量到全集团。
第二批是发票查验与银行流水对账,这两个流程规则确定性高,在我们把置信度阈值调到95%、把特殊场景的兜底规则补齐之后,直接在全集团铺开。
第三批是合同审查和经营分析,这两个流程涉及主观判断成分较多,灰度期拉得比较长。合同审查在两个法律风险偏好不同的子公司跑了两个月,收集了87个边缘案例才转全量。
5.2 权限设计与数据隔离
多主体环境下,权限设计怎么强调都不过分。十个主体的财务数据不能互相可见,子公司的银行账号、员工薪酬、合同金额都属于敏感信息。
我们的做法是基于“租户隔离”思路:每个主体作为独立空间,知识库分段、工具调用范围、模型上下文都按主体隔离。具体到技术实现,就是每一次Agent执行任务时,上下文窗口中只注入当前主体相关的数据,系统提示词里明确声明“不得跨主体引用数据”。权限模型和原来的OA系统打通,员工、主管、财务、审计各角色对应的数据范围不变。
5.3 人机协同的兜底机制
任何一个做AI落地的人都应该明白:准确率不可能做到100%。因此我们在全流程中设计了多层兜底:
- 置信度阈值:AI推理结果置信度低于阈值的,强制进入人工队列。
- 人工抽检:每批自动处理完成的单据,按不低于5%的比例随机抽检。
- 双人复核:涉及付款、凭证入账、合同批准这三类高风险动作,必须经过财务主管确认。
- 定时回捞:每周由系统自动汇总AI处理失败或人工改判的案例,形成错题集,用于更新提示词和微调数据。
这套机制让我们在线上出过两三次小事故的情况下,没有一次造成实际资金损失。
6. 常见问题与排查技巧实录
6.1 大模型幻觉怎么治
说到AI落地,幻觉问题绕不开。举一个真实案例:有一次智能体审核一笔住宿报销,发票金额是2380元,但公司住宿标准是500元一晚,按理应该超额标记。系统判断该笔为“超标”,但生成的审核意见却写成了“住宿标准应为350元”,金额和公司政策完全对不上。
排查下来发现,是知识库里混入了一份过期的报销制度草稿。后续我们采取了三层措施:知识库文档按生效日期加时间戳,检索时过滤失效文档;所有生成结论必须附引用来源,没有来源的结论一律不采信;关键金额、日期等字段做规则校验,模型生成的数字必须与OCR数据源一致,不一致直接打回。
6.2 多主体的“口径”问题
集团最头疼的是会计口径不一致。同一笔费用,母公司和子公司用的科目不一样;同一个客户,不同主体的核算方式也不同。
我们的智能体早期经常在这种场景翻车。后来在流程模板中增加了“主体参数”的概念,每个主体的政策文件、科目表、审批规则都单独建档。智能体在启动流程前,第一步先识别当前单据所属主体,再加载对应的参数包。这样保证了同一个智能体在不同主体下表现一致,但口径不同。
6.3 成本与性能的平衡
GPU成本和响应速度是上线前最担心的问题。实际跑下来,单笔费用审核的平均耗时为25秒,主要瓶颈不在模型推理,而在多个工具调用的网络延迟。我们把工具调用改成并行执行,同时把模型的输入长度压缩、精简提示词,单笔耗时降到14秒。
成本方面,目前六条流程月度token消耗折算下来大约在每笔单据0.3元左右,加上GPU折旧和运维人力,整体成本不到原有人力成本的五分之一。这个账算下来,项目ROI非常清晰。
6.4 几个重复踩过的坑
说几个在文档里看不到的坑。
第一个是OCR的识别率没有想象中高。发票照片角度倾斜、光线不均、盖章遮挡,都会导致字段错位。后来我们强制要求上传原图、压缩图片不得作为报销附件,OCR准确率才从96.1%升到99.2%。
第二个是模型上下文长度。前期设计时觉得长上下文是万能解药,把合同全文加历史记录全塞进去,结果模型注意力涣散,审查结论反而变差。后来改成按需注入:先检索和合同强相关的条款,再决定要不要输入全文。
第三个是人机交接体验。AI退回单据时,只写“不合规”会让员工非常恼火。后来我们要求所有退回结论必须包含具体原因、政策依据和修改建议,员工申诉率下降了70%。
7. 写在最后的个人体会
项目上线半年多,我最深的感受是:财务智能体不缺技术,缺的是对场景的敬畏。模型能力和产品体验之间有巨大的缝隙,这个缝隙需要靠流程设计、用户反馈、持续迭代来补。
如果让我给准备做类似项目的同行一个建议,那就是不要想着一步到位,选两个小流程先跑通,让团队尝到甜头,再滚动扩大。同时一定要把数据基础打好——字段标准化、接口规范、日志完整——这些看起来不起眼的脏活累活,决定了智能体的上限。
财务流程交给AI,不是把人换掉,而是把每个人都从重复劳动中解放出来。我们现在财务部的人,开始有精力去做经营分析、成本优化、业务支持这些更有价值的事情,这恐怕才是落地这件事最大的意义。