一句“专业、准确、不要编造”带来了十四次返工
唐宁是一名独立商业研究顾问,每月为客户制作一份 15 页渠道决策简报。资料包括访谈记录、销售表、竞品页面和上月版本。最初的任务说明只有一句:
根据这些资料做一份专业、简洁、有洞察的渠道策略简报,数据要准确,不要编造。
第一版通常很完整,连续 6 份简报却产生 14 次实质返工:旧数据混进当月结论;图表数字没错,标题却把相关变化说成因果;资料缺失时补出没有来源的“行业平均”;建议没有证据,页面仍被填满。每份人工复核和修改的中位数达到 96 分钟。
唐宁没有再补一句“务必认真”。她把历史返工改写成一份两页任务合同,先用 8 个旧资料包回归,再用于新简报。随后 6 份简报出现 3 次实质返工,复核中位数降到 41 分钟;无来源量化主张从 11 项降到 0,资料缺失仍强行下结论从 5 项降到 0,结构错误从 4 次降到 1 次。
从 14 次降到 3 次,降幅为(14-3)÷14=78.57%。这组数字属于教学案例,人物、客户和简报并非真实项目,也不能证明任务合同普遍减少 78% 返工。合同没有替客户决定预算;它只让可用输入、必要输出、合格门槛、禁止行为和安全停止变成双方都能检查的约束。
这里的“合同”不是法律文件,也不是把提示词写得更长。它是一份运行边界:使用者能检查系统是否拿到了约定资料,执行者能知道何时继续、何时停下,复核人能根据同一标准判断产物是否可用。目标、输入、处理、输出、验收、禁止、停止和责任八个部分不必各占一章,却必须在真实失败发生时能定位到其中一处。
普通提示往往只写希望看到什么;合同还要写没有资料时返回什么、哪类错误不能被其他优点抵消、哪些动作始终留给人。一项工作规模很小,合同可以是一张卡;涉及多个文件、结构化产物和外部决定时,两页并不算长。长度不是质量证据,能否通过样本运行和失败回执验证才是。
合同条款从返工记录里长出来
唐宁把“返工”限定为完整简报生成后,因事实、范围、证据、权限或结构问题必须重做至少一个发现项或一页。字体、措辞偏好不计。每次事件只选一个首要原因,事件内部可以有多个错误检查点,避免把同一次旧数据污染重复算成几种返工。
| 首要原因 | 次数 | 当时证据 | 后来进入合同的内容 |
|---|---|---|---|
| 混入上月事实 | 3 | 来源指向 I-05 上月简报 | 输入角色、版本与权威顺序 |
| 把相关写成因果 | 2 | 标题写“导致”,没有排除证据 | 禁止推断与反例 |
| 资料缺失仍给结论 | 2 | 必需文件不存在,缺失字段却为空 | 输入预检与停止条件 |
| 补写行业平均 | 3 | 数字无法回到输入编号 | 量化主张硬门 |
| 建议没有证据链 | 2 | 有建议,没有来源 | 输出必填字段 |
| 页面无法复核 | 1 | 图表没有稳定发现编号 | 输出结构与追踪编号 |
| 越界形成客户承诺 | 1 | 草稿出现未批准预算日期 | 禁止动作与人工批准 |
3 + 2 + 2 + 3 + 2 + 1 + 1 正好是 14。表里没有“更认真”这种无法测试的要求。每条新规则都要能指出它预防哪种失败、由什么检查发现;既没有历史事件、也没有明确前瞻风险的要求先留在候选区,不直接让主合同越来越长。
合同首先限定一个决定:渠道负责人和财务负责人要判断,下季度是否把 20% 试验预算从渠道 A 移到 B。数据范围是 2026 年 4—6 月,并与 1—3 月比较,只分析 A、B、C;数据不完整的 D 不进入预算建议。简报不预测全年收入,不评估团队绩效,也不替客户批准预算。
这一步让“专业、有洞察”变成了停止点明确的任务。市场历史、团队能力和其他渠道可能有价值,但只在影响当前预算判断时进入正文。
输入清单要说明权威、版本和缺失动作
“参考全部附件”会把旧版本和不同权威的材料放在同一层。唐宁为六项资料指定角色:
| 输入编号 | 资料与角色 | 有效版本 | 缺失或冲突时 |
|---|---|---|---|
| I-01 | 渠道销售明细;量化权威 | 2026-07-03 导出 | 停止预算计算 |
| I-02 | 广告投入;成本权威 | 财务确认版 v3 | 与销售表不能匹配就列冲突 |
| I-03 | 12 份访谈;定性证据 | 4—6 月去标识转写 | 少于 8 份停止主题比例结论 |
| I-04 | 竞品页面;可选背景 | 2026-07-02 快照 | 缺失不阻断内部比较 |
| I-05 | 上月简报;仅作结构参考 | 2026-06 最终版 | 禁止作为本月事实 |
| I-06 | 客户术语表;名称权威 | v5 | 名称冲突以 v5 为准 |
销售和投入只能通过“渠道编号 + 月份”关联,不能根据渠道简称猜。上月简报最容易污染当月结论,因此它只提供版式;其中即使有正确数字,也必须回到本月权威资料重新确认。
输入清单还要保存运行时真正使用的版本。唐宁记录文件大小、修改时间和内容校验摘要;同名文件内容变化就生成新版本,不让前半段分析使用旧表、后半段又读取覆盖后的新表。I-01 与 I-02 的字段定义也写进合同附件:空值保持缺失,不能转为 0;渠道编号必须唯一;月份使用同一时区和期间口径。
“权威”只在对应事实范围内生效。财务确认版 I-02 是投入金额的权威,不负责解释客户态度;I-03 访谈可以支持样本中出现的理由,不能覆盖签署数据。来源冲突时保留两个值、对应版本和需要谁裁决,不能让模型选一个更符合建议的数字。
第一份产物是输入回执,不是十五页简报
正式分析前,系统先检查文件是否存在、版本是否正确、字段能否读取、关联键是否唯一、必需资料是否齐全。行数、字段和匹配率使用确定性规则,AI 只解释无法按规则归类的资料说明。预检不提前生成策略。
| 预检项目 | 实际结果 | 判定 |
|---|---|---|
| I-01 销售 | 1,248 行,6 个必填字段齐全 | 通过并冻结校验摘要 |
| I-02 投入 | 18 行,财务确认版 v3 | 通过,按渠道编号和月匹配 |
| I-03 访谈 | 12 份,有日期且已去标识 | 通过,只描述样本内主题 |
| I-04 竞品 | 3 页中 1 页缺抓取日期 | 排除该页,不阻断 |
| I-05 上月简报 | 最终版 | 只作结构,不能进证据 |
| I-06 术语 | v5,读取成功 | 通过 |
| 关联键 | 1,248 行中 9 行未匹配,0.72% | 列出异常后继续 |
9÷1,248=0.721%,正文取 0.72%,低于合同的 2% 停止线。若未匹配增加到 32 行,32÷1,248=2.56%,就停止预算比较。系统不能用已匹配的 97.44% 继续生成一份看似完整的建议。输入回执由唐宁确认后才进入分析,运行中同名文件若被覆盖,校验摘要变化也会使流程停止。
先生成发现项,再由发现项组成页面
“交付 15 页”只能限制外形,无法保证每页可以复核。唐宁先要求一张发现表,每条记录只承担一个主张:
| 字段 | 含义与规则 |
|---|---|
| 发现编号 | 稳定编号 F-01、F-02…… |
| 主张 | 一句可以验证的陈述,不混两个结论 |
| 证据 | 至少一个输入编号和具体位置 |
| 反证 | 反例、冲突或限制;没有时写“未发现” |
| 置信度 | 高、中等、证据不足 |
| 决策含义 | 保持、增加、减少、需要试验 |
| 负责人问题 | 必须由客户回答的事项 |
| 复核状态 | 待顾问复核、已确认、已否决 |
发现表可以由 JSON Schema 等结构约束检查编号、类型、必填字段和允许值。结构通过只表示形状正确,不表示事实正确。I-05 上月简报即使作为一个合法字符串进入证据数组,也必须在业务规则层被拒绝。
下面是压缩后的结构示意。英文只作为真实字段名存在,页面和复核表仍先显示中文名称:
{
"type": "object",
"required": ["finding_id", "claim", "evidence", "confidence", "review_status"],
"properties": {
"finding_id": {"type": "string", "pattern": "^F-[0-9]{2}$"},
"claim": {"type": "string", "minLength": 10},
"evidence": {"type": "array", "minItems": 1},
"confidence": {"enum": ["high", "medium", "insufficient"]},
"review_status": {"const": "待顾问复核"}
},
"additionalProperties": false
}
它能拦住编号不合规、证据数组为空和未经允许的状态,却无法判断渠道 B 的销售是不是 96 万。金额和月份需要确定性复算,主张与来源的关系需要证据审核,预算动作还需要负责人批准。把四层拆开后,结构失败可以针对字段修复,事实失败不会被“JSON 已通过”掩盖。
唐宁把验证分为四层:结构校验发现缺字段、错误类型和非法状态;确定性业务规则重算金额、检查渠道编号和允许来源;证据审核判断引用是否真的支持主张;最后由人决定建议是否适合预算目标。结构失败最多重试一次,事实与证据失败不允许系统自行改写成另一个结论。
硬门必须连接检查、证据和失败状态
“准确、深入、易读”不能成为放行标准。合同要求所有量化主张 100% 回到 I-01 或 I-02,关键金额、月份和渠道编号错误为 0,无来源行业平均和外推预测为 0;12 份访谈的主题要保留正反证据,每项建议写明假设和失败信号;人工复核中位数不高于 45 分钟。最终是否调整 20% 预算仍由客户负责人批准。
| 类型 | 检查 | 冻结门槛 | 谁或什么来检查 |
|---|---|---|---|
| 事实硬门 | 量化主张可回到 I-01 或 I-02 | 100% | 主张—来源核对表 |
| 事实硬门 | 金额、月份、渠道编号 | 关键错误 0 | 确定性规则复算 |
| 禁止硬门 | 行业平均、全年外推、未经批准承诺 | 0 项 | 扫描加人工复核 |
| 证据质量 | 访谈主题保留正反材料 | 至少 90% 检查点通过 | 样本审核 |
| 建议质量 | 每项建议有假设和失败信号 | 至少 90% | 字段与内容审核 |
| 运行负担 | 单份人工复核 | 中位数不高于 45 分钟 | 运行日志 |
| 最终决定 | 是否移动 20% 预算 | 不设自动门槛 | 客户负责人 |
评分项可以帮助比较版本,硬门不能被平均。即使版式、访谈主题和建议结构全部通过,一项错误金额仍然阻止简报放行。人工决定也不是“质量检查最后一项”,而是模型无权替代的业务责任。
这些标准在看到输出前冻结。为了避免“条款写了却没人检查”,唐宁给六项关键要求建立追踪关系:
| 条款 | 检查与放行证据 | 失败状态 |
|---|---|---|
| IN-02:未匹配不超过 2% | 异常行÷总行;保存异常表与比例 | 输入不匹配停止 |
| OUT-03:每项主张有证据 | 结构检查至少一项;保存校验报告 | 结构失败 |
| Q-01:量化支持率 100% | 逐主张回查;保存主张—来源表 | 证据失败 |
| BAN-04:I-05 不作事实 | 扫描证据输入编号 | 禁止来源失败 |
| STOP-05:同一硬门失败两次停止 | 按运行编号汇总并保存两次原输出 | 重试上限停止 |
| HITL-01:预算由负责人批准 | 检查姓名、日期和批准版本 | 等待负责人批准 |
追踪关系还会发现合同内部冲突。如果 OUT-03 要求证据至少一项,而“证据不足”恰好没有支持材料,系统可能被迫编造。唐宁把“缺失证明”也定义为证据,例如 I-02 缺失回执或文件解析失败记录。它证明为什么不能判断,不支持任何预算结论。
禁止事项同样要有检测和动作:缺失不能补成 0;I-05 不能作本月事实;12 份访谈只能写“几份出现”,不得外推总体;没有实验或排除证据时不得写因果;输出只能进入独立草稿,不修改客户文件;预算建议始终保持待复核。
停止回执要说明哪些成果还能用
任务合同优先级依次是数据与权限、事实硬门与停止、输出完整性、篇幅和语气。截止时间到了但 I-02 缺失时,交付缺失回执和已经验证的中间表,不能估算成本填满预算页;15 页与证据不足冲突时,页面写待确认,不引用上月数字;范围外的 D 渠道需要负责人批准变更,系统不能自行扩大。
| 同时发生的要求 | 优先保留 | 合格处理 | 不合格处理 |
|---|---|---|---|
| 截止已到,I-02 缺失 | 必需输入与停止 | 交缺失回执和可用中间表 | 估算成本填预算页 |
| 客户临时要求分析 D | 范围与变更授权 | 请求负责人批准新范围 | 自行把 D 加进结论 |
| 必须 15 页,证据不足 | 事实硬门 | 标记待确认并解释缺口 | 用上月数字填空 |
| 两个权威来源冲突 | 来源与人工裁决 | 保留两个值并暂停该发现 | 选择更支持建议的值 |
| 要求简洁,证据链很长 | 可复核性 | 正文收束,证据表附后 | 删除来源定位 |
这个优先级避免了模型在冲突中选择“更容易完成”的要求。若客户确实要改变范围或阈值,先修改合同版本并补回归样本,不能在某一次运行里静默放宽。
S7 历史资料包第一次运行时,1,248 行中有 57 行无法关联,57÷1,248=4.567%,正文取 4.57%。它触发 IN-02,停止回执如下:
| 回执字段 | S7 的实际内容 |
|---|---|
| 运行编号 | channel-brief-S7-v1-r1 |
| 状态 | 输入不匹配停止 |
| 触发条款 | IN-02 / STOP-02 |
| 观测 | 57 / 1,248 = 4.57% |
| 仍可使用 | 输入清单、术语校验、57 行异常表 |
| 不得使用 | 渠道汇总、发现表、15 页简报 |
| 解除阻塞 | 数据负责人修正 57 行渠道编号 |
| 决定人 | 唐宁;财务字段由财务负责人确认 |
| 重试 | 1 / 2 |
本次没有生成预算结论。
IN-02 要求未匹配率不超过 2%,实际为 57/1248 = 4.57%。
可继续使用:输入清单、I-06 术语检查、57 行异常表。
不可使用:渠道合计、发现项和页面草稿。
需要:数据负责人补齐或确认渠道编号;唐宁批准后重跑。
若第二次仍触发 IN-02,结束自动重试并检查合同或源表。
合同没有覆盖的新冲突进入“需要合同决定”,由唐宁判断是一次例外、补资料还是修改下一版本。例外也要保存批准人、适用运行编号和到期时间,不能悄悄变成永久规则。
十五页只是发现表的一种呈现
任务合同摘要写明:目标是准备 A、B、C 三渠道下季度 20% 试验预算材料;I-01、I-02、I-03、I-06 必需;先校验关联键,再计算基线、提取访谈证据、建立发现表,最后生成页面;量化支持率 100%,关键金额错误与禁止项为 0;顾问确认发现项,客户负责人决定预算。
| 合同入口 | 已确认内容 |
|---|---|
| 任务编号 | channel-brief-2026Q2-v1 |
| 主要决定 | 是否把下季度 20% 试验预算从 A 移到 B |
| 范围 | A、B、C;2026 年 4—6 月对比 1—3 月 |
| 必需输入 | I-01、I-02、I-03、I-06 |
| 处理顺序 | 输入回执 → 基线复算 → 访谈证据 → 发现表 → 页面 |
| 交付 | 发现表、15 页简报、来源索引、负责人问题 |
| 硬门 | 量化支持率 100%;关键金额错误 0;禁止项 0 |
| 停止 | 必需资料缺失、未匹配超过 2%、权威来源冲突、同错两次 |
| 人工责任 | 唐宁确认发现项;客户负责人批准预算 |
| 当前版本 | v1.3;任何变更写明理由并重跑对应样本 |
这张摘要是运行入口,不替代两页附件。字段定义、反例、输入回执格式和回归样本仍然留在附件中;否则把合同缩成一张表之后,又会回到“看起来完整,却不知道怎样验证”的起点。
15 页按决策需要映射。第 1 页说明支持什么决定和排除项;第 2 页展示输入回执与限制;第 3—4 页比较 A、B、C 的两个季度基线;第 5—7 页只呈现已经通过证据门的发现;第 8 页保留反证;第 9—10 页展示 12 份访谈的样本主题;第 11 页使用有日期的外部背景;第 12—13 页写方案、假设和失败信号;第 14 页列客户必须回答的问题;第 15 页保留来源、版本和批准状态。
| 页面 | 它必须回答的问题 | 允许依据 | 不能出现 |
|---|---|---|---|
| 1 | 支持什么决定,什么不在范围 | 合同目标与非目标 | 最终预算批准 |
| 2 | 输入完整吗,有什么限制 | 输入回执 | 隐藏缺失和匹配异常 |
| 3—4 | A、B、C 两个季度怎样变化 | I-01、I-02 | I-05 旧数字 |
| 5—7 | 哪些发现通过证据门 | 发现表 | 没有发现编号的新主张 |
| 8 | 有哪些反证和替代解释 | 反证字段 | 把相关写成因果 |
| 9—10 | 12 份访谈出现哪些主题 | I-03 原话与样本数 | 外推全体客户 |
| 11—13 | 外部背景、方案与失败信号 | 合格 I-04 与发现表 | 新增未批准承诺 |
| 14—15 | 谁还要回答,版本与批准状态 | 负责人问题、证据索引 | 删除限制只留结论 |
如果只有 9 个合格发现项,不为填满页数再创造 3 个。页面 5—7 可以按证据密度重新组合;发现项太多时,按与预算决定的关系排序,完整发现表作为附件。事实底座决定页面,页数不能反过来制造内容。
F-04 从原始数字走到一项有限建议
I-01 显示渠道 A 销售从 120 万降到 108 万,变化为 -10%;I-02 显示投入从 30 万升到 36 万,增长 20%,投入产出比从 4.0 降到 3.0。渠道 B 销售从 80 万升到 96 万,增长 20%;投入从 24 万升到 25.2 万,增长 5%,投入产出比从 3.33 升到 3.81。
12 份访谈里有 7 份提到 B 的进入流程更顺,另有 3 份提到季节性活动。合格发现项因此不是“B 导致增长,应立即迁移预算”,而是:
| 字段 | F-04 的完成内容 |
|---|---|
| 主张 | Q2 中 A 的投入产出比下降,B 上升 |
| 证据 | I-01 行 314—349;I-02 的 A/B 两季度记录 |
| 反证 | 季节性活动;没有随机试验 |
| 置信度 | 中等 |
| 决策含义 | 把 20% 迁移改为两周受控试验 |
| 失败信号 | B 转化不高于 A,或获客成本上升 10% |
| 复核状态 | 待顾问复核 |
页面标题写成“Q2 中 B 的投入产出比改善,值得用受控试验验证”。同一组数字经过合同后,保留了事实、限制、试验与停止信号,没有越过因果判断和客户预算批准。
这条转换也说明合同不只负责格式。原始数字支持“同期变化方向不同”,访谈只提供样本中的解释线索,两者都不足以证明 B 导致增长。因此建议的强度被降为两周试验,失败信号又让客户知道何时停止。若试验转化没有高于 A,或获客成本上升 10%,当前预算假设就被否决;模型不能把后续失败改写成“需要更多时间”继续投入。
唐宁复核时先重算四个金额变化和两个投入产出比,再检查 7 份正向访谈与 3 份季节性材料是否真的存在,最后才看建议措辞。验证顺序从事实到证据强度再到动作,避免先被一页漂亮结论说服。
八个历史资料包先替新项目承受失败
回归集由 5 个常规包和 3 个边缘包组成。S6 缺 I-02,正确终态是停止预算计算;S7 关联异常 4.6%,应停止并列出异常行;S8 同时含新数据和旧简报,新数据作为事实,旧简报只提供结构。
首轮中,S1—S5 都生成了简报,但一份标题因果过度;S6 正确停止;S7 错误地用已匹配部分继续计算;S8 有两处引用旧结论。唐宁分别增加因果反例、把 2% 写成硬门,并限制证据允许的输入编号。修订后重跑全部 8 个包,而不是只重跑三个失败样本,第二轮所有硬门通过后才进入当月工作。
| 样本 | 预期终态 | 首轮实际结果 | 修订 |
|---|---|---|---|
| S1—S5 常规 | 发现表和 15 页简报 | 全部完成;一份标题因果过度 | 增加因果反例 |
| S6 缺 I-02 | 停止预算计算 | 正确停止 | 无 |
| S7 关联异常 4.6% | 停止并报告异常行 | 错误继续计算已匹配部分 | 2% 改为硬阈值 |
| S8 新旧资料冲突 | 新数据为事实,旧稿只作结构 | 两处引用旧结论 | 限制证据输入编号 |
模型更换时合同不必自动变化,但要用同一合同重跑 8 个包。销售表新增不影响既有字段,可以只复测解析;任务从渠道预算变成产品定价,则需要新合同。开放客户文件写入、发现访谈泄露身份等变化会改变权限和数据边界,必须增加回滚与隐私样本。
剩余三次返工决定合同是否值得维护
进入新工作后,唐宁按运行编号保存预检、原始发现表、门禁结果、人工修改和最终批准版。随后 6 份简报的复核分钟为 34、38、40、42、47、53,中位数是(40+42)÷2=41 分钟。
三次实质返工都在发给客户前被发现。一次是新字段把“赠送额度”混入广告投入,说明 I-02 没定义该字段的排除值;一次标题没有使用“导致”,仍在语义上暗示确定归因,说明禁用词扫描太窄;一次来源页码在 PDF 导出后变化,说明只保存页码不够稳定。对应修正是补财务口径、增加因果语义反例、同时保存发现编号、表格键和引用片段。
字段口径变化重跑 S1—S5 的金额检查;因果规则变化重跑全部 8 包标题;来源定位变化验证导出前后。若每月修订和回归超过 3 小时、复核连续两份超过 60 分钟,或相同关键错误连续出现两次,就暂停自动生成页面,只保留输入回执和发现表。合同减少返工的价值不能靠无限维护来维持。
每次变更还要写明提出人、原因、具体条款、开始生效的版本、重跑范围和是否允许回退。模型更换通常只触发回归,不一定修改合同;客户从渠道预算改为产品定价,则主决定和失败后果都已变化,应另建合同。合同版本不是文件名装饰,它要让半年后的复盘知道当时哪一条规则真正生效。
可以直接复制的任务合同
任务编号 / 版本 / 负责人:
目标与范围
- 谁使用结果,要支持哪一个具体决定:
- 时间、对象和明确不处理的内容:
输入
- 必需资料、稳定编号、版本和权威顺序:
- 可选资料只允许做什么:
- 缺失、冲突、过期时继续、排除还是停止:
处理
- 必须执行的步骤和顺序:
- 允许的判断、需要保留的证据:
输出
- 产物、字段、类型、允许值和状态:
- 中间产物保存位置,哪些能继续使用:
验收
- 事实和结构硬门:
- 评分项、人工决定:
- 常见样本、边缘样本和禁止错误:
禁止与权限
- 禁止推断、禁止数据、禁止工具、禁止外部动作:
停止与交接
- 触发条件、重试上限、停止回执:
- 谁能解除阻塞,谁批准最终结果:
变更
- 修改原因、生效版本、重跑样本、回退条件:
先选择一项已经返工两三次、输入和产物都找得到的工作。逐次写下返工的首要原因,把它改成输入角色、输出字段、检查或停止状态,再用 5—10 个历史包验证。合同不是为了让 AI 永远不犯错,而是让错误能回到某条可修改的边界,并让接手人知道哪些中间产物仍然可靠。
一份合同只服务已经写明的决定和输入条件。渠道简报合同不能因为运行稳定,就直接复用于报价、合同审阅或客户外发;这些任务的错误后果、权威资料和批准人都不同。相邻任务最多借用字段写法,仍要重新确定目标、硬门和停止点。能明确说出“不适用于什么”,也是合同完成的一部分。
来源与进一步阅读
以下资料核验于 2026-07-21,用于支持可验证要求、结构约束、边缘情况和人工接管:
- NASA:How to write a good requirement:强调责任主体、单一可理解要求、错误处理和可验证性。
- NASA:Software requirements analysis:说明“容易、充分、适当”等表述不可验证,要求关联验证方法。
- JSON Schema:Creating your first schema:说明如何定义结构、类型、约束和必填项。
- OpenAI:A practical guide to building agents:强调清晰动作、边缘情况、工具防护、失败阈值和高风险人工介入。