来源丨githubStore

MGM-Omni 是一个能够处理文本、图像、视频和语音输入,并能生成文本和语音响应的全能聊天机器人。基于 MiniGemini 和 MiniGemini v2 (Lyra),MiniGemini-Omni (MGM-Omni) 实现了中英文的长语音理解与生成,以及语音克隆功能。

项目地址:https://github.com/dvlab-research/MGM-Omni/blob/main/README.md

主要特性

  1. 全模态支持:MGM-Omni 支持音频、视频、图像和文本输入,理解长上下文,并能生成文本和语音输出,使其成为一个真正通用的多模态 AI 助手。
  2. 长语音理解:与大多数现有的开源多模态模型(通常无法处理超过 15 分钟的输入)不同,MGM-Omni 可以处理长达一小时的语音输入,同时提供卓越的整体和细节理解及性能!
  3. 长语音生成:凭借海量的训练数据和智能的基于分块的解码 (Chunk-Based Decoding) 策略,MGM-Omni 可以生成超过 10 分钟流畅、自然的语音,用于连续讲故事。
  4. 流式生成:得益于语音令牌的并行解码方法,MGM-Omni 能够实现高效流畅的流式音频,使其适用于实时对话。
  5. 零样本语音克隆:借助 MGM-Omni 广泛多样的音频训练,您只需录制一个简短的片段(约 10 秒)并查看结果,即可创建定制化的语音克隆。
  6. 完全开源:所有代码、模型和训练数据都将发布。

安 装

请按照以下说明安装所需的软件包。

克隆此仓库:
ounter(line
git clone https://github.com/dvlab-research/MGM-Omni.git
安装包:
ounter(lineounter(lineounter(lineounter(lineounter(lineounter(line
conda create -n mgm-omni python=3.10 -y
conda activate mgm-omni
cd MGM-Omni
git submodule update --init --recursive
pip install --upgrade pip
pip install -e .

使用方法

零样本语音克隆

生成与提供的参考音频听起来相似的音频。

ounter(lineounter(lineounter(line
python -m mgm.serve.cli_tts \
--model wcy1122/MGM-Omni-TTS-2B \
--ref-audio assets/ref_audio/Man_EN.wav

添加--ref-audio-text以获取更准确的参考音频转录文本。否则,将使用 Whisper-large-v3 进行自动转录。

作为全能聊天机器人进行聊天

与文本输入聊天

ounter(lineounter(lineounter(line
python -m mgm.serve.cli \
--model wcy1122/MGM-Omni-7B \
--speechlm wcy1122/MGM-Omni-TTS-2B

如果您希望 MGM-Omni 使用特定语音响应,请添加--ref-audio和(可选的)--ref-audio-text。

与视觉输入聊天

ounter(lineounter(lineounter(lineounter(line
python -m mgm.serve.cli \
--model wcy1122/MGM-Omni-7B \
--speechlm wcy1122/MGM-Omni-TTS-2B \
--image-file assets/examples/ronaldo.jpg

要探索更多模态,可使用--video-file输入视频,使用--audio-file输入音频。

与多模态输入聊天

ounter(lineounter(lineounter(lineounter(lineounter(line
python -m mgm.serve.cli \
--model wcy1122/MGM-Omni-7B \
--speechlm wcy1122/MGM-Omni-TTS-2B \
--image-file assets/examples/ronaldo.jpg \
--audio-file assets/examples/instruct.wav

对于多模态输入,请为每种模态使用--image-file、--video-file和--audio-file。

启动本地 Gradio 演示

ounter(lineounter(lineounter(line
python -m mgm.serve.web_demo \
--model wcy1122/MGM-Omni-7B \
--speechlm wcy1122/MGM-Omni-TTS-2B

使用此命令在本地启动一个 gradio 演示。

架 构

MGM-Omni 是一个先进的全能模型,旨在处理文本、图像、视频和语音输入,并能够生成文本和语音。对于来自不同模态的输入,我们采用特定模态的编码器来提取特征,随后将其输入到 MLLM(多模态大语言模型)中。MLLM 生成的文本然后传递给 SpeechLM,后者使用基于分块的并行解码 (Chunk-Based Parallel Decoding) 策略生成语音令牌。这些语音令牌通过流匹配 (Flow Matching) 模型进一步转换为梅尔频谱图 (Mel-Spectrograms),最终使用声码器 (vocoder) 合成音频。

评 估

语音和音频理解

模型
日期
LS-clean↓
LS-other↓
CM-EN↓
CM-ZH↓
AISHELL↓
Mini-Omni2
2024-11
4.7
9.4
-
-
-
Lyra
2024-12
2.0
4.0
-
-
-
VITA-1.5
2025-01
3.4
7.5
-
-
2.2
Qwen2.5-Omni
2025-03
1.6
3.5
7.6
5.2
-
Ola
2025-06
1.9
4.3
-
-
-
MGM-Omni-7B
2025-08
1.7
3.6
8.8
4.5
1.9
MGM-Omni-32B
2025-08
1.53.2
8.0
4.01.8

此表展示了语音理解方面的词错误率 (WER) 和字错误率 (CER) 结果。 此处 LS 指 LibriSpeech,CM 指 Common Voice。

模型
日期
语音↑
声音↑
音乐↑
混合↑
平均↑
LLaMA-Omni
2024-08
5.2
5.3
4.3
4.0
4.7
Mini-Omni2
2024-11
3.6
3.5
2.6
3.1
3.2
IXC2.5-OmniLive
2024-12
1.6
1.8
1.7
1.6
1.7
VITA-1.5
2025-01
4.8
5.5
4.9
2.9
4.5
Qwen2.5-Omni
2025-03
6.8
5.7
4.8
5.4
5.7
Ola
2025-06
7.3
6.4
5.9
6.0
6.4
MGM-Omni-7B
2025-08
7.36.56.3
6.1
6.5
MGM-Omni-32B
2025-08
7.1
6.5
6.2
6.26.5

此表展示了在 AIR-Bench Chat(语音、声音、音乐等)上的评估结果。

语音生成
模型
日期
模型大小
CER↓
SS(ZH)↑
WER↓
SS(EN)↑
CosyVoice2
2024-12
0.5B
1.45
0.748
2.57
0.652
Qwen2.5-Omni-3B
2025-03
0.5B
1.58
0.744
2.51
0.635
Qwen2.5-Omni-7B
2025-03
2B
1.42
0.754
2.33
0.641
MOSS-TTSD-v0
2025-06
2B
2.18
0.594
2.46
0.476
HiggsAudio-v2
2025-07
6B
1.66
0.743
2.44
0.677
MGM-Omni
2025-08
0.6B
1.49
0.749
2.54
0.670
MGM-Omni
2025-08
2B
1.38
0.753
2.28
0.682
MGM-Omni
2025-08
4B
1.340.7562.220.684

此表展示了在 seed-tts-eval 上语音生成的评估结果。 对于 Qwen2.5-Omni,模型大小指的是 talker 部分的大小。