ailuntz commited on
Commit
3ebf7da
·
verified ·
1 Parent(s): c361fb5

Add files using upload-large-folder tool

Browse files
Files changed (3) hide show
  1. README.md +136 -0
  2. config.json +72 -0
  3. model.safetensors +3 -0
README.md ADDED
@@ -0,0 +1,136 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: mit
3
+ ---
4
+ <div align="center">
5
+ <picture>
6
+ <source srcset="https://github.com/XiaomiMiMo/MiMo-VL/raw/main/figures/Xiaomi_MiMo_darkmode.png?raw=true" media="(prefers-color-scheme: dark)">
7
+ <img src="https://github.com/XiaomiMiMo/MiMo-VL/raw/main/figures/Xiaomi_MiMo.png?raw=true" width="60%" alt="Xiaomi-MiMo" />
8
+ </picture>
9
+ </div>
10
+
11
+ <h3 align="center">
12
+ <b>
13
+ <span>━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span>
14
+ <br/>
15
+ MiMo Audio: Audio Language Models are Few-Shot Learners
16
+ <br/>
17
+ <span>━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━</span>
18
+ <br/>
19
+ </b>
20
+ </h3>
21
+
22
+ <br/>
23
+
24
+ <div align="center" style="line-height: 1;">
25
+ |
26
+ <a href="https://huggingface.co/collections/XiaomiMiMo/mimo-audio-68cc7202692c27dae881cce0" target="_blank">🤗 HuggingFace</a>
27
+ &nbsp;|
28
+ <a href="https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/MiMo-Audio-Technical-Report.pdf" target="_blank">📄 Paper</a>
29
+ &nbsp;|
30
+ <a href="https://xiaomimimo.github.io/MiMo-Audio-Demo" target="_blank">📰 Blog</a>
31
+ &nbsp;|
32
+ <a href="https://huggingface.co/spaces/XiaomiMiMo/mimo_audio_chat" target="_blank">🔥 Online Demo</a>
33
+ &nbsp;|
34
+ <a href="https://github.com/XiaomiMiMo/MiMo-Audio-Eval" target="_blank">📊 MiMo-Audio-Eval</a>
35
+ &nbsp;|
36
+
37
+ <br/>
38
+ </div>
39
+
40
+ <br/>
41
+
42
+ ## Introduction
43
+
44
+ Existing audio language models typically rely on task-specific fine-tuning to accomplish particular audio tasks. In contrast, humans are able to generalize to new audio tasks with only a few examples or simple instructions. GPT-3 has shown that scaling next-token prediction pretraining enables strong generalization capabilities in text, and we believe this paradigm is equally applicable to the audio domain. By scaling MiMo-Audio's pretraining data to over one hundred million of hours, we observe the emergence of few-shot learning capabilities across a diverse set of audio tasks. We develop a systematic evaluation of these capabilities and find that MiMo-Audio-7B-Base achieves SOTA performance on both speech intelligence and audio understanding benchmarks among open-source models. Beyond standard metrics, MiMo-Audio-7B-Base generalizes to tasks absent from its training data, such as voice conversion, style transfer, and speech editing. MiMo-Audio-7B-Base also demonstrates powerful speech continuation capabilities, capable of generating highly realistic talk shows, recitations, livestreaming and debates. At the post-training stage, we curate a diverse instruction-tuning corpus and introduce thinking mechanisms into both audio understanding and generation. MiMo-Audio-7B-Instruct achieves open-source SOTA on audio understanding benchmarks, spoken dialogue benchmarks and instruct-TTS evaluations, approaching or surpassing closed-source models.
45
+
46
+ <p align="center">
47
+ <img width="95%" src="https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/assets/Results.png?raw=true">
48
+ </p>
49
+
50
+
51
+
52
+ ## Architecture
53
+ ### MiMo-Audio-Tokenizer
54
+ MiMo-Audio-Tokenizer is a 1.2B-parameter Transformer operating at 25 Hz. It employs an eight-layer RVQ stack to generate 200 tokens per second. By jointly optimizing semantic and reconstruction objectives, we train MiMo-Audio-Tokenizer from scratch on a 10-million-hour corpus, achieving superior reconstruction quality and facilitating downstream language modeling.
55
+
56
+ <p align="center">
57
+ <img width="95%" src="https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/assets/tokenizer.png?raw=true">
58
+ </p>
59
+
60
+ MiMo-Audio couples a patch encoder, an LLM, and a patch decoder to improve modeling efficiency for high-rate sequences and bridge the length mismatch between speech and text. The patch encoder aggregates four consecutive time steps of RVQ tokens into a single patch, downsampling the sequence to a 6.25 Hz representation for the LLM. The patch decoder autoregressively generates the full 25 Hz RVQ token sequence via a delayed-generation scheme.
61
+ ### MiMo-Audio
62
+ <p align="center">
63
+ <img width="95%" src="https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/assets/architecture.png?raw=true">
64
+ </p>
65
+
66
+ ## Explore MiMo-Audio Now! 🚀🚀🚀
67
+ - 🎧 **Try the Hugging Face demo:** [MiMo-Audio Demo](https://huggingface.co/spaces/XiaomiMiMo/mimo_audio_chat)
68
+ - 📰 **Read the Official Blog:** [MiMo-Audio Blog](https://xiaomimimo.github.io/MiMo-Audio-Demo)
69
+ - 📄 **Dive into the Technical Report:** [MiMo-Audio Technical Report](https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/MiMo-Audio-Technical-Report.pdf)
70
+
71
+
72
+ ## Model Download
73
+ | Models | 🤗 Hugging Face |
74
+ |-------|-------|
75
+ | MiMo-Audio-Tokenizer | [XiaomiMiMo/MiMo-Audio-Tokenizer](https://huggingface.co/XiaomiMiMo/MiMo-Audio-Tokenizer) |
76
+ | MiMo-Audio-7B-Base | [XiaomiMiMo/MiMo-Audio-7B-Base](https://huggingface.co/XiaomiMiMo/MiMo-Audio-7B-Base) |
77
+ | MiMo-Audio-7B-Instruct | [XiaomiMiMo/MiMo-Audio-7B-Instruct](https://huggingface.co/XiaomiMiMo/MiMo-Audio-7B-Instruct) |
78
+
79
+
80
+
81
+ ## Getting Started
82
+
83
+ Spin up the MiMo-Audio demo in minutes with the built-in Gradio app.
84
+
85
+ ### Installation
86
+ ``` sh
87
+ git clone https://github.com/XiaomiMiMo/MiMo-Audio.git
88
+ cd MiMo-Audio
89
+ pip install -e .
90
+ ```
91
+ ### Run the demo
92
+ ``` sh
93
+ python run_mimo_audio.py
94
+ ```
95
+
96
+ This launches a local Gradio interface where you can try MiMo-Audio interactively.
97
+
98
+ <p align="center">
99
+ <img width="95%" src="https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/assets/demo_ui.jpg?raw=true">
100
+ </p>
101
+
102
+ Enter the local paths for `MiMo-Audio-Tokenizer` and `MiMo-Audio-7B-Instruct`, then enjoy the full functionality of MiMo-Audio!
103
+
104
+ ## Inference Scripts
105
+
106
+ ### Base Model
107
+ We provide an example script to explore the **in-context learning** capabilities of `MiMo-Audio-7B-Base`.
108
+ See: [`inference_example_pretrain.py`](https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/inference_example_pretrain.py)
109
+
110
+ ### Instruct Model
111
+ To try the instruction-tuned model `MiMo-Audio-7B-Instruct`, use the corresponding inference script.
112
+ See: [`inference_example_sft.py`](https://github.com/XiaomiMiMo/MiMo-Audio/blob/main/inference_example_sft.py)
113
+
114
+
115
+
116
+ ## Evaluation Toolkit
117
+ Full evaluation suite are available at 🌐[MiMo-Audio-Eval](https://github.com/XiaomiMiMo/MiMo-Audio-Eval).
118
+
119
+
120
+ This toolkit is designed to evaluate MiMo-Audio and other recent audio LLMs as mentioned in the paper. It provides a flexible and extensible framework, supporting a wide range of datasets, tasks, and models.
121
+
122
+ ## Citation
123
+
124
+ ```bibtex
125
+ @misc{coreteam2025mimoaudio,
126
+ title={MiMo-Audio: Audio Language Models are Few-Shot Learners},
127
+ author={LLM-Core-Team Xiaomi},
128
+ year={2025},
129
+ url={GitHub - XiaomiMiMo/MiMo-Audio},
130
+ }
131
+ ```
132
+
133
+
134
+ ## Contact
135
+
136
+ Please contact us at [mimo@xiaomi.com](mailto:mimo@xiaomi.com) or open an issue if you have any questions.
config.json ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "max_audio_seconds": 1800,
3
+ "stride_size": 2,
4
+ "avg_pooler": 2,
5
+ "d_model": 1280,
6
+ "scale_embedding": false,
7
+ "kernel_size": 3,
8
+ "activation_function": "gelu",
9
+ "encoder_layers": 32,
10
+ "encoder_skip_layer_id": 3,
11
+ "encoder_attention_heads": 20,
12
+ "encoder_ffn_dim": 5120,
13
+ "encoder_causal": false,
14
+ "encoder_attn_window_size": [
15
+ -1,
16
+ -1
17
+ ],
18
+ "decoder_layers": 32,
19
+ "decoder_attention_heads": 20,
20
+ "decoder_ffn_dim": 5120,
21
+ "decoder_kernel_size": 3,
22
+ "decoder_stride_size": 2,
23
+ "decoder_causal": true,
24
+ "decoder_attn_window_size": [
25
+ -1,
26
+ -1
27
+ ],
28
+ "nfft": 960,
29
+ "vocoder_dim": 256,
30
+ "vocoder_intermediate_dim": 1024,
31
+ "vocoder_num_layers": 16,
32
+ "n_mels": 128,
33
+ "sampling_rate": 24000,
34
+ "hop_length": 240,
35
+ "window_size": 960,
36
+ "vocoder_padding": "same",
37
+ "fmin": 0,
38
+ "fmax": null,
39
+ "num_quantizers": 20,
40
+ "codebook_size": [
41
+ 1024,
42
+ 1024,
43
+ 128,
44
+ 128,
45
+ 128,
46
+ 128,
47
+ 128,
48
+ 128,
49
+ 128,
50
+ 128,
51
+ 128,
52
+ 128,
53
+ 128,
54
+ 128,
55
+ 128,
56
+ 128,
57
+ 128,
58
+ 128,
59
+ 128,
60
+ 128
61
+ ],
62
+ "threshold_ema_dead_code": 2,
63
+ "position_embedding_type": "rope",
64
+ "rope_theta": 10000,
65
+ "rope_type": "default",
66
+ "ln_type": "LayerNorm",
67
+ "vocoder_attention_heads": 16,
68
+ "vocoder_attn_window_size": [
69
+ 40,
70
+ 10
71
+ ]
72
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2614f14d9d692bed0b695cc7283f8dd65c9beaf10376853c9b9888844745e847
3
+ size 3906690080