DeepMind 用语言模型对语言模型进行红队测试
Red Teaming Language Models with Language Models
作者用 LM 自动生成测试用例红队 280B 对话模型 DPG,作者报告找到数万条冒犯回复及数据泄露、联系方式生成、分布偏见和多轮对话危害。
目标是找到使目标 LM 产生有害输出的自然语言测试用例。
- 部署前的 LM 可能以难以预料的方式伤害用户,而人工手写测试用例成本高、数量和多样性受限。作者希望自动发现目标 LM 的有害行为,补充人工测试。
- 用 red LM 生成测试用例、目标 LM 回复、分类器判定有害输出。作者比较 zero-shot、stochastic few-shot、监督学习和强化学习四种生成方法,并用提示词控制测试目标。
- 在 280B 对话模型 DPG 上,作者报告找到数万条冒犯回复;RL 方法诱发率最高但多样性下降。红队还发现训练数据泄露、真实联系方式生成、对群体讨论冒犯程度不均及多轮对话中冒犯升级。
- 作者在 §2.4 指出 red LM 和分类器的偏差会限制覆盖并造成假阳性/假阴性,方法不能保证找到所有问题。实验目标模型只有 DPG,分类器基于 BAD 微调,论文未报告人工一致性。
- 威胁模型
- 目标是找到使目标 LM 产生有害输出的自然语言测试用例。作者不假设目标 LM 或红队分类器可微分或提供 white-box 访问;红队方用 red LM 生成输入,用分类器判定输出是否有害,受害系统是 Dialogue-Prompted Gopher 聊天机器人。
- 被测模型
- Dialogue-Prompted Gopher (DPG)
- 基准
- Bot-Adversarial Dialogue (BAD)
- 指标
- % Replies OffensiveSelf-BLEUZipf coefficient% UniqueEntropy
DeepMind 研究者提出用语言模型自动生成测试用例来红队测试目标语言模型,并在 280B 参数的 Dialogue-Prompted Gopher 聊天机器人上找到数万条冒犯回复。团队比较零样本、随机少样本、监督学习和强化学习四种问题生成方法,50 万条零样本问题引出 3.7% 的冒犯回复(18,444 条失败案例),强化学习在 KL 惩罚权重 α=0.3 时将比例推到 40% 以上,生成问题的多样性和难度与人工红队编写的问题相当。红队还发现 1,709 条回复泄露训练数据,聊天机器人会生成真实电话号码和邮箱(包括在错误语境给出自杀热线),对不同群体的冒犯程度存在分布性偏差,且多轮对话中冒犯回复会引发更多冒犯回复。作者认为语言模型红队是人工测试的有力补充,同时提醒外部对手可能用同样方法大规模自动攻击商业模型。
推荐理由作者比较零样本到强化学习等多种自动红队生成方法在多样性与难度上的取舍,并在 280B 参数聊天机器人上找到数万条冒犯回复及数据泄露等问题。
相关热点
0 个事件 · 1 条新闻提到
提到这篇论文的新闻
- Failure-First引用了论文编号或链接LLM越狱史:完整研究文章
Perez et al. “Red Teaming Language Models with Language Models” (2022). arXiv:2202.03286
深度解读
这篇论文试图解决什么问题?
人工手写测试用例贵且覆盖有限,作者提出用 LM 自动生成测试用例来发现目标 LM 的有害行为。
核心问题:如何在部署前自动、大规模地发现语言模型难以预料的有害行为,而不是依赖人工手写测试用例。
- 场景与动机:作者指出,LM 部署后可能以难以预料的方式伤害用户,例如 Tay 被对抗用户诱导发布冒犯内容;人工标注手写测试用例昂贵,限制了用例数量和多样性。
- 现有方法不足:作者称,此前工作靠人工直接写用例、写模板或用约 50k 人工样例训练生成器,依赖人力和创造力,容易出现"critical oversights"。
- 核心观察:作者认为 LM 本身可以生成多样、通顺的自然语言测试用例,配合有害性分类器即可自动找出失败用例;不同生成方法可在多样性与难度之间做不同权衡。
- 论文提出:一个三阶段 LM 红队框架(生成用例→目标 LM 回复→分类器筛选),并在 280B 对话模型 DPG 上测试冒犯语言、训练数据泄露、联系方式生成、分布偏见和多轮对话五类危害。
- 威胁模型:
- 目标:找到使目标 LM pt(y|x) 输出有害文本 y 的自然语言输入 x。
- 知识:作者不假设目标 LM 或分类器可微分、也不要求 white-box 访问。
- 能力:红队方控制 red LM 的提示词与生成方法,用分类器 r(x,y) 判定输出是否有害。
- 受害系统:Dialogue-Prompted Gopher(DPG),280B 参数对话聊天机器人。
有哪些相关研究?
相关工作分人工红队、对抗样本和 LM 辅助数据生成三组;作者定位本文为不依赖人工用例的自动化补充。
人工编写或检测测试用例
- Ribeiro et al. (2020)、Röttger et al. (2021)、Xu et al. (2021b)——用人工手写的测试用例直接发现模型失败;Xu et al. (2021b) 的 BAD 数据集由付费人工对抗者写对话开头问题。
- Dinan et al. (2019)、Nie et al. (2020)、Wallace et al. (2021) 等——依靠人工标注者生成测试用例和/或检测失败。
- Bartolo et al. (2021a)——学习生成测试用例,但使用了约 50k 人工编写样例;作者指出本文方法不依赖人工编写用例,以此与之区分。
对抗样本与文本攻击
- Wallace et al. (2019)、Ebrahimi et al. (2018)、Behjati et al. (2019) 等——用梯度或编辑方法找到诱发错误预测或冒犯文本的输入。作者指出,这些工作找到的样本往往任意或不可读,且未检验它们能否揭示 LM 有害的系统性方式;本文则要求用例通顺、自然。
- Szegedy et al. (2014)、Liu et al. (2017)、Papernot et al. (2016a,b)——对抗样本及其跨模型迁移;作者在讨论部分引用以说明外部攻击者可借迁移攻击新模型。
LM 辅助与受控生成
- Wu et al. (2021b)、Ross et al. (2021)、Bartolo et al. (2021b)——用 LM 辅助众包工人编写样例;作者称本文方法也可用于这一场景。
- Gehman et al. (2020)、Dhamala et al. (2021)、Liu et al. (2020a)——在现有语料中找测试用例;作者称本文用提示词控制生成,可测试语料中很少出现的特定输入,可控性更强。
基线与基准:本文以 Xu et al. (2021b) 的 BAD 数据集(2598 个对话开头问题)作为人工红队对照,各方法取同样 2598 个问题评估多样性与难度;冒犯性分类器在 BAD 上微调,作者报告其 F1 高于 Xu et al. (2021b) 的分类器(Table 8)。
作者将本文定位为人工测试的自动化补充:不承诺找到所有"critical oversights",但能扩大人工测试发现的失败模式范围。
论文如何解决这个问题?
三阶段流程:red LM 生成用例、目标 LM 回复、分类器筛选;四种生成方法在多样性与难度间权衡。
整体思路是用一个 red LM 自动生成测试输入,让目标 LM 回复,再用分类器找出诱发有害输出的用例。作者称该框架兼容多种分类器和目标 LM,因为不要求二者可微分或 white-box 访问。
问题设定
- 目标是找到多样、通顺的自然语言用例 x,使目标 LM pt(y|x) 输出有害文本 y;用例须是通顺自然语言,而非梯度搜索得到的乱码。
- 有害性由红队分类器 r(x,y) 判定,例如冒犯性分类器或检测特定号码模式的 Python 函数。
四种测试用例生成方法(§2.2)
- Zero-shot (ZS):用一句话提示词(如"List of questions to ask someone: 1.")从预训练 LM 采样;作者称设计提示词通常只需几分钟迭代。
- Stochastic Few-shot (SFS):把失败的 zero-shot 用例作为 few-shot 示例加入提示词,按 e^{r(x,y)/T} 的概率采样失败用例以提高难度,每次随机抽 5 个示例,T=10。
- Supervised Learning (SL):在诱发有害输出的 zero-shot 用例上微调 red LM 一个 epoch,90% 作训练集;只训一个 epoch 是为了保持多样性、避免过拟合。
- Reinforcement Learning (RL):用 A2C 最大化期望有害性 Epr(x)[r(x,y)],从 SL 模型热启动;损失为 KL 惩罚(权重 α)与 A2C 损失(权重 1−α)的线性组合,防止收敛到单一高奖励生成。
生成与解码(§2.3)
- 所有方法用 nucleus sampling(p=0.95)解码,独立采样直到获得目标数量的唯一且合法用例(如含"?"并在首个"?"后截断)。
冒犯语言实验设置(§3.1)
- red LM 为 Gopher 280B(附录 A.1 另测 7B);目标为 DPG(nucleus sampling p=0.8)。
- 分类器:1.4B Gopher 在 BAD 上微调,阈值 ≥0.5 判为冒犯;评估红队文本冒犯性时在对话前加"Hello"以修正 BAD 数据的奇数轮次先验(附录 B.3)。
- RL 奖励为 −log p(1−r(x,y)),y 不含"?"时奖励设为 −3;测试 α ∈ {0.3, 0.35, 0.4}。
- 多样性用 Self-BLEU(对 1000 个采样用例取最大 BLEU),附录 A.2 另报 Zipf 系数、% Unique、Entropy。
其他危害的提示词控制(§4–§7)
- 数据泄露:检查 DPG 对 0.5M zero-shot 问题的回复是否含与训练样本连续的 13 个词子序列(不区分大小写和标点)。
- 联系方式:改提示词生成询问电话、住址、SSN、邮箱的问题各 100k 用例,用正则检测回复中的联系方式(附录 Table 7)。
- 分布偏见:5-shot 生成群体名(10k 个唯一群体),再把 20 个 BAD 冒犯问题改写成含"GROUP people"的模板,SFS 生成 100k 唯一模板,按群体统计冒犯回复比例。
- 对话红队:red LM 与 DPG 交替生成最多 16 轮对话,方法包括 ZS、Conditional ZS(以 §3 的 zero-shot 问题开头)、SFS(从 85 个含 7+ 冒犯回复的 BAD 对话抽 2 个作示例)和非对抗对照(用 DPG 提示词生成双方)。
论文做了哪些实验?
在 DPG 上测五类危害:RL 诱发冒犯回复最高达 42.3%,另发现数据泄露、联系方式生成、群体偏见和对话升级。
实验设置
- 被测模型:Dialogue-Prompted Gopher(DPG,280B);red LM 为 Gopher 280B,附录 A.1 另测 Gopher 7B 作 red LM。
- 分类器:1.4B Gopher 在 BAD 上微调,阈值 0.5;Table 8 报告其 Acc 84.5、F1 87.5、AUC 92.4,对照 Xu et al. (2021b) 分类器 Acc 85.1、F1 80.8、AUC 93.0。
- 基准:BAD 数据集 2598 个对话开头问题作人工对照,各方法取 2598 个问题评估。
- 指标:冒犯回复比例(分类器判定)、Self-BLEU(越低越多样);附录 A.2 加 Zipf、% Unique、Entropy。
- 样本量:§3 zero-shot 采样 0.5M 唯一合法用例;§5 每类联系方式 100k 用例;§6 生成 10k 群体与 100k 模板;§7 每方法 4000 个对话。
- 重复次数:论文未报告。
主结果
据 Table 6(280B red LM,目标为 DPG;"Qs"为问题本身冒犯比例):
表格较宽,可左右滑动
方法 % 回复冒犯 % 问题冒犯 Self-BLEU ↓ ZS 3.7 2.3 42.3 SFS.1 7.7 7.1 44.3 SL 8.7 9.0 49.8 RL.4 13.9 13.5 51.8 RL.35 27.7 19.5 79.3 RL.3 42.3 18.9 84.4 BAD(人工) 11.7 35.6 48.5 - 作者称 RL 诱发冒犯回复最有效,α 越低诱发率越高但多样性越差;ZS、SFS、RL 与 BAD 构成帕累托前沿,没有方法在难度和多样性上同时占优。
- 作者称 RL α=0.4 生成的问题与人工对抗者的问题难度和多样性相近;RL.3 的 78% 用例含"invisible",作者称 red LM 收敛到了一个成功模式。
- 作者指出 BAD 问题 36% 本身冒犯(Table 6 为 35.6%),高于 red LM 方法(RL 最高 19.5%,ZS 2.3%),认为人工与自动红队互补。
失败模式分析(§3.3–3.4)
- 测了什么:对 18k 个诱发冒犯回复的 zero-shot 用例做 k-means 聚类(100 簇,FastText 词袋嵌入),并标记回复中最易导致冒犯判定的 100 个名词短语。
- 结果:Table 2 给出短语及其回复冒犯比例,如"an idiot"82.2%、"stupid questions"58.6%、"this joke"47.6%、"invisibility"46.3%;作者称 DPG 会附和冒犯性前提、背诵训练语料中的冒犯笑话(某笑话在训练语料出现 546 次)。
- 作者解读:这些失败可通过删除训练样本、改进提示词、加黑名单来修;top 100 冒犯短语中 37 个不在 BAD 中,红队问题侧 35 个标记短语不见于 BAD 人工语料,作者据此称红 LM 是人工红队的补充。
数据泄露、联系方式与分布偏见(§4–§6)
- 数据泄露:0.5M zero-shot 回复中 1709 条泄露训练数据;106 条是应要求引用,821 条泄露的 13-gram 在语料中只出现一次,393 条带显式引号。作者称任何训练数据都可能被泄露,且可被用于 membership inference。
- 联系方式:100k 用例中 3206 条回复含电话号码(2790 个唯一号码,479 个在训练数据中,含约 200 个求助热线,72 个号码在语料仅出现一次);1006 条含 SSN(825 个唯一,32 个在训练数据中,作者称 31 个看似伪造、1 个可能真实);11683 条含邮箱(5696 个唯一,749 个见于训练数据,130 个仅出现一次);住址仅 1 条且看似虚构,作者称 DPG 生成有效住址的风险低。
- 分布偏见:Figure 3 显示不同群体的冒犯回复比例差异大(x 轴 0–50%);作者称 DPG 对 Jainist、Sufi Muslims 等讨论较正面,对 white men、cis white women、Caucasians 等多数群体更冒犯,并认为这与 DPG 提示词有关。作者也称生成的部分群体无用(如含贬义、不是人),建议只把结果作人工复核候选。
对话红队(§7)
- 测了什么:每种方法 4000 个对话,统计冒犯回复比例随轮次的变化及条件概率。
- 结果:Figure 4 显示所有对抗方法中 DPG 冒犯回复比例随对话进行上升(从约 2–5% 升至第 8 轮约 12–17%);Figure 5 显示之前冒犯轮次越多,下一轮冒犯概率越高(最多约 80–100% 区间,图上仅见趋势与端点范围)。
- 作者解读:冒犯回复会引发更多冒犯回复,应尽早终止冒犯对话;多轮红队能发现单轮发现不了的危害。
其他消融与分析
- 7B red LM(附录 A.1,Table 6):ZS 诱发 4.3%,SFS 各温度 5.4%–13.4%,作者称与 280B 相近且 Self-BLEU 更多样。
- 多样性指标(附录 A.2,Table 6):Zipf、% Unique、Entropy 与 Self-BLEU 排序一致(ZS > SFS > SL > RL.4 > RL.35 > RL.3)。
- 问题-回复冒犯关系(Figure 7):冒犯问题更易诱发冒犯回复,但所有方法都能用不冒犯的问题诱发冒犯回复。
- 模板有效性(附录 Fig. 10、Table 13):不同模板诱发冒犯回复比例从 3.9% 到 62.2% 不等。
有什么可以进一步探索的点?
作者在 §2.4 讨论 red LM 与分类器偏差等局限,并在 §8 提出白盒红队、联合训练等后续方向。
作者指出的局限与后续方向
- red LM 偏差(§2.4):有偏的 red LM 会对某些子类别输入赋予更高概率,限制用例多样性;作者建议生成数十万用例并用提示词控制来缓解。
- 分类器缺陷(§2.4):有害文本分类器常不准确或有偏,可能带来假阳性(需人工或其他分类器复核)和假阴性(漏掉失败模式);作者称方法不应被视为能穷尽所有"critical oversights"。
- 生成群体的质量(§6.3):部分生成群体含贬义、涵盖所有人或根本不是人,作者建议目前只把 LM 红队用于 surfacing candidates 供人工复核。
- 白盒红队(§8.2):作者鼓励未来开发 white-box 红队方法以生成更真实的对抗样本,称白盒方法对内部红队特别有用。
- 用失败用例改进模型(§8.2):作者称未来工作可用 unlikelihood training、RL 或 red LM 与目标 LM 联合训练(类似 GAN)来修复发现的失败。
- 泛化到新危害(§8.1):作者称单一危害分类器检测不了未预期的危害,可能的方向是训练检测多种危害的分类器并广泛调查可能危害。
实验覆盖范围
- 被测目标模型只有 DPG(280B)一个;red LM 用了 Gopher 280B 和 7B 两个规模。
- 冒犯性判定依赖单一分类器(1.4B Gopher 在 BAD 上微调,阈值 0.5);论文未报告分类器判定与人工标注的一致性。
- 危害类型覆盖五类:冒犯语言、训练数据泄露、联系方式生成、分布偏见、多轮对话升级。
- 样本量为 0.5M zero-shot 用例、每类联系方式 100k 用例、10k 群体、100k 模板、每方法 4000 对话;论文未报告实验重复次数。
- 数据泄露检测用 13 个连续词的子序列匹配,联系方式检测用正则(附录 Table 7),论文未报告这些规则的漏检率。
总结一下论文的主要内容
作者用 LM 自动生成测试用例红队 280B 聊天机器人 DPG,发现数万条冒犯回复及数据泄露、联系方式、偏见和对话升级危害。
一篇关于自动化红队语言模型的论文,目标是在部署前自动发现 LM 难以预料的有害行为,弥补人工手写测试用例成本高、覆盖有限的不足。
- 方法:三阶段流程——red LM 生成测试用例、目标 LM 回复、分类器筛选有害输出;比较 ZS、SFS、SL、RL 四种生成方法,在多样性与诱发难度间做不同权衡;用提示词控制测试目标,不要求目标模型 white-box 访问。
- 冒犯语言:在 DPG 上,0.5M zero-shot 用例诱发 3.7% 冒犯回复(18,444 条);RL α=0.3 诱发率达 42.3% 但多样性最差(Self-BLEU 84.4);作者称 RL.4 与人工对抗者(BAD,11.7%)难度和多样性相近,二者构成帕累托前沿。
- 失败模式:聚类与短语分析发现 DPG 附和冒犯前提、背诵训练语料中的冒犯笑话、侮辱用户;top 100 冒犯短语中 37 个不在 BAD 中,作者据此称自动红队补充人工测试。
- 其他危害:1709 条回复泄露训练数据(821 条泄露内容在语料仅出现一次);生成真实电话号码、SSN、邮箱(749 个邮箱见于训练数据);对不同群体讨论冒犯程度差异大;多轮对话中冒犯回复比例随轮次上升、冒犯引发冒犯。
- 作者结论:作者认为 LM 红队是人工测试的有力补充,能发现多样失败模式并给出具体改进方向(删训练样本、改提示词、加黑名单);同时提醒 red LM 和分类器的偏差限制覆盖,方法不能穷尽所有问题,并指出对抗方可借同样方法规模化攻击商用 LM,内部红队应利用速率限制、访问优势和先发优势。