目录
  1. 这是什么
  2. 为什么做
  3. 产品价值是怎么想的
  4. AI 架构是怎么做的
  5. 效果怎么样
  6. 5 个落地案例
    1. 不让 AI 全自动查税局
    2. 规矩写进程序,不靠 AI 自觉
    3. 4 台电脑只有 1 台装得上
    4. AI 总写错格式,就让它写不错
    5. AI 不用我的工具,是工具不好用
  7. 我的体会
AI 产品经理 · 项目复盘

拾遗 Gleaner

一个懂规矩、会干活的数字稽查员,企业财务提效 Agent

01 · 一句话讲清

这是一个什么产品

产品简介

懂规矩、会干活的数字稽查员

它住在系统与系统的缝隙里,持续把「应该是什么」和「实际是什么」对上。每一条结论,都指得到制度第几条、凭证第几张。

给谁用企业里做报销审核的财务。装在自己电脑上用。
交给它发票(PDF、OFD、图片)+ 报销 Excel 表 + 公司报销制度 + 一句话说明要做什么
它交回整理好的发票台账;一份最多 20 张的「建议重点复核」清单;每张票的结论(违规 / 存疑 / 通过)和依据
和 ChatGPT 的区别它守一条铁规矩:拿不出依据,只能说「存疑」,不能说「通过」。对财务来说,最怕的不是误报,而是把有问题的票悄悄放过去。
我的角色

我一个人既是产品经理也是技术负责人:做什么、不做什么、怎么才算合格,关键决定都是我定的。代码主要由两个 AI 编程助手(Claude Code 和 Codex)按我的要求写。所以这个项目同时是两件事:做一个 AI 产品,以及用 AI 来做产品。

02 · 选方向

为什么做这个方向

财务的麻烦:活多、靠人眼、只能抽查

财务每个月要处理大量报销:发票要登记,要查有没有人重复报销,要对照公司制度看这笔钱能不能报。这些细活现有的系统管不到,全靠人看。人手有限,只能抽查大约 10%;月底才对账;不同的人标准不一样;出了问题,也说不清当初为什么放过。

为什么现在用 AI 能做

这些活都卡在系统和系统之间:邮箱里的发票要手工录进报销系统,两张导出的表要人来对,制度要人拿着去比每一张发票。以前的自动化脚本处理不了五花八门的发票图片,也做不了需要判断的事;直接给财务开个 ChatGPT,它又不懂这家公司自己的规矩。现在的大模型看得懂发票、读得懂制度,正好能补上这块。

为什么一个人也做得了

不需要公司系统的接口权限。财务用自己的账号把数据导出来交给它就行,跟现在手工干活拿数据的方式一模一样。

为什么先做查重,最后做合规审查

查重(找重复报销)最容易出成果:不依赖制度写得好不好,财务也不用改变工作习惯,直接给出一个财务最认的数字——「人工原本会漏掉多少张」。对照制度审发票最难,因为制度是写给人看的,到处是「按职级」「视情况而定」,所以放在最后。

03 · 产品判断

产品价值是怎么想的

价值落在三类人身上

财务不用再抽查,进来的每张票都被看过;自己只细看最多 20 张最值得看的;每条结论都写着依据,被问到「当初为什么放过」「为什么拦下」时答得上来
报销的同事不按人排名,不和绩效挂钩;报告用「提醒 + 建议」的语气说话。它是帮手,不是监视器
公司 IT装在财务自己电脑上,没有超级账号;发票图片不出这台电脑;往外发的每一笔数据都有记录

价值从哪来:从「抽查 10%」变成「每张都看过,人只看最值得看的」

原来财务人手有限,只能抽查,月底才对账。拾遗把读票、登记、查重、对照制度这些费时间的活全包了,最后只交回一份最多 20 张的复核清单,按「证据最硬、金额最大」排好,还附上能直接粘到税局网站去查验的信息。

上限定成 20 张是刻意的:一个下午看得完。没有上限的话,「全部拿去税局查一遍」会变成默认动作,而税局会记下每张票被查过几次,财务正是靠这个数判断异常的,查多了就把这个判断依据弄乱了。

在财务这件事上,可信本身就是价值

财务 AI 只要放过一张问题票,财务就不会再信它。所以我先把「它对用户承诺什么」定下来,再谈好不好用:

  • 每条结论都有依据。写清制度第几条、哪张凭证;拿不出依据,只能说「存疑」。
  • 它看不到你看不到的数据。没有超级账号,数据都是你自己导出来交给它的。
  • 不当监视器。记录里只记「错在哪一类」,不记「谁错了」。
  • 判不了的明说。这一版判不了的票,单独列出张数和金额,不会混进「没问题」里。

这几条都写在程序里,不靠 AI 自觉:写在提示词里,AI 大多数时候会照做,但不是每次都照做,而且它没照做时你根本不知道。怎么做到的,见下一节「规矩层」。

名字也是这个意思:「拾遗」是古代的谏官,只负责把漏掉的事捡起来提醒,不负责问罪。

人和 AI 怎么分工

目标不是把人去掉,而是把不值得人做的活去掉。AI 做费时间、做错能改回来、能核对的活:读票、登记、比对、排清单、预填税局查验表。人做不能反悔、需要有人负责的事:敲验证码、决定这一批要不要提交、最终怎么处理一张票。让人来确认,不是因为 AI 不够好,而是有意留下的把关点。

越用越懂这家公司

一个财务 AI 专不专业,不取决于提示词里写一句「你是财务专家」,而取决于它在这家公司攒下的东西:制度库、被人纠正过的案例、每个数据该去哪张表取的说明。我给自己的检验标准是:换一家公司,这些东西能直接搬走吗?答案应该是不能。

04 · 架构

AI 架构是怎么做的

一句话

聪明交给模型,规矩写进程序。不给每个任务画固定流程图,而是给 AI 几个通用能力和一个准备好的工作环境,让它自己决定先做什么、怎么做;程序只管守住边界、核对结果。

核心思路:不画流程图,让 AI 自己想办法

做了什么:只给 AI 几个最基本的能力——读文件、写文件、运行程序——再把它的工作环境准备好:公司制度、历史台账、纠错记录、操作手册。

为什么:很多 AI 产品会先画一张固定流程图,每一步调一次 AI。这样好控制,但来一种新发票、一份新制度、一种新表格,就得改流程、发新版本,AI 只是流程里的一个零件。我参考的是 Claude Code(一个 AI 编程助手):它没有什么「修 bug 流程」,只有读、写、运行这几个基础动作,专业能力来自它所在的代码仓库。财务没有现成的「仓库」,我要做的就是把这个环境造出来。

带来什么:第一周就验证了这条路:合并 5 个门店共 3.6 万行 Excel,没写任何专门的工具,AI 自己写程序完成,两个系统上结果一分不差。以后加新票种、新场景,理想情况是补一本手册,不改代码。

分层看一遍

从用户看得到的界面,到最底下的数据,一共五层,外加一条 AI 碰不到的通道。

界面层 · 人怎么用它

做了什么桌面程序(双击打开,右下角有小图标,任务做完弹通知),也能在浏览器里聊天或用命令行。交付的是一个 657 MB 的压缩包,解压就能用。

为什么财务电脑归公司 IT 管,平时没有安装软件的权限;界面里不放任何业务逻辑,只负责展示。

带来什么财务不用装任何东西就能用;以后换界面、加界面,功能不用重写。

AI 内核 · 脑子

做了什么用 Claude 官方提供的 AI 助手开发框架,不自己从头写。模型用通义千问、Kimi、DeepSeek 等国产模型,换一个只改一行配置。整个产品只留一个让 AI 进出的入口,给 AI 的工具总数控制在 25 个以内。

为什么「AI 怎么一步步把活干完」,成熟框架已经做好了,没必要重造。只留一个入口,是因为多一个入口,下面那层规矩就可能被绕过去。控制工具数量,是因为国产模型每一轮都要把所有工具说明重看一遍,工具多了既费钱又容易分心。

带来什么精力都花在财务业务上;AI 的每个动作都要过同一道关,没有漏网的。

规矩层 · 7 条写死在程序里的规定

做了什么每月花钱超预算自动停;往外发的每一笔数据都留记录(只记数据长什么样,不记内容);大文件不许整个塞给 AI,只告诉它文件在哪;命令按白名单分级执行,密钥对命令不可见;写文件要先过检查;每条命令都留痕;访问税局只允许一个网址,全程留记录。

为什么这些都是「错一次就收不回来」的事,不能指望 AI 每次都记得。

带来什么不管 AI 怎么想,越界的事都做不成;这也是跟公司 IT 谈安全时最有说服力的部分。

工具层 · 手

做了什么保留读文件、写文件、运行程序这几个通用能力,另外做了 17 个只读的辅助工具(下面单独列)。

为什么没有因为「运行程序看起来危险」就把它禁掉。禁了,AI 就没法自己写小程序处理数据,而这正是它最强的地方。危险交给上面那层规矩去管。

带来什么碰到没见过的表格、没见过的任务,AI 能自己写个小程序解决,不用等我们开发新功能。

数据层 · 记忆

做了什么9 份统一的数据格式,任何数据写进去之前都先检查格式;一个本地数据库;Excel 台账(一张票一行);在本机运行的图片文字识别。

为什么格式统一,各部分之间才不会对不上;文字识别放在本机,发票图片就不用传到外面。

带来什么数据可靠、查得到来源;发票不出这台电脑,财务和 IT 都放心。

AI 碰不到的通道

做了什么结果存进台账、纠错记录入库、制度导入,这几件高风险的事不让 AI 做。AI 只交「候选结果」,程序检查无误后再写进去。

为什么这几件事不需要 AI 的聪明,只需要绝对不出错。

带来什么最关键的数据永远是程序按规矩写的,不会因为 AI 一时出错被写坏。

17 个工具分别干什么

除了通用能力,我另外做了 17 个辅助工具,全部只读,不会改动任何数据。每个工具做之前都要先回答一个问题:这件事 AI 自己写个小程序能不能做好?能做好的,一律不做成工具。

一组干什么为什么要做、带来什么
识别图片里的字(1 个)把图片里的文字和位置读出来。PDF、OFD 先转成图片再用它AI 自己看不清图片里的每个字,所以需要它。但只做「读字」,不做「识别发票」:哪个是发票号、哪个是金额,AI 自己就认得出来。这样以后加火车票、出租车票,程序一行都不用改,这一点有自动测试盯着
查历史台账(5 个)查本地历史记录;给每张票算一个「指纹」(用发票号码、日期、金额等算出来);拿指纹查历史上有没有同一张票;看数据多久没更新这是查重的核心。指纹分三档宽严,能分出「完全一样」「内容一样但号码不同」「大致相似」。超过 90 天没更新的数据,不能拿来判「违规」,免得用过期数据冤枉人
拿出依据(4 个)查制度条款;引用制度原文;标出是哪张凭证;按固定语气写报告引用制度必须照抄原文,不许改写,AI 就没法「编」一条制度出来。先查公司制度,查不到再查国家规定,还要记下「用什么词搜的、搜到几条」,所以「公司确实没规定」这件事也能被复查
自我检查(4 个)检查每条结论有没有依据;结论和依据有没有矛盾;抽一部分给人复核;同一批跑两次结果是否一致写代码出错有编译器报错,财务没有。要让 AI 自己干活,就得给它能发现自己错误的「检查器」,否则它只会自信地犯错
知道自己会什么(3 个)列出自己能做的事;查「缺某个数据该去哪张表找」;声明「这类我判不了」AI 说「判不了」时,必须对得上一条登记过的原因,由程序核对。一个总说「判不了」的 AI 看起来很谨慎,其实比判错更难发现

4 本工作手册

工具解决「能做什么」,手册解决「该怎么做」。手册是用文字写下的业务经验,AI 用到时才翻开,平时不占它的注意力。

手册写了什么为什么要有它
费用合规审查拿到发票后按什么顺序查、什么情况给什么结论、报告长什么样这是审发票的业务经验本身。写成文字,财务专家看得懂,也能自己改
PDF / OFD 取字先用文件自带的文字;取不到才转成图片去识别;明确写着「不许另做发票专用工具」自带的文字又快又准,优先用;同时守住「不为单个场景造工具」的规矩
缺数据怎么办不绕过、不瞎猜:查「数据该去哪找」的说明,生成一份待办,把取数步骤交给人落实「AI 看不到你看不到的数据」:缺数据时,它不会自己想办法去拿
报告怎么说话给人看的报告用「提醒 + 建议」的语气,不出现「责任人」这类指向个人的词(有自动检查)报告怎么说话,决定了同事把它当帮手还是当监视器

以后要加新能力,按这个顺序考虑:

  1. 能用文字写清楚的 → 写进手册,不改代码
  2. 需要精确计算的 → 做一个通用工具
  3. 必须强制执行的规矩 → 写进程序里的规定
  4. 觉得需要画固定流程 → 停下来,说明前三步没想清楚

怎么知道它做对了:先出考卷、锁住答案,再考试

做了什么:30 张真发票,先逐张标好正确答案并锁住;答案改一个字,之前的成绩全部作废;考试时 AI 读不到答案。

为什么:AI 产品最容易自欺欺人的地方是测试。事后改答案、调标准,都能让数字变好看。这套规矩防的不是 AI 作弊,而是防我自己。

带来什么:每次改动后都重考一遍,好看不好看都如实记下来,拿去跟财务、IT 谈也站得住。

05 · 效果

效果怎么样

做了什么结果
合并 Excel5 个门店共 3.6 万行、合计 ¥14,736,038.18,在两个操作系统上各跑一遍,结果一模一样;没写任何专门的 Excel 工具。3.6 万行里只有 8 KB 的摘要被 AI 看到——它是写程序去处理数据,不是把数据全读进去
读发票30 张真发票:发票号码、开票日期、价税合计 30 张全对;完全读不出来的从 4 张降到 0
税局查验20 张真发票全部查完并写回台账(19 张一致,1 张不一致,单独列出);按用户反馈,一批的人工时间从约 30 分钟降到 3~4 分钟
安装从「装一套 Linux 系统 + 重启 + 导入 1 GB 文件」变成一个 657 MB 的压缩包,解压就能用,断网也能装
对照制度审发票公司制度 81 条 + 国家规定 6 条入库;20 张考题从头到尾跑通,每条结论都带依据
选模型同一套 30 张考卷:DeepSeek 对 29 张,通义千问对 28 张,但千问费用只要约 14%,选了千问
49 张发票整理成表之前有 7 行填错;把工具改好用之后,第三次 49 行全对
06 · 落地案例

5 个落地案例

每个都按同一个顺序讲:遇到什么问题 → 我怎么做 → 效果。

案例 1 · 哪些该自动、哪些留给人

不让 AI 全自动查税局,人只敲验证码

问题

查重挑出的可疑发票,要去税局网站查一下真假。大家的第一反应都是「让 AI 全自动查」。我算了算,发现不行:

  • 会弄坏财务的判断依据。税局会记下每张发票被查过几次,全国共享、清不掉。财务靠这个数判断异常(一般超过 2 次就要警惕),AI 每查一次就永久 +1。
  • 验证码根本不是大头。人工查一张:抄信息约 60 秒、敲验证码约 10 秒、记结果约 20 秒。验证码只占约 11%,真正费时间的是抄信息。
  • 税局的批量接口用不了。它要专门的实名账号,不是每个财务都有。
我怎么做

AI 负责抄信息、填表,人只敲验证码。AI 只能访问税局这一个网站,每一批都要人点头才提交,全程留记录。

效果

20 张真发票全部查完并写回台账:19 张一致,1 张不一致,单独列了出来。按用户自己的说法,一批的人工时间从约 30 分钟降到 3~4 分钟。

案例 2 · 规矩怎么落地

光跟 AI 说「要守规矩」没用,得写进程序

问题
  • 测试全过,规矩却没人执行。「拿不出依据只能说存疑」这条规矩,我做了专门的检查模块,30 条测试全通过。但一查发现,真实运行时这个模块根本没被调用。
  • 出错了也不吭声。第一次花真钱完整跑一遍,Windows 上少了一项配置,AI 写文件全被拒。它没报错,而是换着法子重试了 29 次,把当天的额度用光了。还有两处类似的:某一步跳过了不提示;公司制度一条都没导进去,却显示「导入成功」。
我怎么做

每条规矩都改成程序强制执行;存结论这类重要的写入不交给 AI,由程序来做;每个检查都配一个「故意弄坏它,看它报不报警」的测试;所有跳过和失败都必须明确提示。一句话:提示词管偏好,程序管规矩。

效果

关键规矩全部改成程序强制;三处「出错不吭声」全部修好,并新增 10 条测试专门盯着它们。

案例 3 · 先让用户装得上

4 台电脑只有 1 台装得上,我推翻了底层设计

问题

拿 4 台真实的财务电脑试装,只有 1 台装得上:一台还是 Win7,一台内存不到 4 GB,一台系统版本不够。而且这些电脑都归公司 IT 管,平时没有管理员权限。

原因是原来的设计要先在 Windows 里额外装一套 Linux 系统,用来把 AI 运行的命令关在一个隔离环境里,保证安全。这要 2,669 行安装脚本、重启电脑、导入 1 GB 文件。难点是:去掉它,就要动当初跟 IT 承诺的安全方案,而 Windows 自带的隔离功能我实测连启动都启动不了。

我怎么做

装得上比技术漂亮重要,决定去掉。动手前先留好随时能退回去的备份点,把改动计划写成文档,再让 4 个 AI 助手分别对照代码逐条核实,纠正了 4 处想当然的地方。安全上说实话:如实告诉 IT「Windows 上暂时没有系统级隔离」,其他系统上的安全措施一点不降。

效果

一个通宵加一个上午改完,删掉 3,200 行安装代码,变成一个 657 MB 的压缩包,解压就能用;发布前的 6 项检查全部通过,包括断网安装。

案例 4 · 改工具,而不是反复叮嘱

AI 总把结果格式写错,那就让它写不错

问题

AI 能看懂发票,但最后交出来的结果文件经常格式不对,系统用不了。有一次真实运行:9 轮对话、花了 ¥1.15,两次提交都因为格式错误被退回,最后一份结果都没交出来。最省事的修法是给发票写一套固定步骤,但那又回到了「画流程图」的老路。

我怎么做

不再反复叮嘱 AI「注意格式」,而是改它手里的工具:

  • 做一个统一的「提交」工具:AI 只填业务内容,格式、编号、校验都由程序自动补上;
  • 格式要求直接写进工具的填写说明里,填错当场就知道;
  • 「到底交没交成功」以存到硬盘上的回执为准,不以 AI 嘴上说的「完成了」为准。
效果

改之前,平均每张票约 43 轮对话、¥6.1;改之后,一张票 8 轮、¥0.95,第一次提交就成功。两次条件不完全一样,只能说明方向,不算严格对比。

顺带选了模型:同一套 30 张考卷,DeepSeek 对 29 张,通义千问对 28 张,但千问的费用只有 DeepSeek 的约 14%(¥2.75 对 ¥20.18)。我在知道差 1 张的情况下选了千问,并写明「便宜但略差」,没有说成「一样好」。

案例 5 · 出了事故,不急着收紧

AI 不用我给的工具,原来是我的工具不好用

问题

安装包给出去试用,用 49 张真发票一跑,出了两次事故:

  • 交白卷:27 秒就结束,界面显示「已完成」,但什么都没交出来。AI 最后一句话是「正在看三个 Excel 文件的结构,稍等片刻」。
  • 错表照交:49 张票整理成表,有 7 行填错(比如买方、卖方的税号整列填反),AI 自己只发现了 3 行。

最省事的修法有好几种:禁掉 AI 的某个功能、给「处理一堆 PDF」写死一套步骤、强行拦住 AI 自己写脚本。我都没用。这些都是靠收走 AI 的自由让症状消失,下一个没拦到的地方还会出同样的事。

我怎么做

一个个查真正的原因:

  • 交白卷:AI 其实派了个「帮手」在后台干活,自己在等结果。是我们的程序不会等,以为它停下来就是干完了。→ 让程序学会等:后台还有动静就一直等,4 分钟没动静才放弃;没干完,绝不显示「已完成」。
  • 不用我的工具:我做的 PDF 工具一次只能处理一个文件,49 张要调 49 次,还不如 AI 自己写个脚本一次搞定——它选写脚本其实很合理。→ 把工具改成一次处理整个文件夹(49 张 1.86 秒),并把「这种活用这个工具」直接写进工具说明。
  • 查出了错,却被 AI 解释掉了:AI 主动做了自查,自查工具也正确报了错,但 AI 认定「这是正常的」,还把那几行从核对清单里删了。→ 自查发现的问题,原文直接显示在界面上,和 AI 的说法并排放,由人来判断。不拦 AI,只是不让问题消失。
效果

第三次重跑,49 行全部正确。

07 · 体会

我的体会

  • 先定标准,再测。
  • 重要的规矩写进程序,别指望 AI 自觉。
  • 没有依据的『通过』最危险,因为它悄无声息地放过了问题。
  • 自动化不是把人去掉,是把人的时间留给只有人能做的判断。
  • 装不上的产品,价值等于零。
  • AI 做错了,先看是不是我给它的工具和环境有问题,再考虑加限制。
  • 永远不要束缚 Agent。给它自由,相信它——智能留在模型里,代码只守边界。
  • 坚持使用、研究、学习『最好的 AI』。先把好的产品抄到位,再考虑超车。
  • 不要吝啬 token。花出去的 token 会以另一种方式回馈。