Back

流式 VLM 精读 8:MOSS-VL——边说边看的 L5 交互,门控交叉注意力与 XRoPE

本文是「流式视频理解 VLM 精读」系列第 8 篇,精读 MOSS-VL 技术报告(OpenMOSS / 复旦邱锡鹏团队,arXiv 2608.15045)。前两篇里,StreamingVLM 用训练-推理对齐解决"无限流",MiniCPM-o 4.5 用 Omni-Flow 解决"看听说并行"。MOSS-VL 提出并回答了最后一个台阶:模型在说话的同时还能不能继续看——看到证据变了就立刻改口。他们称之为 L5,并用一套从架构到数据到训练课程的协同设计把它做了出来。

L1-L5:先给"实时"画出能力阶梯

这篇报告最有传播度的贡献,是一张五级能力分级表(Table 1),把"视频理解"从离线到实时拆成了可判定的台阶:

级别 范畴 定义性行为 新增能力轴
L1 离线 看完整个视频再答题 —
L2 流式 视频持续到达,用户随时问、模型立即答——但回答期间是盲的 流式输入
L3 流式 答案尚不可判定时保持沉默,等关键证据出现再答 + 主动沉默
L4 流式 常驻问题:一个问题挂着,场景演化时反复更新答案 + 多轮响应
L5 实时 生成期间持续感知:证据一变,正在说的回复立刻修正或中断 + 边说边看

L2-L4 的共同盲区:每次回复期间模型对世界闭眼。StreamingVLM、MiniCPM-o 的多数流式工作都处在这个区间。L5 的分界线是"perceiving while generating"——MOSS-VL-Realtime 通过 live demo 和开源的实时推理代码展示了这一行为(定量验证仍止于 L2-L4,因为公开基准只到那里;L5 基准本身是开放问题)。

架构:让"新帧到达"不打断生成

L5 能力不是训出来的技巧,而是从架构里长出来的。核心决策:语言解码器只通过门控交叉注意力接触视觉,视觉 token 永不进入解码序列。

三段式结构(11.3B)

  • 视觉编码器:27 层(Qwen3-VL 视觉塔初始化),原生动态分辨率(4096 到 16.8M 像素),取第 8/16/24 层 + 末层四层特征,2×2 patch 合并后 MLP 投影到 4096 维,约 0.8B;
  • 语言主干:48 层 = 36 层自注意力(Qwen3-8B 原样)+ 12 层门控交叉注意力(每 4 层插一个),Flamingo 式 tanh 门、零初始化标量——训练起点是一个完好无损的语言模型;交叉注意力栈约 2.3B,用 GQA(32 query / 8 KV)+ QK-RMSNorm;
  • 每帧在文本侧的足迹:只有几个时间戳 token + 一个占位符 token。帧的 patch token 全部留在视觉侧做交叉注意力的 K/V。

Real-time by construction

这个架构直接换来流式推理的关键性质:新帧到达时只编码这一帧,K/V 追加进交叉注意力 cache,已编码的旧帧不重算;解码序列只增加几个时间戳/占位符 token——到达的流不会扰动正在进行的解码状态,下一个生成的 token 通过门控层自然地看到更新后的 cache。这就是"边说边看"的机制基础。

效率对比(SGLang 实测,单 H200,与同 backbone 的 Qwen3-VL-8B 隔离变量):ViT 输出对齐时,TTFT 优势从 2.8× 拉大到 5.1×(视觉上下文越长差距越大),端到端延迟 1.9×→4.3×。更苛刻的同视频对比下,MOSS-VL 放弃时间压缩、每帧立即编码(视觉 token 约为对方两倍),仍然全程领先——因为视觉 token 不占解码序列,视觉历史的累积不会拖慢每步生成。

XRoPE:给交叉注意力通道的第一个位置编码

作者称 XRoPE 是首个为 VLM 交叉注意力通道设计的位置编码——这个通道此前是没有位置信息的。它把文本 token 和视觉 patch 放进共享的三轴坐标 (t, h, w):文本 token 三轴齐步进 (x,x,x);锚定在坐标 t 的帧,其 h'×w' 的 patch 网格取 (t, t+a, t+b);帧结束符与文本侧占位符取同一坐标,两条通道沿单一时间轴推进。64 个旋转频率对按 (24,20,20) 切给三轴,文本侧 query 与视觉侧 key 各自旋转后在交叉注意力相遇。

注意 t 轴是相对序列坐标,不是墙钟时间——真实时间由另一处设计承担:每帧文本侧前置绝对时间戳 token(<|time_start|>x.x seconds<|time_end|>)。模型从 token 直接读真实时间,而不必从位置推断,采样率 1-16 fps 运动自适应变化时时间语义保持稳定。

Realtime-SFT:不到 3% 的 token 装上整个交互范式

训练分两大段:四阶段预训练课程(对齐 150B → 大规模 203B → 高质量 459B → 退火+长上下文 450B,序列长 8K→256K)产出 Base;常规 SFT(102.8B token)产出 Instruct。然后所有实时专属设计集中在最后一个轻量阶段 Realtime-SFT(34.8B token,0.56M 样本,占总训练 token 不到 3%)。同一套权重靠一条 system prompt 在离线/流式/实时三模式间切换。

两个 token 就是全部新词表

训练样本按到达顺序交错帧与文本:每帧后跟一个决策槽,取三种形式之一——<|silence|>(继续看)、<|response|>+文本(现在说)、以 <|silence|> 收尾的回复(说完收声)。一条回复摊在多个连续槽里逐帧吐出,模拟速率受限的实时输出。决策本身没有任何专门的头:最可能的下一个 token 是 <|silence|> 就等下一帧,否则解码回复——说话与否就是普通的 next-token prediction。

沉默类别不平衡与 focal 重加权

核心困难是不平衡:沉默槽远远多于发声决策,均匀加权下模型会学成"永远沉默"。解法是只对两个状态 token 加 focal 因子 + 逆频率类系数(γ=2,类系数在 global batch 上统计以保证各 data-parallel rank 一致),发声与沉默在 focal 调制前持有相等的聚合权重;回复正文保持单位权重。

一个容易被忽略的 masking 决策

离线对话里,assistant 回合的结束符意味着"本次交流完结";在流里,回合边界往往只是用户插话,世界和对话都在继续。因此他们把 assistant 回合末尾的 end token 从监督中排除,不让模型学会"见到新用户回合就收工"。受控单变量实验显示,仅此一项让发声频率提升 39%、平均回复长度提升 68%——masking 选择直接塑造交互气质。

数据:监督的是"时机"

Realtime-SFT 语料里每个样本都把模型置于显式交互角色:必须恰好触发一次的常驻条件指令、答案随证据演化的常驻问题、连续实况解说、跨流累积计数、"此刻是否该开口"的探测、保持身份一致性的纯对话。统计上:全语料 220 万次发声决策中 58.7% 是自定时的(非新问题触发),5.1% 的样本里目标事件从未发生、正确行为是全程沉默。合成管线沿用 MOSS-Video-Preview 的 caption 驱动路线并升级三环:时间锚定逐帧对画面验证、被新事件超越的回复改写为口语化自我修正(而非专用打断 token)、质量门检查每条回复在发出时刻是否有画面依据。

评测:赢面精确落在"时机"上

  • 流式基准(对 AURA、M4、ROMA、ViSpeak、VideoChat3、MMDuet 家族等开源流式模型):四个基准中三个最佳平均——OVO-Bench 70.2(亚军 65.3)、OmniMMI 32.7(亚军 25.4)、ProactiveVideoQA 47.2(亚军 42.7);StreamingBench 视觉均分 69.7 列第二(AURA 71.1);
  • 主动行为横扫:三个正面考"不请自来、在正确时刻开口"的子集全部第一且拉开代差——OmniMMI Proactive Alerting 66.0 vs 37.5、StreamingBench Proactive Output 60.0 vs 53.2、OVO-Bench Forward Active Responding 62.1 vs 55.8。凡是考"何时说"的,Realtime-SFT 直接监督的行为全胜;凡是退化为"当前场景感知 QA"的子集,AURA 保持优势;
  • 离线:感知最强(MMBench-EN 88.1、POPE 89.4、BLINK 78.0 赢面 8.9 分),并领跑时间推理视频集(Minerva 40.5、TOMATO 39.5、VideoMME-Logical 17.1,各领先 4.9 分以上)——时间理解的基础在预训练就埋下了;
  • 定性 L5:官方 demo 中,"猫碰到胡萝卜才说 great"的常驻指令下全程沉默、四次接触精确触发;一条"实况解说"指令下 1 秒内开腔,跟踪任意球从摆球、哨响、射门到庆祝和比分更新。

基础设施也开了源

值得一提的工程交付:门控交叉注意力的可见性是"每个 query 可见前缀逐帧增长",现成 kernel 不支持,他们扩展了 FlashAttention-3,用一个 32 位整数(cross_kv_boundary)编码每行可见前缀,超出边界的 KV tile 直接剪枝不算,随模型一并发布;SGLang 集成已合并上游;实时交互以 Transformers 参考实现随权重发布;五个 checkpoint、完整训练课程(token 预算表)、Realtime-SFT 对话模板全部公开。

我的评价

优点:

  • L1-L5 分级给"实时"这个被滥用的词立了可判定的标准,大概率会成为社区通用语言;
  • 协同设计的完成度罕见:架构(视觉 token 旁路)使能行为、数据(220 万次决策)监督时机、课程(<3% token 的轻量终段)保住根基,三者互相咬合;
  • "更多参数、更快服务"(11.3B 比 8B 同背骨模型 TTFT 快 2.8-5.1×)反直觉但有实测支撑——把视觉挪出解码序列的架构红利。

局限:

  • L5 只有定性证据——"边说边改"没有公开基准可测,作者自己也承认这是开放问题;
  • 无 thinking 模式,MMMU(51.1 vs Qwen3-VL 的 69.6)、文档理解明显落后——为实时性放弃了考试型推理;
  • 纯视觉流,没有音频输入,离全模态全双工(如 MiniCPM-o 4.5)还差一层。

一句话总结:MOSS-VL 把流式视频理解的竞争从"记得住、说得快"推进到"说着的时候还在看",并用 L1-L5 分级告诉社区这项能力该如何度量——下一阶段的赛点已经很清楚:给 L5 造基准,以及把 RL 后训练(其公开路线图已列出)接到实时交互上。


上一篇:流式 VLM 精读 7:MiniCPM-o 4.5——Omni-Flow 全双工 系列开篇:流式 VLM 精读 0:领域地图

评论