MiniCPM-o 4.5:迈向实时全双工全模态交互 MiniCPM-o 4.5: Towards Real-Time Full-Duplex Omni-Modal Interaction
9B参数全双工全模态模型,<12GB内存实现实时听说看同步
前置知识
全双工通信
全双工指通信双方可同时发送和接收信息,与之相对的是半双工(轮流收发)和单工(单向)。在语音交互场景中,全双工意味着模型能在说话的同时持续听、看并理解新的输入。
本文核心是把全双工范式引入多模态大模型,是相对轮询式 turn-based 交互的本质跃迁,必须先理解这一概念才能抓住论文动机。
时间分多路复用 (TDM)
TDM 是通信领域把共享信道按时间片轮流分配给多路信号的技术,保证各路信号在时间轴上对齐而不互相干扰,是 Omni-Flow 的关键类比来源。
Omni-Flow 的设计灵感即来自 TDM:把连续交互切成长度为 t 的时间窗,窗内先感知新输入再产生输出,从而把轮询式交互转为时间对齐的流式过程。
Flow Matching 语音解码
Flow Matching 是一类基于常微分方程的生成模型,通过学习从简单分布到目标分布的速度场把噪声映射为语音波形,相比扩散模型步数更少、适合流式输出。
MiniCPM-o 4.5 用流式 flow-matching 解码器把离散 speech token 转音频波形,是其实现 0.21 RTF 实时推理的关键组件。
GRPO 强化学习
Group Relative Policy Optimization 通过对同一 prompt 的多条采样按组内相对优势估计策略梯度,无需训练价值网络,训练开销低且易与 SFT 流程衔接。
本文 RL 阶段使用 GRPO 增强推理与指令遵循能力,并设计了平滑长度奖励,是训练流水线不可或缺的环节。
研究动机
当前主流多模态大模型(MLLM)如 GPT-4o、Gemini Live 仍采用轮询式 turn-based 交互:先接收完整输入再生成完整响应,导致两大痛点。一是 Blocked-I/O:感知与生成被严格串行化,模型说话时无法同时听和看,对持续滚动的视频/音频流只能基于已『冻结』的旧上下文作答,例如在足球直播中模型说出『红队球员在运球』时对方已射门,错失关键事件。二是 Passive Behavior:模型只在被显式 query 时才响应,缺少类人主动提醒或场景评论能力。在长时辅助和氛围式交互中,这一缺陷尤为突出。
本文的目标是论文目标是发布首个开源的全双工全模态 LLM MiniCPM-o 4.5,让模型能边看、边听、边说,并在持续感知环境的基础上主动发起提醒或评论。具体指标包括:9B 总参数量在边缘设备(<12GB RAM)实现实时全双工交互;视觉-语言能力逼近 Gemini 2.5 Flash;全模态理解与语音生成超越 Qwen3-Omni-30B-A3B;并同时支持传统 turn-based 模式以兼容现有应用栈,做到能力与可用性兼顾。
与已有工作不同的是,已有工作要么停留在 turn-based 多模态理解(如 Qwen3-VL、InternVL3.5),要么把 speech token 直接塞进 LLM 主干(Qwen3-Omni、GLM-4-Voice)导致 LLM 每秒需生成约 25 个语音 token、效率与语言能力双输。MiniCPM-o 4.5 的独特切入是把『交互范式』本身当成研究对象,提出 Omni-Flow 框架把多模态输入输出在共享时间轴上对齐,让 LLM 主干只输出 3-4 text token/s 而把语音 token 生成委托给轻量级 Llama 解码器,从而兼顾全双工、低资源与强语言能力。
核心方法
方法可分『架构』与『框架』两层。架构上把 SigLIP ViT(0.4B,16× 压缩至高分辨率 448×448 切片)、Whisper Medium(0.3B,5× 时间压缩至 10 audio token/s)、Qwen3-8B 主干、轻量 Llama 语音 token 解码器(0.3B)和流式 flow-matching 解码器以 token 级 hidden state 端到端串联,总参数量 9B。框架上提出 Omni-Flow:把连续交互切成 1.0s 时间窗,每窗内先编码新到达的视觉 $v_k$ 与音频 $a_k$,再决定是否生成输出 $o_k$(含特殊 [listen] token),各窗沿时间轴拼接成统一序列送入因果 LM;并配套 TAIL 策略让文本与语音播放时长对齐、避免内容过时。
核心创新是 Omni-Flow 的『统一序列化』思想:把视觉、音频、文本输出三类原本异构的流按时间分窗后在同一序列里拼接($g_k = [v_k; a_k; o_k]$),使标准因果 LM 即可处理全双工交互。与已有方法的本质区别在于:(1)把『是否说话』决策与『说什么』内容解耦为 LS(Listen-Speak)控制位,优于把两者揉进同一 token 空间的 LT 方案;(2)显式插入组边界 token,让模型清晰区分『已观察』和『待生成』;(3)放弃让 LLM 主干直接吐 speech token,改用轻量 Llama 解码器结合主干 hidden state 单独产生 S3 token,主干只需 3-4 step/s 即可维持 25 token/s 语音速率。
方法步骤详情
流程分四步:1) Omni-Flow 序列化——每 1.0s 取 chunk;env-visual 经视觉编码器编码为 64 token/切片,env-audio 经 Whisper+MLP 压缩至 10 token/s;输出端先预测 LS 控制位再决定听或说,组间插显式边界 token。2) TAIL——第 k 个 chunk 按累积播放进度自适应决定生成 text token 数,使该 chunk 文本对应语音播放结束时接近 $kt$ 边界;末尾少量文本的语音延后到下一 chunk 作 look-ahead。3) 四阶段训练——Speech Pretraining 训 audio projector 与 speech decoder;Joint Pretraining 混三类数据并用数据并行维持固定模态比;SFT 分辨率 0.2-0.4MP、帧率 1-5FPS;最后 GRPO+平滑长度奖励+RLAIF-V 做 RL,前 480 步关闭长度奖励。4) llama.cpp-omni 部署——INT4 量化下 RTX 4090 上 RTF 0.21、内存 11GB。
技术新颖性
技术新颖性体现在三个层面。范式层:首次把全双工当成可学习的『时间对齐流式问题』而非工程拼接,并给出 LS 控制、显式边界、1.0s chunk 的消融最优组合。架构层:提出『LLM 主干吐 hidden state + 轻量 Llama 解码器吐 speech token』分工,让 9B 模型同时拥有 Qwen3-8B 的语言能力和 25 token/s 语音速率,避免了 GLM-4-Voice 等『LLM 吐 speech token』方案的效率-能力双输。数据/训练层:构建含时间戳对齐的全双工音视频数据,并通过数据并行 rank 分配维持固定模态比以稳定联合训练;RL 中提出比 Kimi-K1.5 更平滑的长度奖励公式 $r_{len} = \min(0, s_i) \cdot (0.5 - \frac{\ell_i - \ell_{min}}{\ell_{max} - \ell_{min}} \cdot \min(1, \frac{\ell_{max} - \ell_{min}}{\tau}))$,兼顾压缩率与准确率。
实验结果
四维度均 SOTA。视觉-语言:instruct 模式 OpenCompass 77.6、MMBench EN 87.6、MathVista 80.1、OmniDocBench 中文 CER 0.162、HallusionBench 63.2、Mantis-Eval 79.7,超 Qwen3-Omni-30B、与 Gemini 2.5 Flash 相当;thinking 模式 MMBench EN 89.0 进一步领先。语音理解:GigaSpeech 8.5、CoVoST2 en→zh 49.9、Speech TriviaQA 75.5 等 6 项第一。语音生成:SeedTTS 中英 CER 0.86/2.38,LongTTS EN WER 3.37(基线 14.80+),Expresso/ESD 29.8/82.1 远超 CosyVoice2(17.9/53.4)。全模态:Daily-Omni 80.2、Video-Holmes 64.3 等五项第一;LiveSports-3K-CC 胜率 54.4。效率:vLLM INT4 达 212.3 token/s、内存 11GB。
查看结构化数据
| 任务 | 指标 | 本文 | 基线 | 提升 |
|---|---|---|---|---|
| OpenCompass (视觉-语言综合) | 平均分 | 77.6 (instruct) / 78.2 (thinking) | Gemini 2.5 Flash 78.5 / GPT-5 79.7;Qwen3-Omni-30B 75.7 / 78.5 | 9B 模型逼近 78.5 的 Gemini 2.5 Flash,并超过 30B-A3B 的 Qwen3-Omni |
| MMBench EN v1.1 | 得分 | 87.6 / 89.0 | Gemini 2.5 Flash 86.6 / 87.1 | instruct 超 Gemini 2.5 Flash 1.0 分,thinking 超 1.9 分 |
| OmniDocBench (EN/CN, ↓) | 编辑距离 | 0.109 / 0.162 | Qwen3-Omni-30B 0.216 / 0.363 | EN 降低 49.5%,CN 降低 55.4% |
| Speech TriviaQA | 准确率 | 75.5 | Qwen3-Omni 62.9;Kimi-Audio 41.9 | 较 30B-A3B 提升 12.6 分,较 Kimi-Audio 提升 33.6 分 |
| SeedTTS Test-EN (语音生成) | WER ↓ | 2.38 | CosyVoice2 2.57;Qwen3-Omni 3.39 | 较 CosyVoice2 降低 7.4%,较 Qwen3-Omni 降低 29.8% |
| LiveSports-3K-CC (全双工) | 胜率 | 54.4 | LiveCC 41.5;StreamingVLM 45.6 | 较 StreamingVLM 提升 8.8 分,较 LiveCC 提升 12.9 分 |
| vLLM INT4 吞吐 (RTX 4090) | tokens/s ↑ | 212.3 | Qwen3-Omni-30B-A3B 147.8 | 提升 43.6%,同时内存从 20GB 降至 11GB |
局限与改进
作者在文末明确列出四点局限:1)长时动态真实场景下的鲁棒性仍需更多验证;2)全模态流式模式偶有语音不稳定,包括发音错误和英中混读;3)官方 web demo 受网络影响可能丢片段,本地 llama.cpp-omni 部署更稳;4)主动行为目前仍较简单,缺乏基于上下文的长期规划与自发起辅助。我个人补充两点观察:一是评估的全双工基准只有 LiveSports-3K-CC(且为 vision-only)一项,结论普适性需更多音视频同步基准验证;二是 TAIL 在 English WER 上从 2.38 退到 3.93,是为换取时间对齐付出的可量化代价,未来需在多语种下重新平衡。
独立分析的弱点
独立分析可识别的弱点有三处。第一,数据效率问题:模型训练依赖数百万小时无标签语音 + 海量音视频,对中等规模实验室门槛高,且文中未披露具体小时数和计算量,复现成本难以估算。第二,TAIL 的语种权衡:动态文本交织虽让语音与上下文对齐,但 Table 10 显示 English WER 从固定文本的 2.38 退化到 3.93,说明实时性与发音质量存在结构冲突,对中英混读场景尤其不利。第三,主动行为评估缺位:论文只展示了定性 demo 而没有『主动发起恰当评论/提醒』的定量基准,难以判断 Proactive 是真实能力还是 cherry-picked 案例。改进方向分别是:1)公开小规模训练子集 + 蒸馏版本;2)引入 per-token duration predictor 替代固定 look-ahead;3)建立含触发时机和内容合适度的标注基准。
未来方向
作者方向与可延伸方向。官方方向:1)补齐长程流式鲁棒性,包括错误累积抑制与回滚机制;2)解决全模态模式的语音不稳定,尤其是跨语言切换;3)增强主动行为的上下文规划能力。可延伸方向:1)把 Omni-Flow 的『时间对齐序列化』推广到多 agent 协同场景,让多个模型在同一时间轴上交错发言;2)把 chunk 粒度做成可学习而非固定 1.0s,使模型在静态场景自动放大窗口、动态场景自动缩小以省算力;3)探索 Omni-Flow 与 MoE 主干的耦合,把『听/说/看』对应不同专家;4)把 RL 中的平滑长度奖励思想迁移到其他长度敏感任务(代码摘要、检索增强生成),做系统化的 reward shaping 复现。
复现评估
复现友好度中等偏上。优点:模型、代码与 demo 均已开源(论文首页给出 MiniCPM-o 4.5 Model/Code/Demo 链接),架构细节(附录 A)、数据 pipeline、消融实验均较完整,vLLM 与 llama.cpp-omni 两套推理框架明确给出硬件配置(RTX 4090、DGX Spark),INT4 量化下 11GB 内存即可运行。难点:1)训练数据规模和来源未完全披露(millions of hours),小团队难以复现预训练;2)四阶段训练(Speech Pretraining → Joint Pretraining → SFT → GRPO+RLAIF-V)需大量 GPU 小时,文中未给单阶段 FLOPs;3)GRPO 的长度奖励公式虽给出但 $\ell_{min}$、$\ell_{max}$、$\tau$ 的具体数值未说明,调参成本较高。整体而言,推理与微调易复现,从零预训练复现难。
论文图表
时间轴展示了 ChatGPT2022 → LLaMA3 → GPT-4o → Gemini Live → Qwen3-Omni → MiniCPM-o 4.5 的范式演化,把本文定位为全双工阶段代表
建立了为什么需要全双工的叙事框架,是引言的视觉锚点
左侧用串行的 AI Perceives → AI Speaks 流程示意 Blocked-I/O 和 Passive 局限,右侧用并行时间轴示意模型边说边感知并主动补一句 OH! He SHOOTS!
用足球直播这一直觉场景让读者秒懂 turn-based 为何失效,是论文最关键的动机图
在 STEM、OCR、Hallucination、Multi-Image、Video 五大类 20 个基准上对比 Gemini 2.5 Flash、InternVL3.5-8B、Qwen3-VL-8B、Qwen3-Omni-30B-A3B 与 MiniCPM-o 4.5-9B
主表之一,确立 9B 模型在 instruct 模式下的 SOTA 开源地位