Back

流式 VLM 精读 7:MiniCPM-o 4.5——Omni-Flow 全双工,9B 模型在端侧边看边听边说

本文是「流式视频理解 VLM 精读」系列第 7 篇,精读 MiniCPM-o 4.5(OpenBMB,arXiv 2604.27393)。上一篇的 StreamingVLM 解决了"无限流怎么看",但它仍是回合制的延伸——感知与生成交替进行。MiniCPM-o 4.5 要拆掉的是这堵更根本的墙:让看、听、说真正并行,并且用 9B 参数、不到 12GB 内存跑在端侧设备上。论文自称"第一个全双工全模态 LLM"。

问题定义:瓶颈不是模态覆盖,而是交互范式

论文开篇的判断值得引用:当前多模态模型与人类交互水平的差距,瓶颈已不再是模态覆盖或延迟本身,而是交互范式——

  1. 感知与响应被锁在交替相位里:模型说话时是世界对它闭眼的时刻,生成期间到达的新信息无法用于及时调整;
  2. 行为是被动的:模型只在被明确请求时响应,不会根据持续演化的环境主动发起行为(提醒、评论)。

MiniCPM-o 4.5 的答案是把交互建模从"回合"改为"流":Omni-Flow。

Omni-Flow:把交互序列化到共享时间轴

三条时间对齐的流

受通信里时分复用(TDM)启发,Omni-Flow 把连续交互切成时长为 t 的细粒度时间窗,识别出三条沿同一时间轴流动的流:

  • env-visual:环境视觉流(摄像头画面持续到达);
  • env-audio:环境音频流(包括用户说话);
  • out-stream:模型自己的文本与语音输出流。

关键的概念转换:用户请求不再是一个特权对话角色,而是环境状态的一部分,主要从 env-audio 进入。模型也不再把"被问到"作为发声的触发条件——out-stream 与感知持续耦合演化,模型要自己决定说什么、以及说不说、什么时候说。这正是主动行为(proactive behavior)在同一框架内自然涌现的方式,也让外部 VAD 模块变得多余。

统一序列化

第 k 个时间窗内,新到的视觉/音频编码为 token 序列 v^k 和 a^k,输出更新为 o^k(无需输出时 o^k 只含一个特殊 token [listen])。三者拼成组 g_k = [v^k; a^k; o^k],沿时间串联进标准因果 LM。每个窗内先处理感知 token、再生成输出 token,保证每个输出都以最新观察为条件。

三组消融:设计选择的代价

论文罕见地对全双工设计空间做了系统消融(Table 1),结论很有信息量:

维度 结论
时间粒度 1.0 秒最优。0.2s/0.1s 全面崩塌(MMLU 0.65→0.45/0.32)——窗太短,模型在每个窗口内没有足够信息做稳定决策,延迟与控制力存在根本性权衡
边界显式性 组间显式分隔符优于隐式——区分"新观察"与"新生成"对模型并不平凡,显式结构能减负
控制形式 Listen-Speak(先预测说/不说的控制 token,再生成内容)优于 Listen-Text([listen] 与正文在同一输出空间直接竞争)——"说不说"与"说什么"必须解耦,纠缠在一步预测里会让全双工难学

TAIL:让说出口的语音不落后于眼睛

全双工语音生成有个隐蔽的时间陷阱:文本生成速度和语音播放速度不匹配。如果 m 秒内生成的文本需要远超 m 秒才能播完,语音流就会持续落后于模型的最新状态——用户听到的音频对应的其实是很久以前生成的文本,对全双工是致命的(你还在评论上一个画面)。

已有方案要么"先生成一大段文本再合成"(文本跑太远),要么"固定文音 token 比"(假设每个文本 token 发音时长相等)。MiniCPM-o 4.5 提出 TAIL(Time-Aligned Interleaving):

  • 在第 k 个时间窗,根据全程累计的播放进度自适应决定本窗生成多少文本——目标是把新内容 vocalize 之后,语音流恰好逼近时间边界 kt;
  • 如果之前的窗欠了账(播放略滞后),本窗就少生成几个文本 token,让语音追上来;
  • 有界 look-ahead:发音依赖后文("the apple" vs "the car"中 the 的读音不同),所以每窗最后几个文本 token 的语音推迟到下一窗生成,保住局部发音上下文,又不让文本跑远。

监督信号的构造也很直接:从全双工训练数据里收集每个文本 token 的起止时间,起始时间落在 [(k-1)t, kt) 内的 token 连同其语音 token 归入第 k 窗——模型由此学到历史依赖的交错模式,而非固定配比。

架构:各司其职的 9B

MiniCPM-o 4.5 总参数约 9B,所有可学习组件 token 级可微连接,端到端联合优化:

  • 视觉:SigLIP ViT(0.4B)+ LLaVA-UHD 任意宽高比分片 + resampler 压缩——每张 448×448 切片从 1024 token 压到 64 token(16× 压缩率,高于常见的 4×)。全双工模式最大分辨率 448×448,回合模式可到 2240×2240;
  • 音频:Whisper Medium 编码器(0.3B)分块流式编码,50 token/秒经两层 MLP 做 5× 时域压缩到 10 token/秒;
  • 语言主干:Qwen3-8B。只生成文本 token,每秒只需 3-4 步解码(恰好是人说话的速度);
  • 语音解码:轻量 Llama speech decoder(约 0.3B)逐文本 token 生成 S3 离散语音 token,再经流式 flow-matching 解码器合成波形,参考音频走多模态系统提示(支持声音克隆)。

这里有一个被论文明确论证的架构决策:不让 LLM 主干直接生成语音 token。近期一些工作让主干直接吐约 25 token/秒的语音码,既拖垮效率、又损害核心语言能力;MiniCPM-o 4.5 把韵律决策"预编码"在主干 hidden states 里(经 MLP 与文本 token 求和送入语音解码器),小解码器只需专注语音建模。这是一个"主干做内容决策、轻模块做声学渲染"的清晰分工。

训练与数据

四阶段流水,从 MiniCPM-V 4.5 预训练检查点出发:

  1. 语音预训练:冻结预训练组件,只训新增的 audio projector、LLM-to-speech projector、speech decoder——对齐 Whisper 特征与 LLM 隐空间;
  2. 联合预训练:解冻全部参数,视觉-语言/语音/全模态数据按固定配比分配到不同 data-parallel rank 稳定优化,统一 next-token 目标下混入主动交互与全双工数据;
  3. 联合 SFT:大规模指令微调 + 高质量人工标注精调;为支持推理时质量-效率权衡,随机将帧分辨率设在 0.2-0.4 百万像素、帧率 1-5 FPS 采样;
  4. 强化学习:GRPO 提升推理与指令遵循(规则验证 + 高效 judge model 混合给准确率奖励);平滑长度奖励(改自 Kimi K1.5):答错时长度奖励封顶为 0(不奖励"错得简短"),长度差异小时用 τ 缩小奖励幅度;再加通用奖励模型压制意外中英混说;最后 RLAIF-V 降幻觉——作者发现图文数据上学到的幻觉抑制能迁移到全双工流式场景。

长度奖励消融(Table 9)值得一看:K1.5 式奖励把 thinking 模式长度砍掉 50.7%,但基准均分从 73.5 掉到 73.0,且训练后期准确率停滞;平滑版砍 35.3% 且均分反升到 74.3。激进的效率奖励会与准确率奖励打架。

评测结果

  • 视觉-语言:OpenCompass 均分 instruct 模式 77.6、thinking 模式 78.2——9B 规模超过 InternVL3.5-8B、Qwen3-VL-8B、Qwen3-Omni-30B-A3B,逼近 Gemini 2.5 Flash(78.5/79.9)与 GPT-5(79.7);OmniDocBench 文档解析 EN 0.109 / CN 0.162(越低越好),显著优于所有更大模型;多图理解 Mantis-Eval 79.7、MMSI-Bench 16.6 均列第一;
  • 全模态理解(视频+音频对齐输入):Daily-Omni 80.2、WorldSense 55.7、Video-Holmes 64.3、JointAVBench 60.0、AVUT-Human 78.6——7 项中 5 项最佳,Video-Holmes 领先第二名 13.9 分;
  • 全双工:LiveSports-3K-CC 上 54.4,比 StreamingVLM(45.6)高 8.8 分、比 LiveCC(41.5)高 12.9 分——Omni-Flow 的时间对齐组织方式确实让响应更贴近演化中的场景;
  • 语音:SeedTTS 中英文 CER/WER 均最低(0.86 / 2.38),LongTTS 英文长文本 WER 3.37 远超 CosyVoice2 的 14.80,情感控制 Expresso/ESD 最佳;
  • 文本:相对 backbone Qwen3-8B-Instruct 多数任务不降反升(BBH 69.4→81.1),说明全模态训练没有牺牲语言能力;
  • 端侧:全双工实时交互内存占用 <12GB,可跑在消费级设备上。

我的评价

优点:

  • 范式贡献真实——把"用户请求"降格为环境流的一部分、让主动行为从框架中涌现,这是概念上的干净一跃;
  • 消融做得诚实且系统(时间粒度/边界/控制形式三组),1 秒粒度背后"延迟-控制力权衡"的揭示对后来者很有价值;
  • 9B + <12GB 内存的端侧全双工,工程意义超出论文本身。

局限:

  • 全双工的公开评测仍然薄弱——论文自己承认只能用 LiveSports-3K-CC(无音频的代理基准)定量,视听说三方同时在线的全双工能力只有 demo 定性展示;
  • 1 秒的时间粒度意味着最坏情况下约 1 秒的感知-响应耦合延迟,离人类对话级的亚秒响应还有距离;
  • 语音输出依赖参考音频(声音克隆路径),无参考时的默认音色表现未展开。

一句话总结:MiniCPM-o 4.5 把全双工从"音频对话的专属能力"推进到"看听说三者并行"的全模态形态,Omni-Flow 的共享时间轴抽象和 TAIL 的播放进度对齐,是这一方向目前最完整的开源方案——而且它小得能塞进手机。


上一篇:流式 VLM 精读 6:StreamingVLM——无限视频流的实时解说 下一篇:流式 VLM 精读 8:MOSS-VL——边说边看的 L5 交互

评论