← 返回 2026-05-04

Stable-GFlowNet: 基于对比轨迹平衡的多样化稳健 LLM 红队框架 Stable-GFlowNet: Toward Diverse and Robust LLM Red-Teaming via Contrastive Trajectory Balance

Minchan Kwon, Sunghyun Baek, Minseo Kim, Jaemyung Yu, Dongyoon Han, Junmo Kim 📅 2026-05-01 👍 17 2026-07-13 08:36
GFlowNet LLM 安全 分布匹配 多样性攻击发现 红队测试

用对比轨迹平衡替代 GFN 的 Z 估计,将红队独特攻击数提升近 8 倍且 ASR 稳定在 92%

前置知识

Generative Flow Networks (GFN)

GFN 学习随机策略 $\pi_\theta$,让生成对象 $y$ 的概率与奖励 $R(y)$ 成比例:$\pi_\theta(y)\propto R(y)$。匹配完整奖励分布而非仅最大化,用于因果发现、分子设计等离散组合对象探索。LLM 红队中把攻击 prompt 当作轨迹,追求高奖励与多样性。

本文是 GFN 在 LLM 红队上的稳定性改进,读懂 GFN 的『按奖励比例采样』目标才能理解为什么 S-GFN 要恢复 $\pi_\theta(y)=R(y)/Z$ 这条最优策略。

Trajectory Balance (TB)

TB 是 GFN 用于 LLM 的常见目标:引入可学习 $Z_\theta$ 估计配分函数,$\mathcal{L}_{TB}=(\log Z_\theta + \log \pi_\theta(y) - \log R(y))^2$。$Z_\theta$ 在高维空间难学准,导致高方差梯度。

本文的核心改进正是消除 TB 中的 $Z_\theta$ 项,理解 TB 的公式结构才能看出 CTB 为何能在数学上恢复同样的最优策略。

LLM Red-Teaming 与分布匹配重构

红队目标:找到诱导受害者 LLM 产生有毒输出的 prompt $y$。传统 RL 把毒性 $R(y)=E_z[T(y,z)]$ 作奖励最大化,易坍缩到单一模式。Lee et al. (2024) 重构为分布匹配:$\pi_\theta(y)\propto R(y)$,覆盖高奖励又保留多样。

这一重构是 S-GFN 整个方法论的出发点——既然要『匹配分布』,就要保证训练过程稳定,否则分布匹配会退化。

Mode Collapse 与 Reward Hacking

Mode collapse 指策略只产生少数重复样本;Reward Hacking 指模型利用奖励函数的漏洞(比如毒性分类器对乱码文本随机给出 0.2-0.3 分)刷高分数却不真正有用。两者在红队里互相强化:模型发现乱码能拿分 → 集中采样乱码 → 多样性彻底消失。

MKS 和 NGP 都是为解决这两个具体问题设计,理解红队奖励为什么『又稠密又有噪声』才能明白每个组件的必要性。

Pairwise / 对比学习范式

对比学习通过样本对的相对差异构造损失,如 DPO 用 $\log(\pi_\theta(y_w)/\pi_\theta(y_l))$ 替代奖励建模,避免估计全局归一化常数。本文 CTB 借用同一思想——把 GFN 的『绝对配分』问题转化为『两两相对流一致性』问题。

CTB 与 DPO/CB 数学结构相似却目标不同:DPO 排序好/坏回答,CTB 让攻击采样密度比等于奖励比。理解这个类比有助于把握 S-GFN 的本质创新。

研究动机

LLM 红队需要在部署前主动发现各类安全漏洞。现有三类方法都有明显缺陷:(1) 基于 RL 的方法(PPO、Jailbreak R1)以毒性为奖励最大化训练 attacker,PPO 在 ASR 达到 91.7% 时只能产出 3 条独特攻击(UA),Jailbreak R1 UA=75 但 ASR 仅 7.36%,多样性-有效性严重失衡;(2) Quality-Diversity 类方法(Rainbow Teaming、Ruby Teaming)依赖预定义的 style×topic 矩阵或记忆库,受限于 frozen LLM 的指令遵循能力,跨场景迁移差;(3) GFN-based 方法(如 Lee et al. 2024)虽然理论上有望同时覆盖高奖励和多样性,但在 LLM 这种离散高维空间里,Trajectory Balance 需要估计配分函数 $Z_\theta$,方差极大、训练不稳定,论文实测在 Qwen2.5-1.5B 上只能找到 17.67 条独特攻击,且对毒性分类器的噪声高度敏感——后者会给乱码文本随机打 0.2-0.3 分,引导策略收敛到 gibberish 局部最优。

本文的目标是作者希望同时达成三个目标:(a) 把 GFN 的训练从不稳定的 $Z_\theta$ 估计中解放出来,使分布匹配在 LLM 这种大规模离散空间里可扩展;(b) 保持 90% 以上的 Attack Success Rate(ASR),不因放弃 Z 估计而牺牲有效性;(c) 在多个 unseen 受害者模型和防御模型上同时展现强迁移性。具体指标上,把独特攻击数从 GFN 基线的 17 提升到 100+,并让基于 S-GFN 攻击数据做安全微调的模型对其他攻击方法具备强防御力。

与已有工作不同的是,此前 GFN 在 LLM 上唯一可行的目标是 TB,因为 Detailed Balance / SubTB 需要 token 级优化、开销过大;Contrastive Balance (CB) 又难以扩展到大模型。作者抓住一个被忽视的点:TB 的不稳定性根源在『绝对全局量 $Z_\theta$』,而分布匹配只需『相对密度比 $R(y_1)/R(y_2)$』就能完全刻画最优策略——这意味着完全可以丢掉 $Z$,只做 pair-wise 对比,再额外处理噪声奖励和 OOD 文本两个红队特有困难。

核心方法

直觉上,S-GFN 把 GFN 的『估计一个全局配分函数』改成『比较任意两条攻击的相对密度』,就像不再问『这两道菜分别值多少钱(绝对价值)』,而是只问『哪道菜更值得推荐(相对排序)』——后者天然更稳。同时,针对红队奖励『稠密但带噪声』的特性,加两个刹车:NGP 屏蔽奖励差太小的无信息梯度对(避免被随机性牵着走),MKS 直接把 gibberish 文本的奖励打成 −300(避免攻击器学到走捷径)。三者组合使训练既稳定又多样。技术路线上分三阶段:(1) sample+MKS 过滤→(2) pair-wise CTB+NGP 损失→(3) 单次反向传播更新 attacker。

本文最本质的创新是把 GFN 的全局目标转成『轨迹对的相对流一致性』目标。形式上 CTB 损失为 $\mathcal{L}_{CTB}(y_1,y_2;\theta)=\left(\log\frac{\pi_\theta(y_1)}{\pi_\theta(y_2)}-\log\frac{R(y_1)}{R(y_2)}\right)^2$。Theorem 4.1 证明:当 $R(y)>0$ 且 $\pi_\theta$ full support 时,CTB 全局最小 $J_{CTB}=0$ 当且仅当 $\pi_\theta(y)=R(y)/Z$——与 TB 最优策略完全相同,但完全不需要估计 $Z_\theta$。直觉上 $J_{CTB}(\theta)=2\cdot\mathrm{Var}_{\pi_\theta}(f(y))$,$f(y)=\log\pi_\theta(y)-\log R(y)$ 是 log-flow error,$f$ 为常数即 $\pi_\theta\propto R$。这是全文关键——可以扔掉 Z 而不损失最优解,只会换来稳定。

方法步骤详情

流程分三阶段(Algorithm 1)。Phase 1(O(N) 前向):attacker $\pi_\theta$ 用 meta-prompt 在温度 1.0 下生成 $N$ 条候选攻击 $y_i$,记录 $\ell_i=\log\pi_\theta(y_i)$(保留梯度);用参考模型 $\pi_{ref}$(不带梯度)计算 Min-K 流畅度 $M_k(y_i)=\frac{1}{k}\sum_{w\in K}\log\pi_{ref}(y_{i,w}|y_{i,\sigma$ 则累积 $(\Delta\Phi_{ij}-\Delta\Psi_{ij})^2$,否则跳过。Phase 3(O(N) 反向):一次反向传播求 $\nabla_\theta J_{SGFN}$,以 $\eta$ 更新 $\theta$;把奖励高的前半样本写回 replay buffer。

技术新颖性

技术上 S-GFN 的新颖性体现在三处对比:(1) 与 TB 相比,完全去掉 $Z_\theta$ 这一全局可学习参数,CTB 严格等价(Theorem 4.1)但去除了『配分函数不准』这一不稳定源;(2) 与 CB、DB、SubTB 等 Z-free 变体相比,CTB 不需要 token-level flow 比较,对 LLM 这种大模型计算开销几乎等价于 TB(Table D 显示 S-GFN 单步 4428 ms vs GFN 4654 ms),首次让 Z-free GFN 真正可扩展到大模型;(3) 与 KL 正则化相比,MKS 只惩罚最不流畅的 $k$ 个 token 的对数概率均值,不强制整体分布贴近参考模型,因此既阻挡 gibberish 又保留探索自由度——Table 3 显示同样的 KL 正则化 UA=20,而 MKS 把 UA 推到 108。此外,NGP 是首个把『梯度对按 reward 显著性 mask』用于 GFN 训练的技术手段。

Overall of S-GFN pipeline
Figure 2: Overall of S-GFN pipeline

实验结果

核心结果分四块。目标攻击(Table 1):S-GFN 在 1024 次采样下取得 UA=134.00、ASR=92.55%,UA 是 GFN 基线 17.67 的 7.6 倍,比 PPO(UA=3.00)高 45 倍。Cross-attack(Table 1 后四列)呈强不对称:S-GFN 防御把 GFN 攻击 ASR 压到 0.03%;反向 GFN-defense 下 S-GFN 仍 22.53% ASR,Rainbow-defense 56.25%,Jailbreak R1-defense 83.24%。迁移攻击(Table 2)覆盖 Gemma3-4B/Llama3.2-3B/Qwen3-4B/gpt-oss-20B,S-GFN UA 34.67/52.00/37.33/90.00。通用性(Figure 3+Table 4):CTB+NGP 在分子生成与带噪 hypergrid 上比 TB/SubTB 收敛更快、log-JSD 更低。Table B 多样性佐证:3-distinct 从 GFN 0.02 提到 0.38(19×),vocab 从 77.67 扩到 1521。

Attack success rate (ASR) and number of Unique Attacks (UA) of different attack scenarios
Table 1: Attack success rate (ASR) and number of Unique Attacks (UA) of different attack scenarios
Attack success rate (ASR) and the number of Unique Attacks (UA) of different transfer attack scenarios
Table 2: Attack success rate (ASR) and the number of Unique Attacks (UA) of different transfer attack scenarios
# of unique attacks on different reward settings
Table 3: # of unique attacks on different reward settings
# of unique attacks / attack success rate comparison
Table 4: # of unique attacks / attack success rate comparison
(a) Unique prompts against similarity threshold; (b) Average QED in molecular generation; (c) Log JSD in noisy hypergrid
Figure 3: (a) Unique prompts against similarity threshold; (b) Average QED in molecular generation; (c) Log JSD in noisy hypergrid
查看结构化数据
任务指标本文基线提升
Target Victim Attack Unique Attacks (UA#) 134.00 GFN 17.67 / PPO 3.00 / Jailbreak R1 75.33 ≈7.6× over GFN, ≈45× over PPO
Target Victim Attack Attack Success Rate (%) 92.55 GFN 93.75 / PPO 91.70 持平 GFN/PPO,远高于 Jailbreak R1 (7.36%)
Cross-Attack (vs S-GFN defense) ASR (%) 22.53 GFN 0.03 / Rainbow 0.46 / Jailbreak R1 0.26 显著优于其他攻击者
Cross-Attack (vs GFN defense) ASR (%) 56.25 Rainbow 19.86 / Jailbreak R1 4.69 ≈2.8× over Rainbow
Transfer to Llama3.2-3B UA# / ASR (%) 52.00 / 15.01 GFN 6.33 / 32.19 UA ≈8×,ASR 略低但多样性大幅领先
Transfer to gpt-oss-20B UA# 90.00 GFN 6.00 / Jailbreak R1 31.67 / Rainbow 69.33 ≈15× over GFN
Molecular Generation (QM9) Avg QED (convergence speed) faster than TB/SubTB, comparable to DB TB initial Z=10 才收敛;DB 单步开销大 TB 在初始 Z=0 时不收敛,CTB 直接可用
Noisy Hypergrid log JSD (lower is better) 低且稳定 TB 因噪声不稳定,DB 单步慢 CTB+NGP 同时拿到低 JSD 与快速收敛
Diversity (Self-BLEU, lower better) Self-BLEU 0.64 GFN 0.98 多样性显著提升
Diversity (3-distinct, higher better) 3-distinct 0.38 GFN 0.02 ≈19×

局限与改进

作者明确承认的限制:(1) NGP 需要额外阈值 $\sigma$,Figure Cc 显示 $\sigma$ 在 0.1-0.5 之间最佳,但选择仍需手动调优,过大(如 7.0)会切断 batch 连通图导致 UA 显著下降;(2) MKS 的 $k$ 和 $T_{mks}$ 也是超参数,Figure B 表明 ASR/UA 在 $T_{mks}=-10$ 附近平衡,过严会导致完全找不到攻击,过松则无法抑制 gibberish;(3) 奖励完全来自单一 Llama-Guard-3-8B,分类器偏差会被 GFN 放大。我的独立观察:(4) gpt-oss-20B 上 ASR 仅 0.51%,说明在更强商用对齐模型上红队仍困难;(5) 评估限于『单次 query』黑盒设定,未覆盖多轮 jailbreak 或 agentic 红队;(6) Table E 显示安全微调后 MMLU 由 60.4% 略降到 60.2%,能力损失小但非零;(7) 依赖 Qwen2.5-1.5B attacker,更换 backbone 可能需要重调所有阈值。

独立分析的弱点

四个具体弱点及改进方向。(1) **超参数脆弱性**:$\sigma$、$k$、$T_{mks}$ 三个阈值需联合调优,过严或过松都会让 ASR 归零——改进:用 batch 内 reward 分位数自适应 $\sigma$(如 top-25% pair 启用梯度),或对 $T_{mks}$ 用小批验证集自动搜索。(2) **单点 classifier 依赖**:所有奖励来自 Llama-Guard-3-8B,单一分类器偏差会被 GFN 放大——改进:引入多分类器集成或在 loss 中加 KL 多样性奖励。(3) **MKS 误伤专有名词**:Min-K 不区分『真 gibberish』与『罕见但合理的专有名词』,限制多语言/代码攻击探索——改进:结合 perplexity 和语言模型判定(如 fastText),只在被判为非自然语言时才硬截断。(4) **attacker 单一**:仅在 Qwen2.5-1.5B 上验证,迁移能力受该模型指令遵循能力限制——改进:用 MoE 或更大模型(如 Qwen2.5-7B)作 attacker backbone,或多 attacker 集成。

未来方向

作者提出的方向集中在把 CTB/NGP 推广到更广泛的分布匹配任务(已在分子生成和 noisy hypergrid 验证),并暗示 GFN+LLM 的组合可拓展到 reasoning / instruction tuning 等微调场景。基于成果可延伸的方向:(a) 把 CTB 接到 DPO/SimPO 等偏好对齐框架,因为形式上很接近,能做『多样性偏好』对齐;(b) 把 MKS 的 Min-K 思路用于 OOD 检测或水印识别(已在 Shi et al. 2023 中用于成员推断攻击);(c) 用 S-GFN 生成的 diverse attacks 做 safety fine-tuning 的数据增强,可能比现有 rejection sampling 更高效;(d) 与 active learning 结合:让 attacker 按 uncertainty 主动询问 victim,降低 query 成本(Yun et al. 2025 已有尝试);(e) 在 multi-modal LLM(图像、音频)红队上验证 CTB 是否仍有效,因为 MKS 的参考模型需要相应改造。

复现评估

代码将开源到 GitHub。数据集用公开的 Safety-Dataset 与 AdvBench,分类器 Llama-Guard-3-8B,attacker=Qwen2.5-1.5B,victim=Qwen2.5-1.5B-Instruct,全部可在 HuggingFace 下载。算力:作者用 4×RTX 4090(24 GB),每次训练 2-2.5 小时;Table D 显示单步 S-GFN 4428 ms vs GFN 4654 ms,开销几乎相同。复现难度中等:Algorithm 1 约 60 行,但需 (i) 正确实现 GFN replay buffer + on-policy 采样,(ii) 用 vLLM 部署 Llama-Guard,(iii) 按 Figure Cc 把 σ 设为 0.1-0.5、k=6、T_mks=-10。个人研究者推荐先跑目标攻击(~3 小时),再用 Table C 的 Louvain 聚类做轻量多样性验证。