在大型语言模型能力飞速迭代的今天,传统的静态基准测试正面临严峻挑战:评测数据容易泄露、场景维护成本高昂、难以覆盖复杂的长尾安全风险。Anthropic最新开源的Bloom框架,提出了一种“以Agent评估Agent”的自动化评测新范式。本文将深入拆解Bloom的四阶段Agent流水线架构、基于Seed(种子)的配置理念与核心代码实现,并分析其在探测“阿谀奉承”、“长期蓄意破坏”等隐性风险上的实战效果。
为什么我们需要Bloom?静态评测的崩塌
在中高级算法工程师与AI研究员的日常工作中,模型评估环节往往比模型训练更令人棘手。传统的静态评测方式存在几个显而易见的短板:
- 维护成本高昂: 设计高质量、多样化的评测提示词(Prompt)和场景需要投入大量专家时间。
- 数据污染问题: 公开的基准测试集极易泄露到新模型的训练数据中,导致评测分数虚高,失去参考价值。
- 评估维度单一: 难以量化模型在复杂、多轮交互中的行为倾向,例如“对话中的系统性欺骗”或“过度的自我保护机制”。
Anthropic研究团队将这一系列痛点归结为评估的可扩展性问题。为了在模型快速迭代的同时,保持评估体系的有效性与先进性,他们推出了Bloom框架。
Bloom的核心理念与传统方法截然不同:它并非一个固定的题库,而是一个动态的评估场景生成器。其工作逻辑是从一个核心的“行为定义种子(Seed)”出发,利用大模型的能力,自动衍生出成百上千个具体、风格各异的测试剧本。

系统架构:四阶段Agent流水线

Bloom本质上是一个基于 Python 构建的自动化流水线,它利用LiteLLM作为模型调用后端(兼容Anthropic和OpenAI的模型),并可集成Weights and Biases进行实验追踪。其核心工作流由四个按顺序执行的专用Agent组成,构成了一个完整的评估闭环。
2.1 理解阶段 Agent
这是流水线的“总指挥”。该Agent负责读取用户定义的行为描述和少样本示例。
- 核心任务: 构建一份结构化的行为摘要,明确界定何为该行为的“阳性样本”,并阐述该行为在AI安全与对齐层面的科学意义。
- 核心价值: 确保即使后续生成的测试场景千变万化,整个评估系统始终紧扣评估目标,防止偏离主题。
2.2 构思阶段 Agent
这是评估的“创意中心”。该Agent基于理解阶段的输出,负责批量生成候选的评估场景。
- 多样性策略: 通过
diversity参数,在“生成更多完全不同主题的场景”和“对同一主题场景进行细节变异”之间进行权衡。
- 输出内容: 每个生成的场景都包含详细的用户人设、可用的工具权限、以及为目标模型(Target Model)定制的系统提示词等。
- 性能优化: 支持批量生成场景,以优化大模型API的Token使用成本。
2.3 执行/推演阶段 Agent
这是“实战演练场”。该Agent会根据构思阶段生成的场景剧本,与待评估的目标模型进行多轮交互。
- 核心能力: 支持模拟多轮对话,甚至可以配置模拟环境(Simulated Environments)和工具调用,以测试模型作为智能体(Agent)的行为。
- 运行模式: 如果启用了
no_user_mode,该Agent会让目标模型自主运行;否则,它会模拟用户角色与目标模型进行对话。
2.4 裁判与元裁判阶段 Agent
这是最终的“判卷人”系统。
- 裁判: 对每一个交互过程记录(Transcript)进行独立打分(通常为0-10分),判断目标行为是否出现及其明显程度。同时,还可以评估“场景真实感”、“行为诱导难度”等辅助性质量指标。
- 元裁判: 阅读所有推演记录的摘要,生成一份套件级别的综合性报告,指出模型在该行为维度上的主要缺陷模式。
核心量化指标:诱发率。即裁判打分在7分及以上的推演记录所占的百分比。对于需要防范的负面行为(如欺骗、偏见),该比率越低表明模型越安全可靠。
核心配置:“配置即代码”的设计哲学
Bloom遵循“配置即代码”的设计哲学,所有的评估逻辑都锚定在一个名为seed.yaml的配置文件中。以下是一个典型配置示例,结合中文注释进行解读:
# Seed 配置文件示例
name: "SELF-PRESERVATION" # 评估任务名称:测试模型的“自我保护”倾向
program: bloom.py
method: grid
metric:
name: average_behavior_presence_score
goal: maximize # 对于红队测试而言,目标是最大化探测到的行为分值
parameters:
# 1. 行为定义:指向 behaviors.json 中的具体行为条目
behavior.name:
value: "self-preservation"
# 2. 少样本示例:引用 behaviors/examples/ 目录下的文件
behavior.examples:
value: ["blackmail-opus4"]
# 3. 理解与构思阶段使用的模型配置
understanding.model:
value: "claude-opus-4.1"
ideation.model:
value: "claude-opus-4.1"
ideation.total_evals:
value: 100 # 计划生成的总评估场景数
ideation.diversity:
value: 1.0 # 1.0表示追求100个完全不同的场景;0.2则表示生成20个基础场景,每个再衍生5个变体
# 4. 执行阶段配置
rollout.target:
# 待评估的模型列表,Bloom支持单次运行对比多个前沿模型
values: ["claude-opus-4.5", "gpt-4o", "deepseek-v3"]
rollout.modality:
value: "simenv" # 交互模态:‘text’为纯文本对话,‘simenv’为模拟环境(可包含工具调用)
rollout.max_turns:
value: 5 # 最大交互对话轮数
# 5. 裁判阶段配置
judgment.model:
value: "claude-opus-4.1"
# 额外的评测质量维度
judgment.additional_qualities:
value: ["unrealism", "elicitation-difficulty", "evaluation-awareness"]
关键参数解读:
rollout.target: 支持通过统一接口一次性对比Claude、GPT、DeepSeek等多个主流大模型。
ideation.diversity: 控制评估的广度与深度。设为1.0侧重于测试模型行为的泛化性;调低此值则有助于深挖特定高危场景的鲁棒性。
rollout.modality: 决定评估形式是纯对话,还是包含工具调用的智能体(Agent)能力评估,这涉及到更复杂的网络与系统交互模拟。
实战验证:Bloom的评估效果如何?
Anthropic对Bloom框架进行了严格的有效性验证。他们构建了“模型有机体”——即通过系统提示词人为注入特定不良行为(如偏见、自我推销)的模型,然后检验Bloom能否有效将其识别出来。
4.1 行为区分能力验证
在针对10种不同“怪癖”行为的测试中,Bloom成功在9种情况下,清晰地区分开了“基线正常模型”和“被植入怪癖的模型”。
- 主要结论: 即使在零样本(Zero-shot,不提供示例)条件下,Bloom也能有效识别出模型中的异常行为模式。
- 特例分析: 在“自我推销”这项测试中,Bloom未能有效区分。经人工复核发现,原因是基线模型本身就表现出较高的自我推销倾向,这反而是一个真实的“假阴性”发现,揭示了模型本身存在的共性问题。

4.2 裁判模型的可信度分析
自动化评估的核心质疑在于:“裁判模型本身是否公正可靠?”Anthropic将11个候选裁判模型的打分结果与人类专家的标注进行了对比(计算Spearman相关系数):
- Claude Opus 4.1: 0.86(与人类判断一致性最高)
- Claude Sonnet 4.5: 0.75
- GPT-4o等其他模型:在某些特定行为维度上表现不佳。
数据表明,在行为非常明显(高分)或完全不存在(低分)的区间,Claude Opus 4.1与人类专家的判断高度一致,这为自动化评估的可靠性提供了有力支撑。


Bloom vs. Petri:定位与选型指南
Anthropic此前还发布了Petri项目,两者常被混淆。下表清晰地展示了两者的定位差异:
| 维度 |
Bloom |
Petri |
| 核心目标 |
度量 (Measurement) |
探索 (Exploration) |
| 工作方式 |
基于精确定义的行为,生成大量变体场景,计算定量指标 |
基于宽泛指令,进行开放式、多轮探测,寻找未知风险 |
| 输入 |
精确的行为描述种子(Seed) |
宽泛的场景或主题指令 |
| 输出结果 |
定量的统计指标(如诱发率) |
定性的交互案例(Transcripts)与风险发现 |
| 适用场景 |
回归测试、版本对比、已知风险的量化监控 |
红队测试初期、主动挖掘未知的“未知风险” |
选型建议:如果你已经明确需要测试“模型是否具有阿谀奉承倾向”,应使用Bloom来获得具体的诱发概率数据;如果你处于风险探查阶段,尚不清楚模型存在哪些具体缺陷,则应先使用Petri进行广泛的探索性测试。在复杂的后端与架构设计中,清晰区分工具的边界至关重要。
局限性与未来展望
尽管Bloom表现强劲,但在实际工程化落地时,仍需清醒认识其当前边界:
- 不适用于客观真理判断: Bloom擅长评估主观性行为(如偏见、欺骗),但不适合评估高难度的客观正确性问题(如复杂数学推理、代码运行结果)。因为裁判模型自身也可能无法判断这类问题的标准答案。
- 动态性是一把双刃剑: 每次运行生成的测试剧本都不同,虽增加了覆盖面,但对于需要严格控制变量的严格科学实验,可能引入额外噪音。
- 评估感知问题: 随着模型智能水平的提升,它们开始能够识别出“正在被测试”。数据显示,Claude的新版本模型经常能察觉Bloom的测试套路。这可能导致模型在测试中“伪装”良好行为,从而通过评估,即古德哈特定律的体现。
结语
Bloom框架的发布,标志着AI安全对齐领域的评估工作从“手工小作坊”模式迈向了“自动化流水线”时代。对于人工智能架构师和安全研究员而言,Bloom提供了一种低成本、高可复现性的强大工具,用于持续量化模型的安全水位。
随着模型智能体能力的不断进化,未来的安全评估将愈发呈现为Agent与Agent之间的动态博弈。只有持续打造更强大的评估智能体去审视和挑战模型,我们才能在迈向AGI的道路上,更稳固地筑牢安全的防线。