ARM-Thinker
Agentic多模态奖励模型,通过Think–Act–Verify循环自主调用工具验证证据,CVPR
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
Agentic多模态奖励模型,通过Think–Act–Verify循环自主调用工具验证证据,CVPR
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一个场景:你让一个AI视觉模型评价一张照片,它立刻给出了一个高分——但它真的看懂了那张照片吗?还是只是在猜测?
这就是当前**多模态奖励模型(Multimodal Reward Model)**的核心困境:它们在静态图像上打分,却从未真正「动手」验证过自己看到的东西。论文描述了一个令人不安的现象——**幻觉(hallucination)与视觉接地薄弱(weak visual grounding)**在大模型中普遍存在,因为它们的评分机制是被动的、单次性的,缺乏真正的理解和验证过程。
ARM-Thinker(Agentic Reinforced Multimodal Thinker)正是在这个背景下诞生的——它来自上海人工智能实验室(SI-Spawn)发表于 CVPR 2026 的最新研究,目标只有一个:让奖励模型学会像人类一样「动手验证」。

上图清晰展示了 ARM-Thinker 的核心创新:Think–Act–Verify 循环推理范式。与传统模型的单次评分不同,ARM-Thinker 能够自主拆解复杂问题、调用外部工具获取可验证证据,并基于这些证据给出最终判断。
传统多模态奖励模型的工作方式类似于「看图说话后立刻给分」——模型根据输入图像和文本描述,直接输出一个奖励分数。这个过程有两个致命缺陷:
ARM-Thinker 则采用 Agentic Think–Act–Verify 循环。模型不再一次性给出答案,而是先思考(Think),决定是否需要调用工具(Act),然后等待工具返回的证据(Verify),再继续下一轮推理。整个过程可以迭代多轮,直到获得足够的验证信息。
ARM-Thinker 的工具箱包含四大类,恰好覆盖了多模态推理中最具挑战性的场景:
| 工具类型 | 具体实现 | 解决的问题 |
|---|---|---|
| 图像缩放工具 | image_zoom_in_tool.py | 放大图像局部区域,验证细粒度视觉细节 |
| 文档检索工具 | doc_page_tools.py | 在长文档中定位答案,替代记忆 |
| 网页搜索工具 | web_search_tool.py(Serper API) | 获取最新外部知识 |
| 指令验证工具 | instruction_following_tool.py | 检查模型输出是否遵循给定指令 |
每个工具都遵循 Verl 风格的统一接口(BaseTool 基类 + Pydantic schema),工具注册系统(initialize_tools_from_config)支持从 YAML 配置动态加载。这意味着添加新工具只需要实现一个 Python 类,无需修改核心推理循环。
训练策略是 ARM-Thinker 另一个精妙之处。它没有简单地把所有目标混在一起优化,而是设计了两阶段 GRPO(Group Relative Policy Optimization):
这种分阶段设计解决了 RL 训练中常见的两个问题:训练-推理不一致(模型学会了调用工具但推理时不知道何时调用)和奖励漂移(reward hacking)。

基于 Qwen2.5-VL-7B 骨干网络,ARM-Thinker 在多个benchmark上展现了令人印象深刻的表现:
关键洞察:「动手验证」比单纯「增大模型规模」更有效。一个会主动验证的 7B 模型,可以超越一个盲目猜测的 72B 模型。
项目代码组织非常清晰,核心模块如下:
arm_agent/ — Agent 推理循环核心
agent_verl.py(~20KB):主导推理循环,支持单轮和多轮推理;集成了 OpenAI API 兼容接口,可对接 Qwen-VL 等模型system_template.py:对话模板管理,默认使用 Hermes 格式的工具调用模板utils.py:图片解码、路径生成等工具函数verl/ — 字节跳动 Volcano Engine 的 RL 训练框架 fork
tools/:工具实现(schema定义、基础类、各类具体工具)trainer/:GRPO/PPO 训练器实现workers/:分布式 rollout worker 管理eval_utils/ — 评测工具
ARM-Thinker 的意义远不止一个 SOTA 数字。它代表了一个重要方向转变:
从静态评分 → 主动验证:AI 评估不再是一个被动过程,而是一个有意识的、多步骤的推理行动。
从规模至上 → 能力驱动:实验证明,经过精细 RL 训练的 7B 模型可以打败靠规模堆砌的更大模型。这意味着 AI 的能力提升不只依赖「更大」,还依赖「更聪明」。
为 AI 安全奠基:当奖励模型能够主动验证证据时,它们对幻觉的免疫力会大幅提升。这对 AI Alignment(对齐)和 AI Safety(安全)领域有直接影响。
| 维度 | 结论 |
|---|---|
| 容器化支持 | ❌ 无 Dockerfile,无 docker-compose |
| Web 界面 | ❌ 无,提供纯 Python API |
| GPU 需求 | ✅ 必须,24GB+ VRAM(推理),80GB+(训练) |
| 依赖复杂度 | 高(vLLM 0.10.1.1、flash-attn、SGLang 等) |
| 文档质量 | 高(README 详细,工具模板清晰) |
适合人群:AI 研究者、RL/Agent 方向开发者、MLSys 工程师 不适合:想快速 Demo 的非技术人员、生产环境直接部署
安装方式:
# 仅推理(轻量)
conda create -n arm_thinker python=3.10 -y
pip install -e . --no-deps
pip install -r requirements_arm_agent.txt
# 完整训练
pip install -e .
pip install -r requirements_training.txt
ARM-Thinker 是一个将 Agent 能力引入多模态奖励建模的里程碑式工作。它证明了:通过主动调用外部工具进行验证,模型可以在复杂多模态任务上实现质的飞跃。两阶段 GRPO 训练框架设计精巧,工具生态模块化程度高,代码可扩展性良好。
如果你在研究 多模态推理、Agent 架构、强化学习在 VLMs 中的应用,这个项目值得深入研究。对于想快速体验的开发者,门槛较高——但对于研究者而言,这里的每一行代码都可能带来新的启发。