AI 周报如何避免给真实指标编造原因
一个四阶段 Agent 周报流程正确识别了注册量异常,却在缺少活动日历和发布记录时编造了增长原因。作者据此将候选解释明确标为未验证,并允许系统承认信息不足。
AI 深度解读
第 11 周注册量上涨了 34%,报表把原因写成「3 月 newsletter 带来的增长」。数字是真的,解释却是编的:他们只在 1 月发过 newsletter。最危险的地方,是事实和猜测挤在同一句话里,读者看不出边界。
作者因此调整了 Weekly Ops Report:模型负责解释已采集的数据,不能补造数值;原因必须标为待验证;演示数据的标签必须出现在截图能带走的位置。这套做法值得看,因为它处理的是 AI 报表进入决策流程后,谁来保证结论有依据的问题。
数字正确,为什么整句话仍然不可信
Weekly Ops Report 由四个按顺序运行的 agent 组成,依次负责数据采集、清洗、异常标注和运营建议,最终把结果写进 Excel。
问题出在后半段。异常标注找到了真实的注册量波动,建议环节却顺手补上了一个原因。它没有变更记录、部署日志、日历,也不知道团队发布过什么,只凭曲线形状猜出了 newsletter。
而且,那个环节没有给「不知道」留位置。
这里要分清两类判断:注册量是否偏离平常水平,可以依据采集的数据判断;注册量为什么变化,则需要活动、发布等额外证据。前者成立,不会自动让后者成立。
异常可以是事实,异常的原因仍然只是一个假设。
作者现在要求候选解释明确带上「未经过变更日志验证」的标记,而且声称这是强制约束,不只是提示词里的建议。对于缺失指标,报表直接显示缺失,不用估算值把空白填满。作者还规定,工作簿里的每个指标都必须能追溯到采集值。
这几条规则共同解决一个问题:让读者知道,哪些内容来自数据,哪些内容还需要调查。
演示标签要跟着截图走,证据要跟着排名走
作者特别强调演示数据的标识。他见过 demo 被截图带进规划会议,因此把「模拟数据」放在汇总页显眼位置。页脚上的声明即使存在,也可能在截图时消失。
下面这段代码展示了两个约束:汇总页直接标出数据来源,缺失值保持缺失。
def render_workbook(metrics, source_label):
# summary sheet carries the label, not the footer
ws["A1"] = "Weekly Ops Report"
ws["A2"] = f"Data source: {source_label}" # "SIMULATED - demo data"
ws["A3"] = f"Generated: {utcnow():%Y-%m-%d %H:%M} UTC"
for row in metrics:
# a missing value renders as missing. never as an estimate.
ws.cell(row=row, column="value",
value=metrics[row] if metrics[row] is not None else "- no data -")
重点看 A2 和最后的条件表达式:前者让 SIMULATED - demo data 随汇总页一起被看见,后者让 None 显示成 - no data -。这段代码说明的是输出约束,原文没有提供完整运行上下文,不能直接当成可运行的 Excel 示例。
最终工作簿包含四张表:Data Overview、Trend Analysis、Anomaly Annotation、Operations Recommendations。作者认为,异常表里最该看的,是标明「这个解释只是猜测」的那一列。
建议的优先级也受证据限制。第 11 周的上涨可以进入报告,newsletter 解释也可以作为候选保留,但不能靠流畅的措辞获得更高排名。作者说,这条解释没有越过 P1,因为系统能读取的记录里不存在 3 月 newsletter。
这里有一个信息缺口:原文没有定义 P1,也没有给出完整的等级规则或排序算法。因此,我们能拿走的是「建议等级不能超过证据能支持的程度」,不能据此复现他们的排序系统。
我的判断
我赞同作者把边界放在系统结构里:先采集和计算指标,再让模型围绕这些值生成文字;未知原因保留未知。相比只在提示词里写「不要编造」,这样的职责划分更容易检查,也更容易追溯错误。
但「模型不能生成数值」需要具体实现。即使指标来自可信字段,模型仍可能在描述里另写一个百分比。原文没有展示数值校验、候选解释约束和优先级限制的实现,只说其中一项约束是一行强制规则。方向合理,落地是否可靠,还要看代码。
此外,没有读到活动记录,只能说明当前证据不足,不能证明活动从未发生。作者这个案例里,3 月 newsletter 确实不存在;一般团队还可能遇到日志漏记、数据接入不全的问题。
作者提到,自己此前写过一段四行正则,通过了三次检查,却让图像流水线停了六小时,最后只改两个字符就修好。这个经历解释了他为什么警惕自动化结果显得过于权威,但不能充当当前方案的效果验证。
这是一组有价值的工程经验,原文没有提供误报率、准确率或对照实验。
产品定位也比较克制:它不替代 BI,也不承诺知道变化原因。规则报表免费,但有每日合理使用上限,具体额度没说;模型辅助的叙述性洞察收费。规则路径不写原因,因此避开了这一类原因编造。v1.x 的界面、提示词和报表输出均为英文,国内团队接入前也要考虑这一点。
能拿来做什么
- 如果正在用 Node 汇总指标、再交给模型写周报,可以先固定数值字段及其来源,让模型引用这些字段,并在输出阶段检查文字中的数字是否一致。缺失数据直接展示缺失。
- 如果前端页面支持演示模式,把「模拟数据」放进核心图表和导出报表里。检查截图、复制和导出之后,接收者还能不能看到标签。
- 给 AI 建议同时展示关联异常、已有证据和验证状态。有人要依据原因采取行动时,再去核对部署日志或活动记录;证据不足的解释保留为候选,不让语气决定优先级。