VL-Rethinker
通过强化学习激励视觉-语言模型进行自我反思,MathVista达80.3%开源SOTA
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
通过强化学习激励视觉-语言模型进行自我反思,MathVista达80.3%开源SOTA
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。

图1:VL-Rethinker 概览 — 通过强化学习激励 VLM 进行自我反思
当你做数学题卡住时,是不是会停下来回顾一下哪里想错了?这种"回头看"的能力,GPT-o1 和 DeepSeek-R1 在纯文本领域已经做到了。但同样的事情放到图像理解里——比如看图表推理、结合图文答题——这些模型的表现却几乎和"快思考"模型没什么差距。香港科技大学和 TIGER 实验室的这项研究,正是想解决这个痛点。
2023 年以来,"慢思考"系统(Slow-Thinking)横扫了数学和代码基准测试。GPT-o1 在 AIME、MATH 等纯文本任务上领先 GPT-4o 超过 20 个百分点。然而,一遇到视觉语言模型(VLM),这个优势就消失了。在 MathVista、MathVerse、MathVision 等多模态推理基准上,GPT-o1 的表现和普通的"快思考"模型几乎持平。
香港科技大学和 TIGER 实验室的研究团队在论文中指出了核心问题:GPT-o1 在视觉推理上"慢"不起来。原因并非多模态模型不够强大,而是缺乏有效的机制激励它们像文本推理那样进行自我反思和验证。蒸馏 GPT-o1 的思路也不理想——它本质上是"抄答案"而非"学会反思"。
VL-Rethinker 提出了两套互补的技术方案,来激励 VLM 的自我反思能力。
在大规模数据上训练 72B 参数模型时,团队发现了一个棘手现象——"优势消失"(Vanishing Advantages):模型在大量样本上已经表现不错,梯度信号变得极其微弱,有效训练样本迅速枯竭。这与 DAPO 论文的发现不谋而合。
DAPO 从梯度稳定性角度出发,过滤掉低效样本。VL-Rethinker 则采用了主动学习的思路——借鉴优先经验回放(Prioritized Experience Replay),根据样本的信息量重新排序:那些靠近模型能力边界的样本(即模型"差一点就能做对"的问题)信息量最大,正确利用它们可以把训练效率推向极致。SSR 的实现代码在 openrlhf/trainer/ppo_utils/active_sampling() 中。
光有好的训练样本还不够。团队发现,即使有高质量数据,RL 训练出来的模型自我反思和自我验证行为依然有限——模型倾向于直接给出答案,而非停下来重新审视推理过程。
Forced Rethinking 的思路很巧妙:在 RL 训练的初始 rollout 末尾,强制附加一个文字触发词(如 "Let me re-examine this"),显式地引导模型在给出最终答案之前,先进行一步自我反思。这相当于给模型的思维链安装了一个"暂停键",让它养成回头检查的习惯。
VL-Rethinker 的训练框架基于 OpenRLHF——一个基于 Ray 的高性能 RLHF 框架,底层依赖 DeepSpeed 进行分布式训练。整体架构模块化程度很高:
| 模块 | 核心文件 | 功能 |
|---|---|---|
| 训练入口 | cli/train_ppo_ray.py | Ray 分布式 PPO 训练主入口,支持多节点多卡 |
| Actor 模型 | models/actor.py | VLM Actor,支持 LoRA/Peft 适配器微调 |
| PPO Trainer | trainer/ppo_trainer.py | 核心 RL 训练循环,集成 SSR 逻辑 |
| 评估器 | trainer/evaluator.py | 多基准自动评估(MathVista 等) |
| 数据集 | datasets/ | ViRL39K 数据集加载与预处理 |
| 推理引擎 | vLLM >= 0.7.2 | 高效批量推理与奖励计算 |
基座模型采用 Qwen2.5-VL(7B 和 72B 两个尺寸),通过 transformers 库(从 main 分支构建)加载,依赖 qwen_vl_utils 进行视觉 token 处理。训练支持 DeepSpeed ZeRO-3 分片和多节点 Ray 集群,显存要求极高:单卡 7B 模型至少需要 40GB 显存,72B 模型则需要 8 卡 A100/H100 集群。
高质量的数据是 RL 的灵魂。ViRL39K 数据集包含 39,000 条经过严格质量控制的视觉问答样本,覆盖 8 大类别:从中小学数学题到更广泛的 STEM 和社会学科,涵盖图表、图解、表格、文档、空间关系等多种视觉形态。每条数据都配有可规则验证的答案,确保 reward 信号可靠。此外,数据集还提供了细粒度的模型能力标注,方便按模型规模选择训练子集。
VL-Rethinker 的核心成果是一组经过 RL 微调的模型:
在三大视觉推理基准上,72B 模型取得了突破性成绩:
| 基准 | VL-Rethinker-72B | GPT-o1 | GPT-4o |
|---|---|---|---|
| MathVista | 80.3% | ~80% | ~60% |
| MathVerse | 61.8% | ~60% | ~40% |
| MathVision | 43.9% | ~42% | ~30% |
除了数学视觉基准,VL-Rethinker 在跨学科多模态基准上同样表现突出:在 MMMU-Pro、EMMA、MEGA-Bench 等基准上实现了开源模型最高分数(open-source SOTA),与 GPT-o1 的差距大幅缩小。
实事求是地说,VL-Rethinker 的部署难度相当高。团队提供的安装流程(installation.md)需要:
pip install -e .[vllm]),依赖 vLLM 推理引擎、DeepSpeed、Ray 等重型依赖推理阶段相对友好一些——vLLM >= 0.7.2 可以高效批量推理,HuggingFace 上也提供了预训练好的 7B 和 72B 模型权重,可以直接加载使用。HuggingFace Spaces 上还有在线 Demo 供快速体验。
论文团队在 GitHub README 中坦诚列出了几个未完成模块:inference and evaluation code 标注为"进行中",意味着目前代码库主要提供训练代码,复现完整评估流程需要一定额外工作。此外,Forced Rethinking 中的触发词(rethinking trigger)目前是手工附加的,自动化程度有提升空间。72B 模型的训练还需要多节点 GPU 集群,普通研究者难以复现。
VL-Rethinker 的价值不只在于刷榜。它证明了通过纯 RL(不蒸馏)可以让视觉-语言模型真正学会"慢思考",这对未来多模态 AI 的发展路径有重要启示:
从 Stars 增长曲线看,该项目自 2025 年 4 月发布以来稳定增长,随着 NeurIPS 2025 会议临近(论文已中稿),关注度有望进一步上升。它代表了一个明确趋势:多模态推理的下一步,是让模型学会自己审视自己的视觉理解过程,而不只是被动地生成答案。