文档体检台问题点 · 业务影响 · 该找谁确认

不以 AI 验 AI拒绝幻觉膨胀拒绝废话文档

危险的不是写错了,
是把没定的事,写成了定了的事。

一份方案里最要命的地方,往往长得最像规格:参数表左边给出精确默认值,右边小字写着「需业务确认」;数据源第一行标着「待定」,后面十一章的公式照样算得天衣无缝。读的人只看见公式,于是整条链路在一个不存在的输入上开工。

输出长这样
悬空依赖L507 ↗

「专利」这一环还是空的,下游已经有 3 处在用它算

输入还没拿到,依赖它的公式、指标、图表却已经写完了。

不处理的话,业务上会怎样真开工第一步就卡住。等的那段时间里,所有人都以为方案已经就绪。
找谁 · 能回答「这数据到底拿不拿得到」的人现在到底能不能拿到?谁在推、卡在哪一步、预计什么时候有?
AI 痕迹不计入问题L231 ↗

11 个章节标题各重复 4 次以上,是同一套骨架套出来的

措辞是软的,因为这是台阶哪几节其实是为了对齐格式才填的?直接删掉或标「本章不适用」就行,不丢人。

为什么这件事必须有工具

因为成本是不对称的。而且这个不对称,全部由不写文档的那个人承担。

生产一份看起来很完整的方案

30 秒

提示词一敲,结构严密的专业黑话、架构图、接口定义哗啦啦吐出来。写的人不必验,因为验不验都不影响它「看起来完整」。

把里面的假逻辑挑干净

3 天

逐条分辨哪些是规格、哪些是愿望,哪个包名是真的、哪个是编的。这几天不计入任何人的工作量,挑漏一个就是一次线上返工。

制造垃圾的成本趋近于零,清理垃圾的成本高上天。这个工具做的,是把那 3 天压缩成 10 秒——而且把结论变成一句能当面问出口的话。

它找的是一种特定的病:因果链被折叠

真实的工程是严格的状态机:上一步的输出质量和异常边界,决定下一步的数据结构。假方案把这条链直接折叠了——假装所有输入都已就位,于是每一步都能一口气写完。

文档里看起来的样子 数据源指标公式 图表结论 真开工时的样子 待定 指标公式 图表结论 ↑ 这四格全部作废,返工量按整条链路算 第一环没拿到
两张图的差别,就是「这份文档能不能照着干」的全部内容。

市面上的 AI 检测,解决不了这件事

常见的 AIGC 检测

本文 87% 疑似 AI 生成

所以呢?你能拿这句话去干什么——把文档退回去?在我们这种业务里,这个问题本身就没有意义:答案永远是「是」,而且本来就该是。现在没人全手写文档,也不必。

这里查的是另外三件事

  1. 问题点具体在第几行,原文照抄出来
  2. 业务影响不处理的话,下游会发生什么
  3. 该找哪个活人确认什么一句能当面问出口的话

只说「这里有问题」而不说「不处理会怎样」和「去找谁」,等于没说。

在一份真实的 6 万字 PRD 上

产业分析类需求文档,11 章,239 个标题,102 张表。打开页面、粘进去、拿到结果,全程不到十秒。

4阻断项 · 不回答没法开工
4待澄清 · 开工前要有答案
2AI 痕迹 · 备注,不算问题
2545行原文,逐行标出位置
未决伪装L137 ↗

这张表 38 行参数,30 行自己标着「需确认」

同一行在说两件相反的事:左边给出精确默认值,右边承认没人定过。读的人只会记住左边那个数。

不处理的话,业务上会怎样下游会把 30 个没定的数当成定了的数写进代码。等真定下来,牵连的计算、图表、结论要全部回炉,而返工不会被算作任何人的工作量。
未验证具体物L111 ↗

19 个包名 / CLI / 接口地址,没有一个标注验证过

模型最擅长编造的就是这种长得很像真的的名字。它们看上去是全文最硬的部分,实际是幻觉率最高的部分。

不处理的话,业务上会怎样验证成本全部落在接手的人身上。只要有一个是假的,照着搭的那一段就是白干。

最有用的那几条检查,不需要懂你的业务

它看不懂你的公式合不合理——这个它从不假装。但有一类问题是纯算术,谁都能判定,而且对方无法辩论:

≠100%声明为权重的百分比,加起来不是 100
5 ≠ 6写着「5 项:」,后面列了 6 个
100% + 前提一边写「全自动」,一边写「前提是数据源可接入」
20% / 15%同一个名目,这份文档一个数,那份另一个数

不需要争论「这样写好不好」,只需要回答「哪个是对的」。这就是为什么输出是问题而不是评分。

一份查不出来的,一套才查得出来

一套材料里最危险的问题,不在任何一份文档里面。

文档 A

C 运行保障支撑度 2 项 20%
D 产出与贡献 3 项 20%

30 + 30 + 20 + 20 = 100 ✓ 自洽

文档 B

C 运行保障支撑度(2 项,15%)
D 产出与贡献(3 项,25%)

30 + 30 + 15 + 25 = 100 ✓ 也自洽

两份单独读都挑不出毛病,只有并排放才看得见。把一整套拖进去,它把所有「同一个名目、不同数字」的地方列给你,标明各自出自哪份的第几行。

两个模式,措辞完全不一样

默认是自检。这是有意的——一个只能用来挑别人毛病的工具,第一次用完就会被所有人记恨。

默认

自检 · 我自己写的

发出去之前先过一遍。不挑错,只告诉你哪几处会让接手的人卡住,以及你现在能动手补什么。导出是一份自查清单。

它会这样说在「专利」真拿到之前,把依赖它的那几节折叠起来,或标上「待数据到位后补」。现在就写完整,等于交出一份看着能开工、其实开不了工的文档。

切换

体检 · 别人给我的

判断这份能不能照着干。每条给出问题点、业务影响、该找哪个活人确认什么。导出是一条可以直接发群的消息。

它会这样说「专利」现在到底能不能拿到?谁在推、卡在哪一步、预计什么时候有?拿不到的话,依赖它的那几节是先砍掉还是整体暂停?

你得能说「我自己每份文档发出去之前都过一遍」,别人用它才不觉得被针对。

AI 痕迹会标出来,但那是台阶,不是罪状

标出来只为两件事:

  • 给读的人一个心理准备。哪几段可能没经过人工核对,看的时候多留一个心眼。
  • 给写的人一个退路。「这段是我的 AI 自己加的,删掉就行」,比「我写错了」容易说出口一百倍。

指出问题如果等于指控对方能力有问题,对方只能硬撑,事情就谈不下去。把锅留给模型,沟通才能发生。

所以这一档单独算,不计入「必须回答的问题」,提问的措辞也是软的。

同样的理由,这里永远不给文档打分。分数会被辩论(「你凭什么说我 60 分」),问题不能被辩论——对方只能回答,或者回答不上来。

它自己不用 AI。一行都没有。

全是确定性正则,在你的浏览器里跑完。这不是省钱,是三个换来的东西:

  • 不会幻觉。用 AI 去查 AI 的膨胀,查出来的东西自己也会膨胀。
  • 文档不出本机。没有后端、没有账号、不联网、断网也能用——这是同事敢把保密文档粘进去的唯一前提。
  • 零成本零延迟。不用申请 key,不用等预算,打开就能用。
  • 可验证。代码公开,一共一个 HTML 文件。不用信这段话,自己搜 fetch,一个都没有。

这个工具查不了什么

写明边界是它存在的理由本身。一份不肯说自己做不到什么的文档,正是它要查的东西。

  • 查不了内容对错。它不懂你的业务,公式合不合理、指标有没有意义,一概不知,也不装懂。
  • 查不了跨章节的口径冲突。同一个指标在第 2 章和第 5 章用了两套权重,目前检测不出来。已知缺口,没假装补上。
  • 查不出「写得对但做不到」。资源、排期、人力、授权,文档里不写就看不见。
  • 命中不等于有罪。每条只是「这里需要一个人回答」。答得上来就划掉。
  • 它绝不聪明。没有模型参与,所以不会幻觉,代价是它只认得出结构,认不出意思。

下一份文档发出去之前,先让它过一遍。