mini-omni
首个开源实时语音对话模型,支持边听边想边说,无需 ASR/TTS 管道
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
首个开源实时语音对话模型,支持边听边想边说,无需 ASR/TTS 管道
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你是否曾幻想过——和 AI 直接用语音对话,就像和朋友聊天一样自然流畅,而不需要打字、不需要等待 AI 先说完再轮到你?Mini-Omni 正是为了实现这个愿望而诞生的开源项目。它是全球首个完全开源的端到端实时语音对话模型,让一个不到 10 亿参数的微型语言模型(基于 Qwen2-0.5B)具备了"听见、思考、说话"三合一的能力,且全程流式输出,无需 ASR(语音识别)或 TTS(语音合成)等中间模块的介入。

图1:Mini-Omni 的核心框架,采用并行文本-音频生成架构,音频与文本同步输出
在 Mini-Omni 出现之前,市面上的语音 AI 助手(如 Siri、Alexa)采用的是"级联管道"架构:用户说话 → ASR 转为文字 → LLM 处理文字 → TTS 转语音。每一步都是独立模型,数据需要反复编码解码,不仅延迟高(用户说一句,AI 要等好几秒才能回应),还会在转换过程中丢失语音中的情感、语调等信息。
更关键的问题是——当模型只能输出文字时,用户体验的"临场感"大打折扣。Mini-Omni 的研究者们提出的"Any Model Can Talk"框架,本质上是在问:能不能直接让一个已有的文本 LLM 天生就"会说话"? 答案在 Mini-Omni 中找到了:通过对 LLM 进行语音模态适配,实现了文本与音频的并行生成——模型在思考(输出文本 token)的同时,也在"说话"(输出音频 token),两者同步进行,延迟极低。
Mini-Omni 的技术栈可以用"简洁但精妙"来形容:
基座模型:Qwen2-0.5B,一个 5 亿参数的小型 Transformer(24 层,hidden size 896),天然具备多语言能力(因为 Qwen2 训练语料覆盖多语言)。基于它而非从头训练,大大降低了计算成本。
语音编码器:集成 OpenAI 的 Whisper 作为音频特征提取器,将输入的原始音频波形转换为 token 序列,供 LLM 理解。这是目前语音 AI 领域最可靠的音频编码方案之一。
音频解码器:采用 SNAC(Speech Neural Audio Codec)作为音频编解码器。区别于传统 TTS,Mini-Omni 直接让 LLM 学会生成 SNAC 音频 token,再通过 SNAC 解码器还原为波形。这避免了传统方案中 TTS 模型质量不稳定的问题。
并行生成策略:核心创新在于 generate_AA(Audio-Audio)、generate_TA(Text-Audio)等多模态生成函数。模型同时维护文本 token 序列和 7 个音频 token 层次(SNAC 的多级码本结构),每生成一个 step,文本 token 和各级音频 token 同步更新,实现了真正的"边想边说"。
推理架构:Python inference.py 提供了本地推理入口(运行预置音频样本测试),server.py 则封装为 Flask 服务,提供 /chat 接口供 Web UI 调用。
Mini-Omni 提供了两套 Web 界面,均依赖 server.py 先启动后端服务:
webui/omni_streamlit.py):本地运行,需要 PyAudio 支持,通过环境变量 API_URL 连接后端。适合快速本地演示。webui/omni_gradio.py):在线部署友好,支持更丰富的媒体流交互。需要通过 API_URL 配置后端地址。值得注意的是,Gradio 在流式音频播放上存在固有延迟(Gradio 架构本身的限制),因此项目建议"unmute first"——在播放音频前先取消静音,以获得最佳体验。
部署流程为:先 python server.py --ip 0.0.0.0 --port 60808 启动后端推理服务,再单独运行 Web UI 进程通过 API 调用。
项目文档坦诚地列出了当前版本的局限:
ModuleNotFoundError: No module named 'utils.vad' 是常见报错。Mini-Omni 的意义不仅在于它本身,更在于验证了"Any Model Can Talk"这条技术路径的可行性。它证明了在 5 亿参数的小模型上,通过合理的多模态适配,就能实现端到端实时语音对话,而无需等待千亿参数大模型的"涌现能力"。
作者已发布后继版本 Mini-Omni2,增加了视觉和音频理解能力(HuggingFace Space 已有交互式 demo)。可以预见,未来开源社区将在 Mini-Omni 的基础上,涌现出更多支持语音的本地 AI 应用——从语音笔记助手,到实时翻译耳机,再到完全本地化的 AI 口语陪练。
项目基本信息: