圣诞老人方法
多智能体对抗验证框架。列个清单,检查两遍。如果行为不端,就修正直到表现良好。
核心洞察:单个智能体审查自身输出时,会共享产生该输出的相同偏见、知识盲区和系统性错误。两个没有共享上下文的独立审查者可以打破这种故障模式。
何时激活
在以下情况调用此技能:
- 输出将被发布、部署或供最终用户使用
- 必须强制执行合规、监管或品牌约束
- 代码未经人工审查即投入生产
- 内容准确性至关重要(技术文档、教育材料、面向客户的文案)
- 大规模批量生成,抽检无法发现系统性模式
- 幻觉风险较高(声明、统计数据、API 参考、法律用语)
不要用于内部草稿、探索性研究或具有确定性验证的任务(这些请使用构建/测试/代码检查流水线)。
架构
阶段详情
阶段 1:列清单(生成)
执行主要任务。无需改变正常的生成工作流程。圣诞老人方法是一个生成后验证层,而非生成策略。
阶段 2:检查两遍(独立双重审查)
并行生成两个审查智能体。关键不变项:
- 上下文隔离 — 两个审查者互不见面对方的评估
- 相同评估标准 — 两者收到相同的评估标准
- 相同输入 — 两者都收到原始规格说明和生成的输出
- 结构化输出 — 每个审查者返回类型化的判定,而非散文
评估标准设计
评估标准是最重要的输入。模糊的标准会产生模糊的审查。每个标准必须有客观的通过/失败条件。
特定领域评估标准扩展
内容/营销:
- 品牌语气一致性
- 满足 SEO 要求(关键词密度、元标签、结构)
- 无竞争对手商标滥用
- CTA 存在且链接正确
代码:
- 类型安全(无
any泄漏,正确处理 null) - 错误处理覆盖
- 安全性(代码中无秘密、输入验证、注入防护)
- 新路径的测试覆盖
合规敏感(受监管、法律、金融):
- 无结果保证或未经证实的声明
- 存在所需的免责声明
- 仅使用批准的术语
- 符合司法管辖区的语言
阶段 3:表现好坏(判定门控)
为什么两者都必须通过:如果只有一个审查者发现问题,那么该问题是真实存在的。另一个审查者的盲点正是圣诞老人方法旨在消除的故障模式。
阶段 4:修正直到表现良好(收敛循环)
关键:每轮审查使用全新的智能体。审查者不得携带之前轮次的记忆,因为先前的上下文会造成锚定偏差。
实现模式
模式 A:Claude Code 子智能体(推荐)
子智能体提供真正的上下文隔离。每个审查者是一个独立的进程,没有共享状态。
模式 B:顺序内联(备用方案)
当子智能体不可用时,通过显式上下文重置模拟隔离:
- 生成输出
- 新上下文:"你是审查者 1。仅根据此评估标准进行评估。找出问题。"
- 逐字记录发现
- 完全清除上下文
- 新上下文:"你是审查者 2。仅根据此评估标准进行评估。找出问题。"
- 比较两个审查结果,修复,重复
子智能体模式严格优于内联模拟——内联模拟存在审查者之间上下文渗透的风险。
模式 C:批量采样
对于大批量(100+ 项),对每个项目都执行完整的圣诞老人方法成本过高。使用分层采样:
- 对随机样本(批量的 10-15%,最少 5 项)运行圣诞老人方法
- 按类型对失败进行分类(幻觉、合规性、完整性等)
- 如果出现系统性模式,对整个批量应用针对性修复
- 重新采样并重新验证修复后的批量
- 持续直到干净的样本通过
故障模式与缓解措施
与其他技能的集成
指标
跟踪以下指标以衡量圣诞老人方法的有效性:
- 首次通过率:第一轮通过圣诞老人方法的输出百分比(目标:>70%)
- 收敛平均迭代次数:达到"表现良好"的平均轮数(目标:<1.5)
- 问题分类:失败类型的分布(幻觉 vs. 完整性 vs. 合规性)
- 审查者一致性:两个审查者都标记的问题与仅一个审查者标记的问题的百分比(一致性低 = 需要收紧评估标准)
- 逃逸率:发布后发现但圣诞老人方法本应捕获的问题(目标:0)
成本分析
每个验证周期,圣诞老人方法的代币成本大约是单独生成的 2-3 倍。对于大多数高风险的输出,这很划算:
对于批量操作,采样模式将成本降低到完全验证的约 15-20%,同时捕获超过 90% 的系统性问题。


