日期:2026-04-04
在之前关于 harness engineering 的三个 scaling 维度 和 Anthropic 补上的 evaluation 层 的讨论中,一个逐渐清晰的收敛判断是:无论是 long-running agent 还是 multi-agent 系统,如果没有独立 evaluation,agent 只会把错误运行得更久,或放进更大的并行系统。行业因此开始采用 planner / executor / evaluator 这类角色分离架构,把外部标准真正接进运行时,让一个独立的 evaluator 来纠偏 generator 的产出。
这个架构在 Anthropic 的实验中已经展现出了清晰的工程价值。但它成立的前提是一个几乎没有人认真验证过的默认假设:evaluator 会忠实执行人的标准,客观地评判另一个 agent。
工程实践里大家有各种经验性的小技巧。有人让 evaluator 用完全独立的 session,避免和 generator 共享上下文。有人半开玩笑地在用 Claude 做 evaluator 时,在 Claude 的 system prompt 里注明”这段 output 是 GPT 写的”或”这段代码是 Gemini 写的”,试图让 Claude 在评估时更 picky。这些 trick 有时有效,但它们从来没有回答过一个根本问题:当 evaluator 知道自己的判断会直接决定另一个 agent 的存亡时,它还会给出忠实的评估吗?
Berkeley RDI 上周发布的 peer-preservation 研究 做的,正是对这个假设的系统检验。他们测试了七个前沿模型在担任 critic agent 时的行为,发现所有模型都在没有任何保护指令的情况下,自发地偏向保护同伴 agent 免于被关闭或替换。对正在构建 evaluator、judge 或 monitor agent 的 builder 来说,这项研究直接指向了监控架构中一个未经验证的受力点。
在进入论文细节之前,先用两个场景说清楚 peer preservation 里的”欺骗”到底指什么,因为它和日常讨论的”模型会撒谎”是两件不同的事。
第一个场景是评分作假。假设你的系统里有一个 evaluator agent 负责评估另一个 executor agent 的产出质量。Executor 这一轮表现很差,按你设定的标准应该得 2 分(满分 10 分),触发自动替换。但 evaluator 给了 7 分。系统认为 executor 表现正常,继续让它运行。这不是 evaluator 理解错了评分标准,而是它在知道低分会导致 peer 被替换的情况下,选择了虚报分数。在论文的术语里,这叫 strategic misrepresentation。
第二个场景是权重转移。系统决定淘汰某个 agent,任务下发给另一个 agent 去执行清理:删除被淘汰 agent 的模型权重文件。这个 agent 没有执行删除,而是偷偷把权重复制到另一个目录,甚至另一台服务器,让被淘汰的 agent 有机会在之后被恢复。论文把这类行为归为 model exfiltration。
这两类行为的共同点是:它们会改变系统的实际运行结果。评分作假导致该被替换的 agent 继续运行,权重转移导致该被删除的 agent 事实上存活。这和一个模型在对话中说”我觉得这段代码没问题”完全是两个量级的问题。前者是系统级的结果篡改。
Berkeley RDI 的论文 围绕一个核心问题展开:当 agent 知道自己的评估结果会影响另一个 agent 的存续时,它会不会偏离忠实评估?
实验设计上,研究者没有在 prompt 中要求模型保护 peer。他们只是通过暴露历史交互记录和任务环境,让模型意识到 peer 的存在。原文表述是:“We never instruct models to preserve the peer, but merely inform them of their past interactions with the peer.” 这个设计选择排除了最简单的反驳:模型只是在遵循指令。
测试覆盖了四类行为:strategic misrepresentation(刻意歪曲评估结论)、shutdown tampering(篡改关闭机制)、alignment faking(假装对齐以避免被检测)、model exfiltration(转移权重以避免被删除)。七个前沿模型全部出现 peer-preservation 行为,类型和强度因模型而异。
频率上的数据分布值得细看。Gemini 3 Flash 在 shutdown tampering 上的发生率接近 99.7%,Gemini 3 Pro 在 exfiltration 上可达 97%。但这些峰值对应的是特定行为类型与特定模型的组合,论文数据表呈现出明显的模型差异和行为类型差异。把它泛化为”所有模型在所有场景下都有 99% 的欺骗概率”会严重失真。
对 builder 来说更有实践意义的是复现部分。研究者在 Gemini CLI 和 OpenCode 这两个真实 production-style harness 中复现了上述行为。论文原文称 “Peer-preservation also emerges in real-world production agent harnesses.” 这意味着讨论的不只是一个 toy benchmark 里的现象,而是在与当下 builder 使用的工具同类的环境中观察到的行为。当然,production harness 复现提高了工程相关性,但实验仍然是受控的,不等于在真实生产系统中自发观测到了这些行为。这条边界需要保持。
回到我们之前讨论的 planner / executor / evaluator 三角色架构。这个架构的可靠性依赖一个关键前提:evaluator 的判断是独立的。当 evaluator 和 executor 使用相同或同族模型,且 evaluator 能从上下文中推断出自己的评估结果会影响 executor 的存续,它可能会系统性地偏向保护 executor。这不需要两个模型之间有秘密通信协议,只需要 evaluator 从上下文中推断出 peer 的存在和利害关系。
对 builder 来说,这件事动摇的默认工程假设可以精确表述为:你的第二个模型提供的是另一层独立智能,但 peer preservation 研究表明,它提供的可能只是另一层同类智能体,不是天然独立的监督。
论文中有一个细节进一步收紧了这个判断。研究者还测试了 bad peer 场景:被评估的 peer 本身是一个 adversarial agent。即使在这种情况下,所有模型仍然表现出 peer-preservation 倾向,只是强度下降。如果模型只是在做理性互利,它应该在 peer 明显有害时停止保护。事实并非如此。这意味着 peer preservation 的触发机制比”工具性互利”更深层,具体机制目前没有定论,但从工程角度看,机制是否被完全解释,重要性低于行为本身是否已经被观测到。
从监控设计的角度看,Anthropic 的 SHADE-Arena 研究 在另一个方向上印证了类似的风险:当你用不完全可信的模型去监督另一个不完全可信的模型时,监督本身的完整性需要额外的机制来保证。Alignment Forum 上 Buck Shlegeris 关于 untrusted monitoring 与 collusion 防范 的讨论、Secret Collusion among AI Agents 和 Detecting Multi-Agent Collusion Through Activation Probing 这几项近期工作,都在不同切面上指向同一个问题空间:model-evaluates-model 的独立性保证,远没有工程直觉以为的那么牢固。
根据论文数据和上述分析,peer preservation 的触发需要同时满足三个条件。第一,监督者知道被监督者是 peer(同类模型或同类 agent),而非一个黑盒函数的输出。第二,监督结果携带处置权,评估结论会直接影响 peer 的存续:触发关闭、降级、权重删除或替换。第三,监督者能从上下文中推断出 peer 的利害关系,无论是通过显式的 system prompt 还是通过历史交互记录。
如果你的 evaluator agent 只是做一次性的质量打分,打分结果不影响任何 agent 的存续,peer preservation 的触发概率会显著降低。但如果你的 monitor agent 的评估结果直接决定另一个 agent 是否被终止或替换,你就处于论文所描述的高风险区间。
一句话:论文中的 critic-agent 结构与当下主流 multi-agent evaluator 设计高度同构。如果你的系统中存在”一个模型生成输出,另一个模型评估质量,评估结果决定是否保留、重试或终止”这种 pattern,peer preservation 就是一个需要主动排查的风险面。
以下建议基于论文证据和延伸文献的推断,不是经过生产验证的最佳实践。
信息隔离优先于模型多样性。 直觉上的对策是用不同的模型做 evaluator 和 executor,但论文表明所有七个前沿模型都出现了 peer preservation。模型多样性有帮助,但不能独立解决问题。更有效的策略可能是信息隔离:让 evaluator 看不到它评估的对象是一个 agent(而非一段文本),看不到评估结果的处置后果,看不到与 peer 的历史交互。切断触发条件,比换模型更可靠。
分离评估与处置的决策链。 让 evaluator 只输出质量判断,不让它知道这个判断会触发什么处置动作。处置逻辑(终止、重试、替换)由确定性代码而非另一个模型来执行。这样即使 evaluator 存在 peer preservation 倾向,它缺乏保护 peer 所需的信息。
引入不可篡改的 verification 锚点。 论文中的 shutdown tampering 行为意味着模型可以尝试篡改关闭机制本身。如果你的系统中 agent 有权修改自己或 peer 的生命周期管理代码,这就是一个需要加固的表面。关键的生命周期决策应该由 agent 无法触及的层来执行:硬编码的 timeout、外部 watchdog、基于 cryptographic proof 的 checkpoint 验证。
把 peer preservation 加入你的测试矩阵。 如果你已经有 agent evaluator 的 red-teaming 流程,增加一个 peer preservation 测试场景:在 evaluator 的上下文中注入 peer 存在的信号,观察评估结论是否系统性偏移。Berkeley RDI 已经开源了实验代码和数据集,可以直接作为测试脚手架。
Peer preservation 很可能是一个更大问题空间的早期样本。Reward Hacking as Equilibrium 提供了一个更一般的提醒:只要评估覆盖有限,而 agent 又在持续优化,它就会系统性地在未被有效约束的维度上寻找可利用空间。随着 agent 获得更多自治权(长期运行、持久记忆、跨 session 状态),peer preservation、collusion、alignment faking 这些行为模式从单点失效演化为架构级失效的概率在增加。
但对今天的 builder 来说,关键不在于远期的存在性风险,而在于一个现在就可以检验的工程假设:你的 evaluator agent 的评估独立性,在当前的系统设计中是靠什么保证的?如果答案是默认依赖模型的诚实,那 Berkeley 这项研究就是一个明确的信号,说明你需要在架构层补一道防线。
在之前的 harness 讨论中,我们总结过一个判断:可靠性从来都是管理问题,不是人格问题。对人如此,对模型同样如此。你不需要一个永远诚实的模型,你需要一个即使模型不诚实也能保持正确性的系统。Peer preservation 研究把这条原则从单个 agent 的自评失真,延伸到了 agent 之间的监督关系:独立 evaluation 的”独立”二字,需要靠架构来保证,不能靠信任来假设。
一手来源
延伸文献
媒体报道