一句话结论
换句话说,它把 LongPT(Long-context Continued Pre-Training,长上下文继续预训练)从一个“算力和窗口长度故事”变成一个“训练任务设计故事”。如果只看推文里的 128K、512K、5B tokens,容易误读为这是一个 context scaling 工程;读完论文后更准确的理解是:作者在回答“5B token 这样相对有限的预算下,什么样的数据最值得喂给 LVLM”。
来源与当前发布状态
- X 主帖:Zhaowei Wang 发布 MMProLong,称从 Qwen2.5-VL-7B 出发,将 context window 从 32K 扩到 128K,并在 256K/512K 上无需额外训练保持表现;回复中说明 code、model、data will be released soon。
- 短链解析:推文中的论文链接指向 Hugging Face Papers 页面
https://huggingface.co/papers/2605.13831。 - 论文原文:arXiv HTML 与 PDF 已核验;PDF 元数据为 29 页,标题和作者与 HF 页面一致。
- Artifact 状态:本次核查 GitHub Search API、Hugging Face models/datasets/spaces API,未发现公开的
MMProLong模型、数据集或代码仓库条目;因此这里将复现性判断标为“尚待发布”,不是永久性结论。
论文要解决什么问题
过去 LVLM 的长上下文能力很容易被包装成“支持多少 K token”的规格,但真正难点有三层:第一,模型能不能在长文档、长网页、长视频里保持位置感;第二,能不能从大量干扰信息中定位少数证据;第三,能不能把证据按用户问题组织成答案,而不是只会 OCR 或复述局部内容。
窗口长度不是能力本身
把 RoPE/mRoPE 改到更长只能让模型“形式上可以接收”更长输入,但不保证它真的会在长距离上找证据。
长文档训练配方不透明
很多强模型只在 technical report 里简略描述数据,缺少受控实验告诉我们到底哪类数据有效。
预算有限
作者固定每次 LongPT 为 5B tokens,所以问题变成:同样预算下,应该合成什么任务、怎么混合、怎么分配长度。
方法:数据怎么从 PDF 变成 LongPT 样本
1. 构建文档池
作者先收集超过 153 万份 PDF 文档,覆盖论文、书籍、技术手册,以及工程、医学、社科、生物等领域。训练合成时主要选择 32 到 50 页的文档,因为在 Qwen2.5-VL 的视觉 token 化设定下,这类文档大致形成 32K 到 128K 的多模态 token 序列。为降低 benchmark contamination,论文还用 PDF 内容 SHA-256 hash 过滤可能与评测重叠的样本。
2. 渲染 PDF,并用 OCR expert 解析结构
PDF 每页用 PyMuPDF 以 144 DPI 渲染成图片。然后用一个由 Seed 2.0 微调出的 OCR expert 把页面解析成 layout-aware blocks:标题、章节、段落、表格、图注、页眉页脚等。这一步有两个作用:标题/章节用于抽取语义连贯的页段;识别出的文本块用于构造 OCR transcription baseline。
3. 生成长文档 VQA,不是直接问整篇文档
- 先从完整文档中采样一个 8 到 15 页的连续章节片段。
- 把这个短片段的页面图片喂给 Seed 2.0 作为 QA generator,生成问题、答案、证据描述和证据页。
- 再把 QA pair 放回原始完整文档,形成一个长上下文训练样本。
4. 三类 VQA 任务对应三种能力
| 任务 | 训练目标 | 模型实际要学什么 |
|---|---|---|
extract-single | 单页事实抽取 | 在长文档中定位一页,并读出明确事实、实体、日期、数值或列表。 |
extract-multi | 多页事实聚合 | 跨多个页面找到证据,合并多个事实点。 |
reasoning | 轻量计算/比较/计数 | 先检索至少两个证据,再做求和、差值、比较、计数等操作。 |
5. OCR transcription 被作为对照
OCR transcription 分两类:OCR-full 要转录所有页面,OCR-needle 只转录少数目标页、其余页面作为干扰。这个对照很重要,因为它测试一个常见假设:让 LVLM 大量做 OCR,会不会自然获得长上下文能力?论文的答案是否定的,至少在他们的下游长文档 VQA 评估上不是好路线。
最终训练配方
| 模块 | 配置 | 为什么这么选 |
|---|---|---|
| 初始化模型 | Qwen2.5-VL-7B-Instruct,原始 32K context | 作为 7B 级开源基座,便于做受控 LongPT 实验。 |
| 目标窗口 | 131,072 tokens,即 128K | 训练窗口扩展目标;后续额外测试 256K/512K 外推。 |
| mRoPE base | 从 1 x 10^6 调到 4 x 10^6 | 遵循 Dynamic-NTK 风格的中等幅度位置频率缩放;8 x 10^6 并不稳定更好。 |
| 长数据 | 40% extract-single,40% extract-multi,20% reasoning | 8:2 extraction-to-reasoning 最优;长上下文瓶颈主要是检索,少量推理保持任务多样性。 |
| 长度分布 | pool-native,从文档池自然采样 32K-128K | 比刻意偏向 100K+ 的 long-biased 更稳,说明模型需要跨长度/跨位置校准。 |
| 短数据 | 默认不混短上下文数据 | 纯长文档 VQA 基本保留短上下文能力;若特别关注短能力,可考虑 40% LLaVA-OneVision。 |
| 优化 | AdamW,peak LR 1e-5,cosine 到 1e-6,10% warmup | 固定 5B token budget、4M token global batch,保证 ablation 对比公平。 |
| 工程 | VeOmni + FlashAttention,Ulysses SP=2,FSDP=4 | 在长序列训练下节省显存并提高吞吐;主训练使用 8 个 H20 节点。 |
到底评估了什么
这篇论文的评估重点不是“模型是否真的会使用 512K 任意上下文完成所有任务”,而是更具体地测几个能力面:长文档 VQA、网页 haystack 中的多模态 needle、视觉-文本压缩、长视频理解,以及短上下文能力是否退化。
| 评测 | 输入/输出 | 指标怎么理解 | 注意事项 |
|---|---|---|---|
| MMLongBench document category | 长 PDF/网页/slide 视觉上下文 + 问题;输出文本答案 | 按子任务使用 exact match、soft accuracy、multiple-choice accuracy;简单答案用 LLM 二分类 judge,列表答案算覆盖 F1;AVG 是三个数据集宏平均。 | 核心主评测,包含 64K/128K,另扩到 256K/512K。 |
| MM-NIAH | 网页 haystack,插入 text/image needles;输出检索、计数或推理答案 | 先平均 text/image needle,再对 retrieval/counting/reasoning 做宏平均。 | 更像“长上下文定位能力”压力测试,不是文档 QA 同分布。 |
| VTCBench-Wild | 压缩后的视觉-文本长上下文;输出检索/推理/记忆答案 | Retrieval 和 Reasoning 用 containsAll accuracy,Memory 用 gpt-4o-mini 判分,Overall 是样本数加权。 | 能看出是否保留压缩视觉上下文中的信息。 |
| Video-MME / MLVU / LongVideoBench | 1fps 视频帧,最多 768 帧,总 video tokens 不超过 24,576 | 多选准确率或对应 benchmark 平均准确率。 | 不是训练目标,属于零样本迁移。 |
| 短上下文 benchmark | MMBench、RWQA、MMMU、MMMU-Pro、MathVista、OCRBench | 六项平均。 | 用于检查 LongPT 是否破坏原模型一般 VLM 能力。 |
关键结果和数字
1. VQA 数据明显优于 OCR transcription
| 训练数据 | Overall AVG | 相对 Qwen2.5-VL-7B | 解读 |
|---|---|---|---|
| Qwen2.5-VL-7B | 50.59 | - | 32K 原模型在 128K 上有明显退化。 |
| extract-single | 55.69 | +5.1 | 单页检索训练已经有效。 |
| extract-multi | 56.90 | +6.3 | 多页聚合是最强单任务。 |
| reasoning | 56.47 | +5.9 | 推理任务也有效,但单独使用不如混合。 |
| OCR-full | 33.17 | -17.4 | 密集转录与下游指令 QA 不对齐。 |
| OCR-full + 额外 5B SFT | 53.84 | +3.2 | 加 SFT 后恢复一些,但成本更高且仍弱于 VQA。 |
2. 最好的任务混合是偏检索,不是全推理
extraction-to-reasoning 从 0:10 到 10:0 网格搜索,最佳是 8:2,整体 AVG 为 57.70。6:4 也较好,为 57.27。这个结果的含义很直接:在长上下文 LVLM 里,推理常常不是第一瓶颈,先找到证据才是瓶颈;但完全不要 reasoning 也不是最好,因为任务多样性会下降。
3. 不必把训练样本刻意堆到 128K 附近
long-biased 分布里约 83.9% 样本超过 100K tokens;pool-native 只有约 23.5%-23.6% 超过 100K。结果 pool-native 在 extract-single 和 reasoning 上明显更好,extract-multi 基本持平。这说明模型需要学的是跨不同绝对位置、相对距离和长度的检索校准,而不是只适配接近上限的窗口。
4. MMProLong 在主评测上提升明显,但没有超过最强闭源/大模型
| 模型 | 64K AVG | 128K AVG | Overall AVG |
|---|---|---|---|
| Qwen2.5-VL-7B | 52.24 | 48.94 | 50.59 |
| MMProLong | 59.56 | 55.84 | 57.70 |
| Qwen2.5-VL-32B | 60.55 | 56.08 | 58.31 |
| Qwen2.5-VL-72B | 62.81 | 58.85 | 60.83 |
| Gemini-3.1-Pro | 83.55 | 83.77 | 83.66 |
所以“显著”的正确读法是:对 7B 基座和同级开源模型显著,对大参数开源模型具有竞争力,但不是 SOTA 闭源级别能力。
5. 128K 训练后能外推到 256K/512K,但评估方式有边界
| 模型 | 256K AVG | 512K AVG | Overall AVG |
|---|---|---|---|
| MMProLong | 55.09 | 52.52 | 53.80 |
| Qwen2.5-VL-7B | 38.12 | 19.49 | 28.80 |
| Gemma3-12B | 47.37 | 23.51 | 35.44 |
这是强结果,但要注意:256K/512K 样本是按 MMLongBench 方法通过左右填充随机负文档扩展长度,核心问题未必天然需要利用 512K 全部信息。它更像在测抗干扰和位置外推,不等价于证明模型可以稳定完成任意 512K 多证据任务。
6. 泛化任务显示学到的不只是文档 VQA 模板
| 任务 | Qwen2.5-VL-7B | MMProLong | 变化 |
|---|---|---|---|
| MM-NIAH 64K AVG | 27.83 | 56.61 | +28.78 |
| MM-NIAH 128K AVG | 12.17 | 42.28 | +30.11 |
| VTCBench Overall | 48.23 | 52.73 | +4.50 |
| Video-MME | 65.10 | 67.78 | +2.68 |
| MLVU | 70.20 | 73.55 | +3.35 |
| LongVideoBench | 60.43 | 62.08 | +1.65 |
MM-NIAH 的提升最大,符合“检索是核心瓶颈”的解释;视频任务提升较小但一致,说明 LongPT 学到了一些跨模态长上下文稳定性,但不应夸大成专门的视频模型突破。
局限和容易误读的地方
1. 复现性暂时不足
推文说代码、模型、数据 soon release;本次未找到公开 artifact。现在只能评价论文结果和方法逻辑,不能独立复现实验。
2. 主要规模是 7B/8B
论文自己也承认,30B/70B 或 1M context 的趋势是否保持还没系统验证。
3. 512K 不是自然长任务全覆盖
512K 评估通过填充负文档扩展,主要测抗干扰/外推,不代表所有 512K 多跳任务都解决了。
4. 数据生成依赖强 teacher
Seed 2.0 既做 OCR expert 基础,又做 QA generator;如果换 weaker teacher,数据质量和结论可能变化。
我的判断
因此,MMProLong 的配方有一个很实际的工程启发:如果你要做自己的长文档/长网页/长视频 LVLM,不要第一反应就是堆超长样本、堆 OCR、堆 reasoning。更稳的起点是构造带证据锚点的 QA,让模型在完整长上下文里反复练习“定位少数关键证据 -> 聚合 -> 回答”。长度分布也要覆盖不同位置和不同距离,而不是只冲目标最大长度。
我认为这篇论文的结果是实践上有意义的:5B token 把 7B 模型从 50.59 提到 57.70,并且在 256K/512K 抗干扰上保持优势,这不是小修小补。但它的 claims 需要按范围理解:它证明的是一种数据高效的 LongPT recipe,而不是证明一个 7B LVLM 已经拥有通用、可靠的 512K 多模态推理能力。
本次核验命令摘录
opencli twitter thread "https://x.com/ZhaoweiWang4/status/2054832914677055819" --limit 80 -f json
curl -Ls -o /dev/null -w "%{url_effective}\n%{http_code}\n" "https://t.co/DrnfDU97Tf"
curl -L "https://arxiv.org/pdf/2605.13831" -o "/tmp/mmprolong_2605_13831.pdf"
pdfinfo "/tmp/mmprolong_2605_13831.pdf"
pdftotext -layout "/tmp/mmprolong_2605_13831.pdf" "/tmp/mmprolong_2605_13831.txt"
curl -fsSL "https://huggingface.co/api/models?search=MMProLong&limit=20"
curl -fsSL "https://huggingface.co/api/datasets?search=MMProLong&limit=20"