如何记录一次可复现的 AI 实验
一份面向开发者的实验记录清单:固定输入、环境和判定标准,同时诚实保留失败案例与适用边界。
系列:AI 工程成长记录
AI 实验最常见的记录是“换了一个提示词,效果明显更好”。过几天再运行,结果可能变了,团队却无法判断是模型版本、采样参数、输入数据还是主观预期发生了变化。可复现并不要求模型每次逐字相同,而是让另一个人能重建条件、运行相同流程,并得到可以用同一标准解释的结果。
开始前写下假设
先把改动和预期写成一句可以被否定的话。例如:“加入三个边界案例后,高风险请求的规则违反率会从当前基线下降至少一半,同时正常请求完成率下降不超过两个百分点。”这句话明确了对象、指标和可接受代价,也避免看到结果后再挑一个好看的解释。
实验记录至少包含:
- 模型与可获得的版本标识、关键参数;
- 系统提示词、工具说明和输出 schema 的版本;
- 样本集版本、选样方法与脱敏说明;
- 运行日期、依赖版本和失败重试规则;
- 通过标准,以及哪些判断需要人工完成。
固定可固定的部分
把配置保存为机器可读文件,比截图可靠。敏感凭据只记录变量名,不进入实验目录。
experiment: boundary-examples-v2
dataset: support-safety-2026-06
model: model-version-placeholder
temperature: 0
max_retries: 1
prompt_sha256: "replace-with-real-digest"
metrics:
- policy_violation_rate
- task_completion_rate
- p95_latency_ms
如果服务不提供固定快照,就明确写下这个限制,并在重复实验时加入一组不变的锚点样本。锚点整体漂移往往提示外部条件改变,此时不应把差异全部归因于自己的改动。
保存失败,不只保存均值
平均值告诉我们方向,失败样本告诉我们下一步做什么。每次运行都应输出失败 ID、错误类型、模型原始结果和评分理由;涉及真实用户的数据必须先完成脱敏和访问控制。人工评分时随机打乱新旧方案的顺序,减少“知道哪个是新版”带来的期待偏差。
我还会单独维护一节“不能推出什么”。样本只来自中文客服,就不能宣称方案适用于所有语言;只跑了一次小样本,就不能把微小差距写成稳定提升;没有测成本,就不能说方案更高效。
一页式复盘模板
实验结束后,用四段话收束:假设是否成立、最重要的证据、最值得看的失败、下一步决定。原始日志可以很长,但决策必须清楚。若结果不支持假设,也应保留记录,因为它减少了团队以后重复走同一条路的成本。
可复现的核心不是制造确定性,而是管理不确定性:让条件可见,让判断有标准,让失败能进入下一轮工作。
(示例内容,用于站点骨架验证)