模型 / 官方
首个开源全双工多模态流式推理引擎
OpenBMB 在 GitHub 上发布了 llama.cpp-omni,这是一个基于 llama.cpp 构建的高性能全模态(Omni)推理引擎,也是首个支持全双工、全模态流式视频通话的开源 C++ 推理框架。该项目以 MiniCPM-o 4.5 为核心模型,这是一个由面壁智能与清华大学联合研发的 9B 参数端侧全模态大语言模型,具备视觉、语音与全双工流式交互能力。llama.cpp-omni 将原始 PyTorch 模型拆分为多个独立 GGUF 模块,包括视觉编码器(VPM)、音频编码器(APM)、主语言模型(LLM)、语音合成模型(TTS)以及声码器(Token2Wav),各模块通过异步队列并行执行,实现端到端的流式输出。在 RTX 4090 上,首个音频输出的延迟低于 550 毫秒,Token2Wav 实时率仅约 0.15 倍,性能表现突出。
llama.cpp-omni 是 OpenBMB 团队在 llama.cpp 基础上开发的全模态推理引擎,继承了 llama.cpp 的高性能特性,支持 GGUF 量化格式与低内存占用,并与现有 llama.cpp 接口及生态工具链完全兼容。该框架支持 Windows、Linux 和 macOS 三大平台,可在消费级硬件上高效运行全模态模型,大幅降低了部署门槛。
该项目的核心模型 MiniCPM-o 4.5 采用端到端全模态架构,各模态编解码器通过隐藏状态与 LLM 紧密连接。llama.cpp-omni 将其拆分为五个独立 GGUF 模块:基于 SigLip2 的视觉编码器 VPM、基于 Whisper 的音频编码器 APM、基于 Qwen3-8B 的主语言模型 LLM、基于 LLaMA 架构的 TTS 语音合成模型,以及基于 Flow Matching 的声码器 Token2Wav,后者可将音频 token 转换为 24kHz 波形音频。
全双工流式机制是 llama.cpp-omni 的核心创新。输入流(视频与音频)与输出流(语音与文本)互不阻塞,同步运行。音频被切分为 1 秒片段送入 APM,图像逐帧送入 VPM;LLM 主干采用时分复用(TDM)技术,将并行的全模态流划分为周期性时间片内的顺序信息组,实现毫秒级输入输出同步。TTS 模块以交错方式建模文本与语音 token,支持超过 1 分钟的长语音稳定生成。
在主动交互机制方面,双工模式下 LLM 以 1Hz 频率持续监控输入的视频与音频流,自主决定是否主动发言。这一高频决策能力结合全双工特性,使模型能够实现自发提醒、实时评论等主动交互行为,显著提升了人机对话的自然度与流畅性。
性能基准测试显示,在 RTX 4090(F16 精度)上,首个音频输出的到达时间(TTFT)低于 550 毫秒;视觉与音频联合预填充约 65 毫秒,纯音频预填充约 21 毫秒;LLM 解码速度约 38 毫秒每 token,TTS 生成约 8.5 毫秒每 token,Token2Wav 实时率约为 0.15 倍,即 25 个 token 可生成约 1 秒音频,耗时约 150 毫秒。整体延迟水平已具备实时交互的工程可行性。
要点
- llama.cpp-omni 是首个开源的全双工全模态 C++ 推理框架,支持视频、音频与文本的实时同步交互
- 模型被拆分为 VPM、APM、LLM、TTS、Token2Wav 五个独立 GGUF 模块,通过异步队列并行执行实现流式输出
- 在 RTX 4090 上首个音频输出延迟低于 550 毫秒,Token2Wav 实时率约 0.15 倍,具备工程级实时交互能力
- 支持 Windows、Linux、macOS 三平台,兼容 llama.cpp 生态,可在消费级硬件上部署
- 双工模式下 LLM 以 1Hz 频率主动监控输入流,支持自发提醒等主动交互行为
原始标题:OpenBMB/llama.cpp-omni — Omni inference in C/C++
本文由 DataHub 基于公开来源整理,用于信息发现与摘要阅读;具体事实、数据和后续更新以原始来源为准。