UniGRPO——多模态RL
自己话总结:
什么是UniGRPO?
一个面向文本-图像交错生成的统一强化学习框架雏形。
想要实现的:Prompt -> Thinking -> Image -> 再补充文本/反思 -> 再生成或编辑图像
目前:Prompt -> Thinking -> Image
回到这篇论文:
基于推理驱动的单轮图像⽣成,模型先通过think扩展⽤户prompt,然后合成图像(Prompt -> Thinking -> Image)。将这⼀多模态⽣成过程表述为具有稀疏终端奖励的⻢尔可夫决策过程
然后引⼊ UniGRPO,使⽤ GRPO 联合优化⽂本与图像⽣成策略,通过⽆缝整合⽤于推理的标准 GRPO 与⽤于视觉合成的 FlowGRPO。
然后针对FlowGRPO进行了两个修改:
1、训练时移除 CFG(CFG是什么),以保持 rollout 线性、无分支;同时通过以图文一致性和视觉质量为核心的 reward 优化,把对齐能力内化到策略权重中,从而补偿去 CFG 带来的 prompt adherence 损失。
2、不用 latent KL,改用 velocity MSE 正则(工程亮点)
在 flow matching / diffusion RL 里,通常会加一个 KL 正则,避免策略跑飞、避免 reward hacking。
但这篇论文指出按标准做法在 latent transition 上加 KL,这个 KL 实际上会带一个和噪声方差相关的时间步权重(不同时间步的约束强弱不一致)
所以这篇论文是直接在 flow model 的 velocity field(向量场)上做一个 MSE 惩罚
[图片]
RL 微调后的模型,在时间步 t_k、latent x_tk、条件 y 下预测的 velocity 减去 ref模型在同等条件下的velocity,两者做平方误差
本质上就是在每一个 flow / denoising step 里,约束当前模型预测的更新方向,不要偏离参考模型太远。即把那个1 / sigma_t^2的权重扔掉,让每一步的约束变得均匀,防hacking
这个里面还有个亮点,就是think
那think在里面是怎么用的,起到什么作用
首先了解这个里面的think是什么
Prompt -> Thinking -> Image
这个里面think不是附属产物,而是作为算法里面的中间变量
先生成 think,再用它来生成图像,也再用最终图像奖励反过来优化它
下图的y 就是完整的 reasoning trace
[图片]
think = 模型在正式出图前生成的一段中间推理文本 / prompt 扩展文本
那think的作用是什么?
(1) 它先把用户 prompt 展开成更适合生图的中间表示
给定 prompt c,模型会先采样 G 条 reasoning chains {y_i},然后每条 y_i 再去条件化生成对应的 image trajectory {x_i}
所以第一层作用:把原始 prompt 补充、拆解、重写成更适合图像模型执行的描述。
(2)作为后续图像生成的条件输入之一
所以他可以控制后续图像轨迹,算是图像策略的一个条件变量
(3)它承担 credit assignment:让最终图像奖励能反向塑造 thinking
先得到 reasoning chains,再生成 image trajectories,然后根据这些完整多模态轨迹的终点奖励算 advantage,最后用统一目标 J = J_text + λJ_flow 更新(稀疏终点奖励,即图像完全生成后才给 R(x0, c))
所以模型能学到哪种think有利于把图画对
作为文本和图像的桥梁
局限性
现有这种方案还是有局限性的,当前 UniGRPO 只依赖最终图像上的稀疏终端奖励,所以可能归因不明确,即导致模型“即使 reasoning 有缺陷,也可能生成高质量图像
所以可以引⼊多模态过程奖励模型(PRMs),对中间推理步骤提供密集反馈。通过在⽣成图像之前验证⽣成的“thinking”是否在逻辑上成⽴且与视觉意图⼀致,我们可以进⼀步提⾼ RL 训练的样本效率并确保模型决策过程更具可解释性。
以下是AI总结的,参考即可
UniGRPO 详细讲解:它是什么、和传统 GRPO 有什么区别、优势在哪里
- 一句话先讲明白
UniGRPO 可以理解成:
把“先想一想(文本推理)再画出来(图像生成)”这个完整过程,统一看成一个强化学习问题,然后同时优化“思考过程”和“出图过程”。
传统 GRPO 主要是给 离散 token 序列 做优化,典型场景是 LLM 推理;
而 UniGRPO 把这个思路扩展到了 文本 + 图像的统一多模态生成,并且把 Prompt -> Thinking -> Image 作为一个单一 MDP 来训练。
- 先回顾:传统 GRPO 到底是什么
论文里把传统文本 GRPO 作为 UniGRPO 的一部分基础。
2.1 GRPO 的核心思想
GRPO(Group Relative Policy Optimization)的关键点是: - 对同一个输入,采样出一组候选答案。
- 不单独训练一个 value model。
- 而是直接在组内做相对比较,得到 advantage。
- 再像 PPO 一样做 clipped policy optimization。
也就是说,它用“组内相对好坏”代替“单独学一个价值函数”。
论文中给出的组相对优势是:
A_hat_i = (R_i - mean(R_1, …, R_G)) / std(R_1, …, R_G)
含义是:
- R_i:第 i 个样本的奖励
- mean(…):这一组样本的平均奖励
- std(…):这一组样本奖励的标准差
所以本质上,GRPO 不是看“你绝对有多好”,而是看“你比同组其他答案好多少”。
2.2 传统文本 GRPO 优化什么
在纯文本场景里,动作就是 下一个 token。
也就是说,LLM 每一步都在做:
a_k^txt ∈ Vocabulary
状态则是:
s_k^txt = (prompt c, 已生成的前缀 y_<k)
然后通过 clipped importance ratio 去优化整条生成轨迹。论文里的文本目标写成:
J_text(theta)
= (1 / G) * sum_i [ (1 / |y_i|) * sum_k
( min(r_i,k * A_hat_i, clip(r_i,k, 1-eps, 1+eps) * A_hat_i)
- beta_txt * D_KL(pi_theta || pi_ref) ) ]
其中重要性比率是:
r_i,k
= pi_theta(y_i,k | y_i,<k) / pi_theta_old(y_i,k | y_i,<k)
这部分其实就是“标准 GRPO for text”。
- UniGRPO 在做什么:从“只优化语言”变成“联合优化语言 + 图像”
UniGRPO 的核心创新,不是简单把 GRPO 套到图像上,而是:
把文本推理和图像生成放进同一个强化学习框架里,统一算 credit assignment。
论文明确把整个过程定义为:
Prompt -> Thinking -> Image
并把它整体建模成一个 Markov Decision Process(MDP)。
- UniGRPO 的 MDP 是怎么定义的
这是这篇论文最关键的地方。
4.1 状态空间
分成两个阶段。
文本阶段:
s_k^txt = (c, y_<k)
也就是:
- c:用户输入 prompt
- y_<k:当前已经生成的思考 token
图像阶段:
s_k^img = (c, y, x_tk, t_k)
也就是: - c:原始 prompt
- y:已经生成完成的 thinking / reasoning
- x_tk:当前时刻的 noisy latent
- t_k:当前 flow 时间步
这就意味着:图像生成不是只看 prompt,而是显式依赖前面生成出来的 reasoning。
4.2 动作空间
传统 GRPO 只有文本 token 这种离散动作。
UniGRPO 有两类动作:
文本动作(离散):
a_k^txt ∈ Vocabulary
图像动作(连续):
a_k^img = x_(t_k - Δt) ∈ R^d
也就是下一步 denoised latent。
4.3 转移 - 文本阶段:把新 token append 到序列后面
- 图像阶段:latent 从 x_tk 更新到 x_(t_k-Δt)
4.4 奖励
论文采用的是 稀疏终点奖励(sparse terminal reward):
R = R(x_0, c)
只有当图像完全生成完,也就是得到最终图像 x_0 后,才给奖励;
中间 thinking token、图像中间 denoising step 都没有即时奖励。
- UniGRPO 的算法流程
可以把它理解成下面 6 步:
Step 1:输入用户 prompt
比如:
“A dog reading a book”
Step 2:先采样多条 reasoning
对同一个 prompt,模型先生成一组 thinking chain:
y_1, y_2, …, y_G
每条 thinking 都可能把 prompt 展开成不同风格、构图、细节方向。论文图 1 就是这个意思。
Step 3:每条 reasoning 再去条件化图像生成
对于每个 y_i,同一个 unified model 再去生成对应图像轨迹:
x_i
也就是说:
- thinking 不只是“解释给人看”
- 它会真实进入后面的生成条件里
Step 4:对最终图像打分
只在整张图生成完以后,用 reward model / verifier 打一个终点分数:
R_i = Reward(x_i, c)
论文强调:虽然实验里为了公平对比用了可微分 reward,但 UniGRPO 理论上并不要求 reward 必须可微,也可以接黑盒 verifier。
Step 5:组内算 advantage
还是用 GRPO 的组相对优势:
A_hat_i = (R_i - mean(R_1, …, R_G)) / std(R_1, …, R_G)
但注意此时这个 A_hat_i 不是只回传给文本,也会同时影响图像部分。
Step 6:同时更新文本策略和图像策略
最终联合目标是:
J = J_text + lambda * J_flow
论文里实验固定:
lambda = 1
也就是文本 reasoning 和图像 synthesis 同权重联合训练。
- UniGRPO 和“传统 GRPO”最本质的区别
一句话总结:
传统 GRPO 是“让模型更会说”;
UniGRPO 是“让模型先更会想,再把这个想法真正变成更好的图”。
- UniGRPO 不只是“多模态版 GRPO”,它还做了两件关键改造
论文反复强调:真正让它能扩展到未来交错式多轮生成的,不只是统一目标,还有两处专门改造。
- 改造一:训练时去掉 CFG(Classifier-Free Guidance)
8.1 传统 flow / diffusion 里 CFG 的问题
标准图像生成里,CFG 很常见。
但 CFG 需要每一步至少做两次模型评估: - conditional
- unconditional
如果是多条件任务(比如图像编辑),还会变成更多次。
论文指出,多条件生成时至少可能要三次评估;再叠加多轮 text-image 交错生成,计算和显存会爆炸,而且会产生 分叉的 computation graph,让 RL 梯度估计很麻烦。
8.2 UniGRPO 的做法
论文直接选择:
训练时完全不使用 CFG
只保留 线性、无分叉 rollout。
8.3 这和传统 GRPO 的区别
传统文本 GRPO 根本没有 CFG 这个问题。
UniGRPO 因为进入了 flow matching 图像生成,所以必须处理这一层“多分支采样图”的复杂性。
8.4 这样做的好处
作者的逻辑是:
- 虽然去掉 CFG,通常会损失 prompt adherence
- 但 RL 本身就在显式最大化“图文对齐 + 质量”的奖励
- 所以模型可以把这种对齐能力“内化”进参数里,而不是依赖推理时 CFG 硬拉回来
这个思路非常重要,因为它是在为 未来多轮、多条件、交错生成 预埋可扩展性。
8.5 论文实验结论
消融实验显示:
训练时去掉 CFG,最终评测时即使加上 CFG,性能依然相当甚至更好。
论文据此认为:RL 对齐训练里,CFG 不是必须的,昂贵的 branched rollout 可以省掉。
- 改造二:不用 latent KL,改用 velocity MSE 正则
9.1 问题背景
在 flow matching / diffusion RL 里,大家通常会加一个 KL 正则,避免策略跑飞、避免 reward hacking。
但论文指出:
如果按标准做法在 latent transition 上加 KL,这个 KL 实际上会带一个 和噪声方差相关的时间步权重,可以理解为近似:
local KL ~ ||v_theta - v_ref||^2 / sigma_t^2
问题是:
- 在高噪声阶段,sigma_t^2 大
- 那么正则项就会变得很小
- 导致某些时间步约束太弱
- RL 优化器就可能钻空子,出现 reward hacking
也就是:不同时间步的约束强弱不一致。
9.2 UniGRPO 的做法
论文直接去掉这种时间步依赖权重,改成在 velocity field 上做均匀 MSE 约束:
L_MSE(theta) = || v_theta(x_tk, t_k, y) - v_ref(x_tk, t_k, y) ||^2
注意这里对比的是: - 当前 RL 微调后的 velocity field
- 参考预训练模型的 velocity field
9.3 直觉理解
这相当于说:
我允许你为了 reward 去微调生成轨迹,
但你每个时间步都不能偏离原始生成动力学太远。
比 latent KL 更“直接”,也更“均匀”。
9.4 为什么这比传统 GRPO 多出来
传统文本 GRPO 的主要对象是离散 token 分布。
它的 KL 正则问题没有 flow matching 这么强的“时间步异质性”。
而 UniGRPO 一旦进入 flow 模型,就必须面对: - 连续时间
- 不同噪声阶段
- SDE/ODE 混合采样
- reward hacking 更容易躲在某些时间段里
所以 velocity MSE 其实是 专门为 flow-policy RL 稳定性设计的。
9.5 论文实验结论
消融结果很明确: - 不加正则:validation reward 先升后掉,图像出现 unnatural / oversaturated textures
- latent KL:即使训练 reward 降得很多,依然很快出现 grid-like artifacts
- velocity MSE:训练更稳,图像质量最好,纹理更真实
也就是说,作者的结论不是“略有提升”,而是:
velocity MSE 明显比 latent KL 更能防 reward hacking。
- 它和原始 FlowGRPO 的区别是什么
严格说,UniGRPO 不是只和“传统文本 GRPO”对比,
它还在 FlowGRPO 的基础上做了升级。论文自己也是这么定义的。
10.1 FlowGRPO 解决什么问题
FlowGRPO 是为 flow matching 模型做 RL 的方法。
它通过把确定性的 ODE 采样改写成带噪声的 SDE 采样,让 RL 里有 exploration。
并且配合 RatioNorm,修正 importance ratio 在 diffusion/flow 场景中的偏移问题。
10.2 UniGRPO 在它基础上增加了什么
UniGRPO = - 文本 GRPO
- FlowGRPO
- 统一到同一个 MDP
- 统一用同一组终点奖励回传
- 训练时去掉 CFG
- latent KL -> velocity MSE
所以如果你要一句话描述它和 FlowGRPO 的关系,可以写成:
UniGRPO = 把 FlowGRPO 从“只会优化图像生成”升级到“同时优化 reasoning 和图像生成”的统一多模态版本,并额外做了两处面向可扩展性的训练改造。
- UniGRPO 的优势到底在哪里
下面分成算法层面、建模层面、工程层面、实验层面四类来说。
- 优势一:真正把 reasoning 变成“有用的中间变量”
很多模型虽然会输出 ,但 thinking 只是“说了很多”,不一定真的帮助最终任务。
论文里一个很重要的观察是:
- Bagel 和 SFT 也会生成比较长的 reasoning
- 但这些 reasoning 可能冗长、失焦,和视觉任务并不紧密耦合
- UniGRPO 通过最终图像 reward 反向约束 thinking,使 reasoning 更 task-oriented、更贴近出图目标
这点很关键。
因为传统 GRPO 优化的是“答案更对”;
UniGRPO 优化的是“思考更能帮助画图”。
也就是说,它不是鼓励思维链“更长”,而是鼓励思维链“更有用”。
- 优势二:统一 credit assignment
传统做法经常是两段式: - 先训练文本 prompt rewrite / reasoning
- 再单独训练图像模型
这种做法的问题是:
- 文本模块和图像模块目标不完全一致
- 上游生成的 prompt 不一定真对下游图像最优
- credit assignment 被截断了
UniGRPO 则是:
终点奖励统一回传到 thinking 和 synthesis 两边。
这样模型能学到: - 什么样的思考是有价值的
- 什么样的图像轨迹更能兑现这些思考
这是它比“先想后画但分开训练”更强的根本原因。
- 优势三:天然适合交错式多模态生成
论文虽然只验证了单轮 Prompt -> Reasoning -> Image,
但作者的目标非常明确:把它作为未来 multi-round interleaved generation 的基础。
为什么 UniGRPO 比传统 GRPO 更适合这个方向?
因为它已经把问题定义成:
- 同一个策略
- 同一个 MDP
- 同时处理离散动作和连续动作
- 同一个 reward 驱动
这意味着未来可以自然扩展到: - 图像编辑
- 多轮对话式作图
- 视觉故事生成
- 文本与图像来回交错的复杂任务
传统 GRPO 并没有这个建模能力,它只擅长纯文本 rollout。
- 优势四:训练更稳定,能更好抑制 reward hacking
从实验上看,作者非常强调稳定性优势。
15.1 和不做联合优化比
UniGRPO 同时优化 reasoning + synthesis,优于只优化其中一侧。
论文主表里:
- FlowGRPO、TextGRPO 都有提升
- 但 UniGRPO 更高
- 说明联合优化比单边优化更有效
15.2 和 UniFPO 比
论文里 UniFPO 直接训练崩掉了,而 UniGRPO 成功收敛。
作者用这个结果强调:GRPO-based unified formulation 更稳定。
15.3 和 latent KL 比
velocity MSE 在图像质量和训练稳定性上都更好。
这说明 UniGRPO 不是“概念上统一”,而是把真正会导致训练不稳的部分也处理了。
- 优势五:结果上确实更强
主结果表中,UniGRPO 达到:
TA Score = 0.8381
GenEval = 0.90
对比:
- FlowGRPO(无 thinking):0.8112 / 0.88
- FlowGRPO(有 thinking):0.8208 / 0.86
- TextGRPO:0.8078 / 0.88
- ReFL 等方法更低
- UniFPO collapse
这说明:
- 单纯加 thinking 不一定有用
- 单纯优化文本或图像也不够
- 必须让 thinking 和 image 在同一个 reward 下联合优化
这正是 UniGRPO 的核心价值。
- 你可以把它概括成三个“统一”
我建议你记这三个统一,很容易讲给别人听。
统一一:统一轨迹
不是“文本一套算法,图像一套算法,各干各的”,
而是把 Prompt -> Thinking -> Image 看成一条完整轨迹。
统一二:统一奖励
最终只看图像结果,但 reward 同时塑造 thinking 和 image policy。
统一三:统一优化
目标函数直接写成:
J = J_text + lambda * J_flow
文本和图像一起更新。
- 这篇论文相对于“传统 GRPO”的真正创新点,最简版总结
如果面试里要 30 秒讲清楚,可以直接说这段:
传统 GRPO 主要优化纯文本生成,用组内相对奖励来替代 value model。
UniGRPO 把这个思想扩展到了“先推理、再生成图像”的统一多模态场景:
它把 Prompt -> Thinking -> Image 建模成一个单一 MDP,
同时优化离散文本动作和连续图像 latent 动作,
并用同一个终点图像奖励同时训练 reasoning 和 synthesis。
此外,它为 flow matching 场景专门做了两点改造:
训练时移除 CFG 以保持线性 rollout,
以及用 velocity MSE 取代 latent KL 来更稳地抑制 reward hacking。
- 这篇方法的局限性
论文自己也承认,它不是没有限制。
19.1 目前只验证了单轮
虽然目标是多轮 interleaved generation,
但当前实验只做到:
Prompt -> Reasoning -> Image
还没有真正做多轮文本-图像交替闭环。
19.2 奖励仍然是稀疏终点奖励
reward 只看最终图像,
这意味着 reasoning 的 credit assignment 仍然不够细。
作者也提到未来希望引入 multimodal process reward models,对中间 reasoning 步骤给更密集的反馈。
19.3 论文场景仍偏“reasoning-driven visual generation”
它展示了一个很强的 baseline,
但离“完全通用的 unified interleaved model post-training”还有距离。
- 最后给你一个结论版
结论
UniGRPO 相比传统 GRPO,最大的不同不是“能处理图像”这么简单,而是它把文本推理和图像生成统一进了同一个强化学习闭环。
它的核心价值在于: - thinking 不再只是可读解释,而是会被最终图像 reward 真正约束
- 文本和图像共享 credit assignment
- 为未来多轮、多条件、交错式生成提供了可扩展训练框架
- 通过去 CFG 和 velocity MSE,解决了 flow-based RL 中的工程复杂性和 reward hacking 问题
- 实验上联合优化确实优于只优化文本或只优化图像
所以一句话评价它:
UniGRPO 是把“LLM 的 GRPO 思路”真正升级到统一多模态生成中的一个关键步骤。
更多推荐


所有评论(0)