zhifeixie commited on
Commit
c7deb87
·
verified ·
1 Parent(s): 49707c0

Add files using upload-large-folder tool

Browse files
.DS_Store ADDED
Binary file (6.15 kB). View file
 
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ qwen25OmniConfig/tokenizer.json filter=lfs diff=lfs merge=lfs -text
MiniOmni3_ChunkwisedEncoder.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c5d3e438a5a4bff83f1fa248eeec32a5b6e985b381488df771d45adc83960f9b
3
+ size 1280756193
config.json ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen2ForCausalLM"
4
+ ],
5
+ "attention_dropout": 0.0,
6
+ "bos_token_id": 151643,
7
+ "eos_token_id": 151643,
8
+ "hidden_act": "silu",
9
+ "hidden_size": 2048,
10
+ "initializer_range": 0.02,
11
+ "intermediate_size": 11008,
12
+ "max_position_embeddings": 32768,
13
+ "max_window_layers": 36,
14
+ "model_type": "qwen2",
15
+ "num_attention_heads": 16,
16
+ "num_hidden_layers": 36,
17
+ "num_key_value_heads": 2,
18
+ "rms_norm_eps": 1e-06,
19
+ "rope_theta": 1000000.0,
20
+ "sliding_window": 32768,
21
+ "tie_word_embeddings": true,
22
+ "torch_dtype": "bfloat16",
23
+ "transformers_version": "4.40.1",
24
+ "use_cache": true,
25
+ "use_mrope": false,
26
+ "use_sliding_window": false,
27
+ "vocab_size": 151936
28
+ }
generation_config.json ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {
2
+ "bos_token_id": 151643,
3
+ "do_sample": false,
4
+ "eos_token_id": 151643,
5
+ "max_new_tokens": 2048,
6
+ "transformers_version": "4.37.0"
7
+ }
hyperparameters.yaml ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ checkpoint_dir: /mnt/home/xiezhifei/projects/zh/checkpoint/stage1_paskale2e/qwen-2.5-3B
2
+ out_dir: /data/zihang/paskal/checkpoint/train___stage_c_benchmark_v2
3
+ devices: 8
4
+ num_nodes: 1
5
+ resume: false
6
+ train:
7
+ save_interval: 50
8
+ log_interval: 3
9
+ global_batch_size: 64
10
+ micro_batch_size: 2
11
+ lr_warmup_steps: 100
12
+ epochs: 2
13
+ max_seq_length: 4096
14
+ min_lr: 6.0e-05
15
+ eval:
16
+ interval: 25
17
+ max_new_tokens: 2000
18
+ max_iters: 500
19
+ initial_validation: true
20
+ final_validation: true
21
+ evaluate_example: first
22
+ optimizer: AdamW
23
+ logger_name: tensorboard
24
+ seed: 1337
model-00001-of-00004.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:10515031694eab7c284f43a6866b2fc569ab2fca2bfc84afad07a19cb91b6f2b
3
+ size 3940686120
model-00002-of-00004.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2225da7d4313ea645ddd27b88d95e177af894feda93ede872c826a23e9e93122
3
+ size 3917837088
model-00003-of-00004.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f78d5bd16d98b24295b5e986ec45c9ec4811309a68e20dcafc8a8866cabe3a17
3
+ size 3917837144
model-00004-of-00004.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:63a7f57635a6f9c209cf75752d15897540cc3cadba32aed283e614112d4e9a65
3
+ size 1812085376
model.safetensors.index.json ADDED
@@ -0,0 +1,298 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "metadata": {
3
+ "total_size": 13588414464
4
+ },
5
+ "weight_map": {
6
+ "lm_head.weight": "model-00001-of-00004.safetensors",
7
+ "transformer.wte.weight": "model-00001-of-00004.safetensors",
8
+ "transformer.h.0.norm_1.weight": "model-00001-of-00004.safetensors",
9
+ "transformer.h.0.attn.qkv.weight": "model-00001-of-00004.safetensors",
10
+ "transformer.h.0.attn.qkv.bias": "model-00001-of-00004.safetensors",
11
+ "transformer.h.0.attn.proj.weight": "model-00001-of-00004.safetensors",
12
+ "transformer.h.0.norm_2.weight": "model-00001-of-00004.safetensors",
13
+ "transformer.h.0.mlp.fc_1.weight": "model-00001-of-00004.safetensors",
14
+ "transformer.h.0.mlp.fc_2.weight": "model-00001-of-00004.safetensors",
15
+ "transformer.h.0.mlp.proj.weight": "model-00001-of-00004.safetensors",
16
+ "transformer.h.1.norm_1.weight": "model-00001-of-00004.safetensors",
17
+ "transformer.h.1.attn.qkv.weight": "model-00001-of-00004.safetensors",
18
+ "transformer.h.1.attn.qkv.bias": "model-00001-of-00004.safetensors",
19
+ "transformer.h.1.attn.proj.weight": "model-00001-of-00004.safetensors",
20
+ "transformer.h.1.norm_2.weight": "model-00001-of-00004.safetensors",
21
+ "transformer.h.1.mlp.fc_1.weight": "model-00001-of-00004.safetensors",
22
+ "transformer.h.1.mlp.fc_2.weight": "model-00001-of-00004.safetensors",
23
+ "transformer.h.1.mlp.proj.weight": "model-00001-of-00004.safetensors",
24
+ "transformer.h.2.norm_1.weight": "model-00001-of-00004.safetensors",
25
+ "transformer.h.2.attn.qkv.weight": "model-00001-of-00004.safetensors",
26
+ "transformer.h.2.attn.qkv.bias": "model-00001-of-00004.safetensors",
27
+ "transformer.h.2.attn.proj.weight": "model-00001-of-00004.safetensors",
28
+ "transformer.h.2.norm_2.weight": "model-00001-of-00004.safetensors",
29
+ "transformer.h.2.mlp.fc_1.weight": "model-00001-of-00004.safetensors",
30
+ "transformer.h.2.mlp.fc_2.weight": "model-00001-of-00004.safetensors",
31
+ "transformer.h.2.mlp.proj.weight": "model-00001-of-00004.safetensors",
32
+ "transformer.h.3.norm_1.weight": "model-00001-of-00004.safetensors",
33
+ "transformer.h.3.attn.qkv.weight": "model-00001-of-00004.safetensors",
34
+ "transformer.h.3.attn.qkv.bias": "model-00001-of-00004.safetensors",
35
+ "transformer.h.3.attn.proj.weight": "model-00001-of-00004.safetensors",
36
+ "transformer.h.3.norm_2.weight": "model-00001-of-00004.safetensors",
37
+ "transformer.h.3.mlp.fc_1.weight": "model-00001-of-00004.safetensors",
38
+ "transformer.h.3.mlp.fc_2.weight": "model-00001-of-00004.safetensors",
39
+ "transformer.h.3.mlp.proj.weight": "model-00001-of-00004.safetensors",
40
+ "transformer.h.4.norm_1.weight": "model-00001-of-00004.safetensors",
41
+ "transformer.h.4.attn.qkv.weight": "model-00001-of-00004.safetensors",
42
+ "transformer.h.4.attn.qkv.bias": "model-00001-of-00004.safetensors",
43
+ "transformer.h.4.attn.proj.weight": "model-00001-of-00004.safetensors",
44
+ "transformer.h.4.norm_2.weight": "model-00001-of-00004.safetensors",
45
+ "transformer.h.4.mlp.fc_1.weight": "model-00001-of-00004.safetensors",
46
+ "transformer.h.4.mlp.fc_2.weight": "model-00001-of-00004.safetensors",
47
+ "transformer.h.4.mlp.proj.weight": "model-00002-of-00004.safetensors",
48
+ "transformer.h.5.norm_1.weight": "model-00002-of-00004.safetensors",
49
+ "transformer.h.5.attn.qkv.weight": "model-00002-of-00004.safetensors",
50
+ "transformer.h.5.attn.qkv.bias": "model-00002-of-00004.safetensors",
51
+ "transformer.h.5.attn.proj.weight": "model-00002-of-00004.safetensors",
52
+ "transformer.h.5.norm_2.weight": "model-00002-of-00004.safetensors",
53
+ "transformer.h.5.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
54
+ "transformer.h.5.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
55
+ "transformer.h.5.mlp.proj.weight": "model-00002-of-00004.safetensors",
56
+ "transformer.h.6.norm_1.weight": "model-00002-of-00004.safetensors",
57
+ "transformer.h.6.attn.qkv.weight": "model-00002-of-00004.safetensors",
58
+ "transformer.h.6.attn.qkv.bias": "model-00002-of-00004.safetensors",
59
+ "transformer.h.6.attn.proj.weight": "model-00002-of-00004.safetensors",
60
+ "transformer.h.6.norm_2.weight": "model-00002-of-00004.safetensors",
61
+ "transformer.h.6.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
62
+ "transformer.h.6.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
63
+ "transformer.h.6.mlp.proj.weight": "model-00002-of-00004.safetensors",
64
+ "transformer.h.7.norm_1.weight": "model-00002-of-00004.safetensors",
65
+ "transformer.h.7.attn.qkv.weight": "model-00002-of-00004.safetensors",
66
+ "transformer.h.7.attn.qkv.bias": "model-00002-of-00004.safetensors",
67
+ "transformer.h.7.attn.proj.weight": "model-00002-of-00004.safetensors",
68
+ "transformer.h.7.norm_2.weight": "model-00002-of-00004.safetensors",
69
+ "transformer.h.7.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
70
+ "transformer.h.7.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
71
+ "transformer.h.7.mlp.proj.weight": "model-00002-of-00004.safetensors",
72
+ "transformer.h.8.norm_1.weight": "model-00002-of-00004.safetensors",
73
+ "transformer.h.8.attn.qkv.weight": "model-00002-of-00004.safetensors",
74
+ "transformer.h.8.attn.qkv.bias": "model-00002-of-00004.safetensors",
75
+ "transformer.h.8.attn.proj.weight": "model-00002-of-00004.safetensors",
76
+ "transformer.h.8.norm_2.weight": "model-00002-of-00004.safetensors",
77
+ "transformer.h.8.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
78
+ "transformer.h.8.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
79
+ "transformer.h.8.mlp.proj.weight": "model-00002-of-00004.safetensors",
80
+ "transformer.h.9.norm_1.weight": "model-00002-of-00004.safetensors",
81
+ "transformer.h.9.attn.qkv.weight": "model-00002-of-00004.safetensors",
82
+ "transformer.h.9.attn.qkv.bias": "model-00002-of-00004.safetensors",
83
+ "transformer.h.9.attn.proj.weight": "model-00002-of-00004.safetensors",
84
+ "transformer.h.9.norm_2.weight": "model-00002-of-00004.safetensors",
85
+ "transformer.h.9.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
86
+ "transformer.h.9.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
87
+ "transformer.h.9.mlp.proj.weight": "model-00002-of-00004.safetensors",
88
+ "transformer.h.10.norm_1.weight": "model-00002-of-00004.safetensors",
89
+ "transformer.h.10.attn.qkv.weight": "model-00002-of-00004.safetensors",
90
+ "transformer.h.10.attn.qkv.bias": "model-00002-of-00004.safetensors",
91
+ "transformer.h.10.attn.proj.weight": "model-00002-of-00004.safetensors",
92
+ "transformer.h.10.norm_2.weight": "model-00002-of-00004.safetensors",
93
+ "transformer.h.10.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
94
+ "transformer.h.10.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
95
+ "transformer.h.10.mlp.proj.weight": "model-00002-of-00004.safetensors",
96
+ "transformer.h.11.norm_1.weight": "model-00002-of-00004.safetensors",
97
+ "transformer.h.11.attn.qkv.weight": "model-00002-of-00004.safetensors",
98
+ "transformer.h.11.attn.qkv.bias": "model-00002-of-00004.safetensors",
99
+ "transformer.h.11.attn.proj.weight": "model-00002-of-00004.safetensors",
100
+ "transformer.h.11.norm_2.weight": "model-00002-of-00004.safetensors",
101
+ "transformer.h.11.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
102
+ "transformer.h.11.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
103
+ "transformer.h.11.mlp.proj.weight": "model-00002-of-00004.safetensors",
104
+ "transformer.h.12.norm_1.weight": "model-00002-of-00004.safetensors",
105
+ "transformer.h.12.attn.qkv.weight": "model-00002-of-00004.safetensors",
106
+ "transformer.h.12.attn.qkv.bias": "model-00002-of-00004.safetensors",
107
+ "transformer.h.12.attn.proj.weight": "model-00002-of-00004.safetensors",
108
+ "transformer.h.12.norm_2.weight": "model-00002-of-00004.safetensors",
109
+ "transformer.h.12.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
110
+ "transformer.h.12.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
111
+ "transformer.h.12.mlp.proj.weight": "model-00002-of-00004.safetensors",
112
+ "transformer.h.13.norm_1.weight": "model-00002-of-00004.safetensors",
113
+ "transformer.h.13.attn.qkv.weight": "model-00002-of-00004.safetensors",
114
+ "transformer.h.13.attn.qkv.bias": "model-00002-of-00004.safetensors",
115
+ "transformer.h.13.attn.proj.weight": "model-00002-of-00004.safetensors",
116
+ "transformer.h.13.norm_2.weight": "model-00002-of-00004.safetensors",
117
+ "transformer.h.13.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
118
+ "transformer.h.13.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
119
+ "transformer.h.13.mlp.proj.weight": "model-00002-of-00004.safetensors",
120
+ "transformer.h.14.norm_1.weight": "model-00002-of-00004.safetensors",
121
+ "transformer.h.14.attn.qkv.weight": "model-00002-of-00004.safetensors",
122
+ "transformer.h.14.attn.qkv.bias": "model-00002-of-00004.safetensors",
123
+ "transformer.h.14.attn.proj.weight": "model-00002-of-00004.safetensors",
124
+ "transformer.h.14.norm_2.weight": "model-00002-of-00004.safetensors",
125
+ "transformer.h.14.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
126
+ "transformer.h.14.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
127
+ "transformer.h.14.mlp.proj.weight": "model-00002-of-00004.safetensors",
128
+ "transformer.h.15.norm_1.weight": "model-00002-of-00004.safetensors",
129
+ "transformer.h.15.attn.qkv.weight": "model-00002-of-00004.safetensors",
130
+ "transformer.h.15.attn.qkv.bias": "model-00002-of-00004.safetensors",
131
+ "transformer.h.15.attn.proj.weight": "model-00002-of-00004.safetensors",
132
+ "transformer.h.15.norm_2.weight": "model-00002-of-00004.safetensors",
133
+ "transformer.h.15.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
134
+ "transformer.h.15.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
135
+ "transformer.h.15.mlp.proj.weight": "model-00002-of-00004.safetensors",
136
+ "transformer.h.16.norm_1.weight": "model-00002-of-00004.safetensors",
137
+ "transformer.h.16.attn.qkv.weight": "model-00002-of-00004.safetensors",
138
+ "transformer.h.16.attn.qkv.bias": "model-00002-of-00004.safetensors",
139
+ "transformer.h.16.attn.proj.weight": "model-00002-of-00004.safetensors",
140
+ "transformer.h.16.norm_2.weight": "model-00002-of-00004.safetensors",
141
+ "transformer.h.16.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
142
+ "transformer.h.16.mlp.fc_2.weight": "model-00002-of-00004.safetensors",
143
+ "transformer.h.16.mlp.proj.weight": "model-00002-of-00004.safetensors",
144
+ "transformer.h.17.norm_1.weight": "model-00002-of-00004.safetensors",
145
+ "transformer.h.17.attn.qkv.weight": "model-00002-of-00004.safetensors",
146
+ "transformer.h.17.attn.qkv.bias": "model-00002-of-00004.safetensors",
147
+ "transformer.h.17.attn.proj.weight": "model-00002-of-00004.safetensors",
148
+ "transformer.h.17.norm_2.weight": "model-00002-of-00004.safetensors",
149
+ "transformer.h.17.mlp.fc_1.weight": "model-00002-of-00004.safetensors",
150
+ "transformer.h.17.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
151
+ "transformer.h.17.mlp.proj.weight": "model-00003-of-00004.safetensors",
152
+ "transformer.h.18.norm_1.weight": "model-00003-of-00004.safetensors",
153
+ "transformer.h.18.attn.qkv.weight": "model-00003-of-00004.safetensors",
154
+ "transformer.h.18.attn.qkv.bias": "model-00003-of-00004.safetensors",
155
+ "transformer.h.18.attn.proj.weight": "model-00003-of-00004.safetensors",
156
+ "transformer.h.18.norm_2.weight": "model-00003-of-00004.safetensors",
157
+ "transformer.h.18.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
158
+ "transformer.h.18.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
159
+ "transformer.h.18.mlp.proj.weight": "model-00003-of-00004.safetensors",
160
+ "transformer.h.19.norm_1.weight": "model-00003-of-00004.safetensors",
161
+ "transformer.h.19.attn.qkv.weight": "model-00003-of-00004.safetensors",
162
+ "transformer.h.19.attn.qkv.bias": "model-00003-of-00004.safetensors",
163
+ "transformer.h.19.attn.proj.weight": "model-00003-of-00004.safetensors",
164
+ "transformer.h.19.norm_2.weight": "model-00003-of-00004.safetensors",
165
+ "transformer.h.19.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
166
+ "transformer.h.19.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
167
+ "transformer.h.19.mlp.proj.weight": "model-00003-of-00004.safetensors",
168
+ "transformer.h.20.norm_1.weight": "model-00003-of-00004.safetensors",
169
+ "transformer.h.20.attn.qkv.weight": "model-00003-of-00004.safetensors",
170
+ "transformer.h.20.attn.qkv.bias": "model-00003-of-00004.safetensors",
171
+ "transformer.h.20.attn.proj.weight": "model-00003-of-00004.safetensors",
172
+ "transformer.h.20.norm_2.weight": "model-00003-of-00004.safetensors",
173
+ "transformer.h.20.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
174
+ "transformer.h.20.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
175
+ "transformer.h.20.mlp.proj.weight": "model-00003-of-00004.safetensors",
176
+ "transformer.h.21.norm_1.weight": "model-00003-of-00004.safetensors",
177
+ "transformer.h.21.attn.qkv.weight": "model-00003-of-00004.safetensors",
178
+ "transformer.h.21.attn.qkv.bias": "model-00003-of-00004.safetensors",
179
+ "transformer.h.21.attn.proj.weight": "model-00003-of-00004.safetensors",
180
+ "transformer.h.21.norm_2.weight": "model-00003-of-00004.safetensors",
181
+ "transformer.h.21.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
182
+ "transformer.h.21.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
183
+ "transformer.h.21.mlp.proj.weight": "model-00003-of-00004.safetensors",
184
+ "transformer.h.22.norm_1.weight": "model-00003-of-00004.safetensors",
185
+ "transformer.h.22.attn.qkv.weight": "model-00003-of-00004.safetensors",
186
+ "transformer.h.22.attn.qkv.bias": "model-00003-of-00004.safetensors",
187
+ "transformer.h.22.attn.proj.weight": "model-00003-of-00004.safetensors",
188
+ "transformer.h.22.norm_2.weight": "model-00003-of-00004.safetensors",
189
+ "transformer.h.22.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
190
+ "transformer.h.22.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
191
+ "transformer.h.22.mlp.proj.weight": "model-00003-of-00004.safetensors",
192
+ "transformer.h.23.norm_1.weight": "model-00003-of-00004.safetensors",
193
+ "transformer.h.23.attn.qkv.weight": "model-00003-of-00004.safetensors",
194
+ "transformer.h.23.attn.qkv.bias": "model-00003-of-00004.safetensors",
195
+ "transformer.h.23.attn.proj.weight": "model-00003-of-00004.safetensors",
196
+ "transformer.h.23.norm_2.weight": "model-00003-of-00004.safetensors",
197
+ "transformer.h.23.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
198
+ "transformer.h.23.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
199
+ "transformer.h.23.mlp.proj.weight": "model-00003-of-00004.safetensors",
200
+ "transformer.h.24.norm_1.weight": "model-00003-of-00004.safetensors",
201
+ "transformer.h.24.attn.qkv.weight": "model-00003-of-00004.safetensors",
202
+ "transformer.h.24.attn.qkv.bias": "model-00003-of-00004.safetensors",
203
+ "transformer.h.24.attn.proj.weight": "model-00003-of-00004.safetensors",
204
+ "transformer.h.24.norm_2.weight": "model-00003-of-00004.safetensors",
205
+ "transformer.h.24.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
206
+ "transformer.h.24.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
207
+ "transformer.h.24.mlp.proj.weight": "model-00003-of-00004.safetensors",
208
+ "transformer.h.25.norm_1.weight": "model-00003-of-00004.safetensors",
209
+ "transformer.h.25.attn.qkv.weight": "model-00003-of-00004.safetensors",
210
+ "transformer.h.25.attn.qkv.bias": "model-00003-of-00004.safetensors",
211
+ "transformer.h.25.attn.proj.weight": "model-00003-of-00004.safetensors",
212
+ "transformer.h.25.norm_2.weight": "model-00003-of-00004.safetensors",
213
+ "transformer.h.25.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
214
+ "transformer.h.25.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
215
+ "transformer.h.25.mlp.proj.weight": "model-00003-of-00004.safetensors",
216
+ "transformer.h.26.norm_1.weight": "model-00003-of-00004.safetensors",
217
+ "transformer.h.26.attn.qkv.weight": "model-00003-of-00004.safetensors",
218
+ "transformer.h.26.attn.qkv.bias": "model-00003-of-00004.safetensors",
219
+ "transformer.h.26.attn.proj.weight": "model-00003-of-00004.safetensors",
220
+ "transformer.h.26.norm_2.weight": "model-00003-of-00004.safetensors",
221
+ "transformer.h.26.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
222
+ "transformer.h.26.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
223
+ "transformer.h.26.mlp.proj.weight": "model-00003-of-00004.safetensors",
224
+ "transformer.h.27.norm_1.weight": "model-00003-of-00004.safetensors",
225
+ "transformer.h.27.attn.qkv.weight": "model-00003-of-00004.safetensors",
226
+ "transformer.h.27.attn.qkv.bias": "model-00003-of-00004.safetensors",
227
+ "transformer.h.27.attn.proj.weight": "model-00003-of-00004.safetensors",
228
+ "transformer.h.27.norm_2.weight": "model-00003-of-00004.safetensors",
229
+ "transformer.h.27.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
230
+ "transformer.h.27.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
231
+ "transformer.h.27.mlp.proj.weight": "model-00003-of-00004.safetensors",
232
+ "transformer.h.28.norm_1.weight": "model-00003-of-00004.safetensors",
233
+ "transformer.h.28.attn.qkv.weight": "model-00003-of-00004.safetensors",
234
+ "transformer.h.28.attn.qkv.bias": "model-00003-of-00004.safetensors",
235
+ "transformer.h.28.attn.proj.weight": "model-00003-of-00004.safetensors",
236
+ "transformer.h.28.norm_2.weight": "model-00003-of-00004.safetensors",
237
+ "transformer.h.28.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
238
+ "transformer.h.28.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
239
+ "transformer.h.28.mlp.proj.weight": "model-00003-of-00004.safetensors",
240
+ "transformer.h.29.norm_1.weight": "model-00003-of-00004.safetensors",
241
+ "transformer.h.29.attn.qkv.weight": "model-00003-of-00004.safetensors",
242
+ "transformer.h.29.attn.qkv.bias": "model-00003-of-00004.safetensors",
243
+ "transformer.h.29.attn.proj.weight": "model-00003-of-00004.safetensors",
244
+ "transformer.h.29.norm_2.weight": "model-00003-of-00004.safetensors",
245
+ "transformer.h.29.mlp.fc_1.weight": "model-00003-of-00004.safetensors",
246
+ "transformer.h.29.mlp.fc_2.weight": "model-00003-of-00004.safetensors",
247
+ "transformer.h.29.mlp.proj.weight": "model-00003-of-00004.safetensors",
248
+ "transformer.h.30.norm_1.weight": "model-00003-of-00004.safetensors",
249
+ "transformer.h.30.attn.qkv.weight": "model-00003-of-00004.safetensors",
250
+ "transformer.h.30.attn.qkv.bias": "model-00003-of-00004.safetensors",
251
+ "transformer.h.30.attn.proj.weight": "model-00003-of-00004.safetensors",
252
+ "transformer.h.30.norm_2.weight": "model-00003-of-00004.safetensors",
253
+ "transformer.h.30.mlp.fc_1.weight": "model-00004-of-00004.safetensors",
254
+ "transformer.h.30.mlp.fc_2.weight": "model-00004-of-00004.safetensors",
255
+ "transformer.h.30.mlp.proj.weight": "model-00004-of-00004.safetensors",
256
+ "transformer.h.31.norm_1.weight": "model-00004-of-00004.safetensors",
257
+ "transformer.h.31.attn.qkv.weight": "model-00004-of-00004.safetensors",
258
+ "transformer.h.31.attn.qkv.bias": "model-00004-of-00004.safetensors",
259
+ "transformer.h.31.attn.proj.weight": "model-00004-of-00004.safetensors",
260
+ "transformer.h.31.norm_2.weight": "model-00004-of-00004.safetensors",
261
+ "transformer.h.31.mlp.fc_1.weight": "model-00004-of-00004.safetensors",
262
+ "transformer.h.31.mlp.fc_2.weight": "model-00004-of-00004.safetensors",
263
+ "transformer.h.31.mlp.proj.weight": "model-00004-of-00004.safetensors",
264
+ "transformer.h.32.norm_1.weight": "model-00004-of-00004.safetensors",
265
+ "transformer.h.32.attn.qkv.weight": "model-00004-of-00004.safetensors",
266
+ "transformer.h.32.attn.qkv.bias": "model-00004-of-00004.safetensors",
267
+ "transformer.h.32.attn.proj.weight": "model-00004-of-00004.safetensors",
268
+ "transformer.h.32.norm_2.weight": "model-00004-of-00004.safetensors",
269
+ "transformer.h.32.mlp.fc_1.weight": "model-00004-of-00004.safetensors",
270
+ "transformer.h.32.mlp.fc_2.weight": "model-00004-of-00004.safetensors",
271
+ "transformer.h.32.mlp.proj.weight": "model-00004-of-00004.safetensors",
272
+ "transformer.h.33.norm_1.weight": "model-00004-of-00004.safetensors",
273
+ "transformer.h.33.attn.qkv.weight": "model-00004-of-00004.safetensors",
274
+ "transformer.h.33.attn.qkv.bias": "model-00004-of-00004.safetensors",
275
+ "transformer.h.33.attn.proj.weight": "model-00004-of-00004.safetensors",
276
+ "transformer.h.33.norm_2.weight": "model-00004-of-00004.safetensors",
277
+ "transformer.h.33.mlp.fc_1.weight": "model-00004-of-00004.safetensors",
278
+ "transformer.h.33.mlp.fc_2.weight": "model-00004-of-00004.safetensors",
279
+ "transformer.h.33.mlp.proj.weight": "model-00004-of-00004.safetensors",
280
+ "transformer.h.34.norm_1.weight": "model-00004-of-00004.safetensors",
281
+ "transformer.h.34.attn.qkv.weight": "model-00004-of-00004.safetensors",
282
+ "transformer.h.34.attn.qkv.bias": "model-00004-of-00004.safetensors",
283
+ "transformer.h.34.attn.proj.weight": "model-00004-of-00004.safetensors",
284
+ "transformer.h.34.norm_2.weight": "model-00004-of-00004.safetensors",
285
+ "transformer.h.34.mlp.fc_1.weight": "model-00004-of-00004.safetensors",
286
+ "transformer.h.34.mlp.fc_2.weight": "model-00004-of-00004.safetensors",
287
+ "transformer.h.34.mlp.proj.weight": "model-00004-of-00004.safetensors",
288
+ "transformer.h.35.norm_1.weight": "model-00004-of-00004.safetensors",
289
+ "transformer.h.35.attn.qkv.weight": "model-00004-of-00004.safetensors",
290
+ "transformer.h.35.attn.qkv.bias": "model-00004-of-00004.safetensors",
291
+ "transformer.h.35.attn.proj.weight": "model-00004-of-00004.safetensors",
292
+ "transformer.h.35.norm_2.weight": "model-00004-of-00004.safetensors",
293
+ "transformer.h.35.mlp.fc_1.weight": "model-00004-of-00004.safetensors",
294
+ "transformer.h.35.mlp.fc_2.weight": "model-00004-of-00004.safetensors",
295
+ "transformer.h.35.mlp.proj.weight": "model-00004-of-00004.safetensors",
296
+ "transformer.ln_f.weight": "model-00004-of-00004.safetensors"
297
+ }
298
+ }
model_config.yaml ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ attention_logit_softcapping: null
2
+ attention_scores_scalar: null
3
+ attn_bias: true
4
+ bias: false
5
+ block_size: 32768
6
+ final_logit_softcapping: null
7
+ gelu_approximate: none
8
+ head_size: 128
9
+ hf_config:
10
+ name: Qwen2.5-3B
11
+ org: Qwen
12
+ intermediate_size: 11008
13
+ lm_head_bias: false
14
+ mlp_class_name: LLaMAMLP
15
+ n_embd: 2048
16
+ n_expert: 0
17
+ n_expert_per_token: 0
18
+ n_head: 16
19
+ n_layer: 36
20
+ n_query_groups: 2
21
+ name: Qwen2.5-3B
22
+ norm_class_name: RMSNorm
23
+ norm_eps: 1.0e-06
24
+ norm_qk: false
25
+ padded_vocab_size: 151936
26
+ padding_multiple: 512
27
+ parallel_residual: false
28
+ post_attention_norm: false
29
+ post_mlp_norm: false
30
+ rope_adjustments: null
31
+ rope_base: 1000000
32
+ rope_condense_ratio: 1
33
+ rotary_percentage: 1.0
34
+ scale_embeddings: false
35
+ shared_attention_norm: false
36
+ sliding_window_layer_placing: null
37
+ sliding_window_size: null
38
+ vocab_size: 151643
qwen25OmniConfig/.gitattributes ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.rar filter=lfs diff=lfs merge=lfs -text
25
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
26
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
27
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar filter=lfs diff=lfs merge=lfs -text
29
+ *.tflite filter=lfs diff=lfs merge=lfs -text
30
+ *.tgz filter=lfs diff=lfs merge=lfs -text
31
+ *.wasm filter=lfs diff=lfs merge=lfs -text
32
+ *.xz filter=lfs diff=lfs merge=lfs -text
33
+ *.zip filter=lfs diff=lfs merge=lfs -text
34
+ *.zst filter=lfs diff=lfs merge=lfs -text
35
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
qwen25OmniConfig/LICENSE ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Qwen RESEARCH LICENSE AGREEMENT
2
+
3
+ Qwen RESEARCH LICENSE AGREEMENT Release Date: September 19, 2024
4
+
5
+ By clicking to agree or by using or distributing any portion or element of the Qwen Materials, you will be deemed to have recognized and accepted the content of this Agreement, which is effective immediately.
6
+
7
+ 1. Definitions
8
+ a. This Qwen RESEARCH LICENSE AGREEMENT (this "Agreement") shall mean the terms and conditions for use, reproduction, distribution and modification of the Materials as defined by this Agreement.
9
+ b. "We" (or "Us") shall mean Alibaba Cloud.
10
+ c. "You" (or "Your") shall mean a natural person or legal entity exercising the rights granted by this Agreement and/or using the Materials for any purpose and in any field of use.
11
+ d. "Third Parties" shall mean individuals or legal entities that are not under common control with us or you.
12
+ e. "Qwen" shall mean the large language models, and software and algorithms, consisting of trained model weights, parameters (including optimizer states), machine-learning model code, inference-enabling code, training-enabling code, fine-tuning enabling code and other elements of the foregoing distributed by us.
13
+ f. "Materials" shall mean, collectively, Alibaba Cloud's proprietary Qwen and Documentation (and any portion thereof) made available under this Agreement.
14
+ g. "Source" form shall mean the preferred form for making modifications, including but not limited to model source code, documentation source, and configuration files.
15
+ h. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
16
+ i. "Non-Commercial" shall mean for research or evaluation purposes only.
17
+
18
+ 2. Grant of Rights
19
+ a. You are granted a non-exclusive, worldwide, non-transferable and royalty-free limited license under Alibaba Cloud's intellectual property or other rights owned by us embodied in the Materials to use, reproduce, distribute, copy, create derivative works of, and make modifications to the Materials FOR NON-COMMERCIAL PURPOSES ONLY.
20
+ b. If you are commercially using the Materials, you shall request a license from us.
21
+
22
+ 3. Redistribution
23
+ You may distribute copies or make the Materials, or derivative works thereof, available as part of a product or service that contains any of them, with or without modifications, and in Source or Object form, provided that you meet the following conditions:
24
+ a. You shall give any other recipients of the Materials or derivative works a copy of this Agreement;
25
+ b. You shall cause any modified files to carry prominent notices stating that you changed the files;
26
+ c. You shall retain in all copies of the Materials that you distribute the following attribution notices within a "Notice" text file distributed as a part of such copies: "Qwen is licensed under the Qwen RESEARCH LICENSE AGREEMENT, Copyright (c) Alibaba Cloud. All Rights Reserved."; and
27
+ d. You may add your own copyright statement to your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of your modifications, or for any such derivative works as a whole, provided your use, reproduction, and distribution of the work otherwise complies with the terms and conditions of this Agreement.
28
+
29
+ 4. Rules of use
30
+ a. The Materials may be subject to export controls or restrictions in China, the United States or other countries or regions. You shall comply with applicable laws and regulations in your use of the Materials.
31
+ b. If you use the Materials or any outputs or results therefrom to create, train, fine-tune, or improve an AI model that is distributed or made available, you shall prominently display “Built with Qwen” or “Improved using Qwen” in the related product documentation.
32
+
33
+ 5. Intellectual Property
34
+ a. We retain ownership of all intellectual property rights in and to the Materials and derivatives made by or for us. Conditioned upon compliance with the terms and conditions of this Agreement, with respect to any derivative works and modifications of the Materials that are made by you, you are and will be the owner of such derivative works and modifications.
35
+ b. No trademark license is granted to use the trade names, trademarks, service marks, or product names of us, except as required to fulfill notice requirements under this Agreement or as required for reasonable and customary use in describing and redistributing the Materials.
36
+ c. If you commence a lawsuit or other proceedings (including a cross-claim or counterclaim in a lawsuit) against us or any entity alleging that the Materials or any output therefrom, or any part of the foregoing, infringe any intellectual property or other right owned or licensable by you, then all licenses granted to you under this Agreement shall terminate as of the date such lawsuit or other proceeding is commenced or brought.
37
+ 6. Disclaimer of Warranty and Limitation of Liability
38
+ a. We are not obligated to support, update, provide training for, or develop any further version of the Qwen Materials or to grant any license thereto.
39
+ b. THE MATERIALS ARE PROVIDED "AS IS" WITHOUT ANY EXPRESS OR IMPLIED WARRANTY OF ANY KIND INCLUDING WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT, OR FITNESS FOR A PARTICULAR PURPOSE. WE MAKE NO WARRANTY AND ASSUME NO RESPONSIBILITY FOR THE SAFETY OR STABILITY OF THE MATERIALS AND ANY OUTPUT THEREFROM.
40
+ c. IN NO EVENT SHALL WE BE LIABLE TO YOU FOR ANY DAMAGES, INCLUDING, BUT NOT LIMITED TO ANY DIRECT, OR INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING FROM YOUR USE OR INABILITY TO USE THE MATERIALS OR ANY OUTPUT OF IT, NO MATTER HOW IT’S CAUSED.
41
+ d. You will defend, indemnify and hold harmless us from and against any claim by any third party arising out of or related to your use or distribution of the Materials.
42
+
43
+ 7. Survival and Termination.
44
+ a. The term of this Agreement shall commence upon your acceptance of this Agreement or access to the Materials and will continue in full force and effect until terminated in accordance with the terms and conditions herein.
45
+ b. We may terminate this Agreement if you breach any of the terms or conditions of this Agreement. Upon termination of this Agreement, you must delete and cease use of the Materials. Sections 6 and 8 shall survive the termination of this Agreement.
46
+
47
+ 8. Governing Law and Jurisdiction.
48
+ a. This Agreement and any dispute arising out of or relating to it will be governed by the laws of China, without regard to conflict of law principles, and the UN Convention on Contracts for the International Sale of Goods does not apply to this Agreement.
49
+ b. The People's Courts in Hangzhou City shall have exclusive jurisdiction over any dispute arising out of this Agreement.
50
+ 9. Other Terms and Conditions.
51
+ a. Any arrangements, understandings, or agreements regarding the Material not stated herein are separate from and independent of the terms and conditions of this Agreement. You shall request a separate license from us, if you use the Materials in ways not expressly agreed to in this Agreement.
52
+ b. We shall not be bound by any additional or different terms or conditions communicated by you unless expressly agreed.
53
+
qwen25OmniConfig/README.md ADDED
@@ -0,0 +1,983 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: other
3
+ license_name: qwen-research
4
+ license_link: LICENSE
5
+ language:
6
+ - en
7
+ tags:
8
+ - multimodal
9
+ library_name: transformers
10
+ pipeline_tag: any-to-any
11
+ ---
12
+
13
+ # Qwen2.5-Omni
14
+ <a href="https://chat.qwen.ai/" target="_blank" style="margin: 2px;">
15
+ <img alt="Chat" src="https://img.shields.io/badge/%F0%9F%92%9C%EF%B8%8F%20Qwen%20Chat%20-536af5" style="display: inline-block; vertical-align: middle;"/>
16
+ </a>
17
+
18
+
19
+ ## Overview
20
+ ### Introduction
21
+ Qwen2.5-Omni is an end-to-end multimodal model designed to perceive diverse modalities, including text, images, audio, and video, while simultaneously generating text and natural speech responses in a streaming manner.
22
+
23
+ <p align="center">
24
+ <img src="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/qwen_omni.png" width="80%"/>
25
+ <p>
26
+
27
+ ### Key Features
28
+
29
+ * **Omni and Novel Architecture**: We propose Thinker-Talker architecture, an end-to-end multimodal model designed to perceive diverse modalities, including text, images, audio, and video, while simultaneously generating text and natural speech responses in a streaming manner. We propose a novel position embedding, named TMRoPE (Time-aligned Multimodal RoPE), to synchronize the timestamps of video inputs with audio.
30
+
31
+ * **Real-Time Voice and Video Chat**: Architecture designed for fully real-time interactions, supporting chunked input and immediate output.
32
+
33
+ * **Natural and Robust Speech Generation**: Surpassing many existing streaming and non-streaming alternatives, demonstrating superior robustness and naturalness in speech generation.
34
+
35
+ * **Strong Performance Across Modalities**: Exhibiting exceptional performance across all modalities when benchmarked against similarly sized single-modality models. Qwen2.5-Omni outperforms the similarly sized Qwen2-Audio in audio capabilities and achieves comparable performance to Qwen2.5-VL-7B.
36
+
37
+ * **Excellent End-to-End Speech Instruction Following**: Qwen2.5-Omni shows performance in end-to-end speech instruction following that rivals its effectiveness with text inputs, evidenced by benchmarks such as MMLU and GSM8K.
38
+
39
+ ### Model Architecture
40
+
41
+ <p align="center">
42
+ <img src="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/overview.png" width="80%"/>
43
+ <p>
44
+
45
+ ### Performance
46
+
47
+ We conducted a comprehensive evaluation of Qwen2.5-Omni, which demonstrates strong performance across all modalities when compared to similarly sized single-modality models and closed-source models like Qwen2.5-VL-7B, Qwen2-Audio, and Gemini-1.5-pro. In tasks requiring the integration of multiple modalities, such as OmniBench, Qwen2.5-Omni achieves state-of-the-art performance. Furthermore, in single-modality tasks, it excels in areas including speech recognition (Common Voice), translation (CoVoST2), audio understanding (MMAU), image reasoning (MMMU, MMStar), video understanding (MVBench), and speech generation (Seed-tts-eval and subjective naturalness).
48
+
49
+ <p align="center">
50
+ <img src="https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/bar.png" width="80%"/>
51
+ <p>
52
+
53
+ <details>
54
+ <summary>Multimodality -> Text</summary>
55
+
56
+ <table class="tg"><thead>
57
+ <tr>
58
+ <th class="tg-0lax">Datasets</th>
59
+ <th class="tg-0lax">Model</th>
60
+ <th class="tg-0lax">Performance</th>
61
+ </tr></thead>
62
+ <tbody>
63
+ <tr>
64
+ <td class="tg-0lax" rowspan="10">OmniBench<br>Speech | Sound Event | Music | Avg</td>
65
+ <td class="tg-0lax">Gemini-1.5-Pro</td>
66
+ <td class="tg-0lax">42.67%|42.26%|46.23%|42.91%</td>
67
+ </tr>
68
+ <tr>
69
+ <td class="tg-0lax">MIO-Instruct</td>
70
+ <td class="tg-0lax">36.96%|33.58%|11.32%|33.80%</td>
71
+ </tr>
72
+ <tr>
73
+ <td class="tg-0lax">AnyGPT (7B)</td>
74
+ <td class="tg-0lax">17.77%|20.75%|13.21%|18.04%</td>
75
+ </tr>
76
+ <tr>
77
+ <td class="tg-0lax">video-SALMONN</td>
78
+ <td class="tg-0lax">34.11%|31.70%|<strong>56.60%</strong>|35.64%</td>
79
+ </tr>
80
+ <tr>
81
+ <td class="tg-0lax">UnifiedIO2-xlarge</td>
82
+ <td class="tg-0lax">39.56%|36.98%|29.25%|38.00%</td>
83
+ </tr>
84
+ <tr>
85
+ <td class="tg-0lax">UnifiedIO2-xxlarge</td>
86
+ <td class="tg-0lax">34.24%|36.98%|24.53%|33.98%</td>
87
+ </tr>
88
+ <tr>
89
+ <td class="tg-0lax">MiniCPM-o</td>
90
+ <td class="tg-0lax">-|-|-|40.50%</td>
91
+ </tr>
92
+ <tr>
93
+ <td class="tg-0lax">Baichuan-Omni-1.5</td>
94
+ <td class="tg-0lax">-|-|-|42.90%</td>
95
+ </tr>
96
+ <tr>
97
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
98
+ <td class="tg-0lax">52.14%|52.08%|52.83%|52.19%</td>
99
+ </tr>
100
+ <tr>
101
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
102
+ <td class="tg-0lax"><strong>55.25%</strong>|<strong>60.00%</strong>|52.83%|<strong>56.13%</strong></td>
103
+ </tr>
104
+ </tbody></table>
105
+ </details>
106
+
107
+
108
+ <details>
109
+ <summary>Audio -> Text</summary>
110
+
111
+
112
+ <table class="tg"><thead>
113
+ <tr>
114
+ <th class="tg-0lax">Datasets</th>
115
+ <th class="tg-0lax">Model</th>
116
+ <th class="tg-0lax">Performance</th>
117
+ </tr></thead>
118
+ <tbody>
119
+ <tr>
120
+ <td class="tg-9j4x" colspan="3">ASR</td>
121
+ </tr>
122
+ <tr>
123
+ <td class="tg-0lax" rowspan="12">Librispeech<br>dev-clean | dev other | test-clean | test-other</td>
124
+ <td class="tg-0lax">SALMONN</td>
125
+ <td class="tg-0lax">-|-|2.1|4.9</td>
126
+ </tr>
127
+ <tr>
128
+ <td class="tg-0lax">SpeechVerse</td>
129
+ <td class="tg-0lax">-|-|2.1|4.4</td>
130
+ </tr>
131
+ <tr>
132
+ <td class="tg-0lax">Whisper-large-v3</td>
133
+ <td class="tg-0lax">-|-|1.8|3.6</td>
134
+ </tr>
135
+ <tr>
136
+ <td class="tg-0lax">Llama-3-8B</td>
137
+ <td class="tg-0lax">-|-|-|3.4</td>
138
+ </tr>
139
+ <tr>
140
+ <td class="tg-0lax">Llama-3-70B</td>
141
+ <td class="tg-0lax">-|-|-|3.1</td>
142
+ </tr>
143
+ <tr>
144
+ <td class="tg-0lax">Seed-ASR-Multilingual</td>
145
+ <td class="tg-0lax">-|-|<strong>1.6</strong>|<strong>2.8</strong></td>
146
+ </tr>
147
+ <tr>
148
+ <td class="tg-0lax">MiniCPM-o</td>
149
+ <td class="tg-0lax">-|-|1.7|-</td>
150
+ </tr>
151
+ <tr>
152
+ <td class="tg-0lax">MinMo</td>
153
+ <td class="tg-0lax">-|-|1.7|3.9</td>
154
+ </tr>
155
+ <tr>
156
+ <td class="tg-0lax">Qwen-Audio</td>
157
+ <td class="tg-0lax">1.8|4.0|2.0|4.2</td>
158
+ </tr>
159
+ <tr>
160
+ <td class="tg-0lax">Qwen2-Audio</td>
161
+ <td class="tg-0lax"><strong>1.3</strong>|<strong>3.4</strong>|<strong>1.6</strong>|3.6</td>
162
+ </tr>
163
+ <tr>
164
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
165
+ <td class="tg-0lax">2.0|4.1|2.2|4.5</td>
166
+ </tr>
167
+ <tr>
168
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
169
+ <td class="tg-0lax">1.6|3.5|1.8|3.4</td>
170
+ </tr>
171
+ <tr>
172
+ <td class="tg-0lax" rowspan="5">Common Voice 15<br>en | zh | yue | fr</td>
173
+ <td class="tg-0lax">Whisper-large-v3</td>
174
+ <td class="tg-0lax">9.3|12.8|10.9|10.8</td>
175
+ </tr>
176
+ <tr>
177
+ <td class="tg-0lax">MinMo</td>
178
+ <td class="tg-0lax">7.9|6.3|6.4|8.5</td>
179
+ </tr>
180
+ <tr>
181
+ <td class="tg-0lax">Qwen2-Audio</td>
182
+ <td class="tg-0lax">8.6|6.9|<strong>5.9</strong>|9.6</td>
183
+ </tr>
184
+ <tr>
185
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
186
+ <td class="tg-0lax">9.1|6.0|11.6|9.6</td>
187
+ </tr>
188
+ <tr>
189
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
190
+ <td class="tg-0lax"><strong>7.6</strong>|<strong>5.2</strong>|7.3|<strong>7.5</strong></td>
191
+ </tr>
192
+ <tr>
193
+ <td class="tg-0lax" rowspan="8">Fleurs<br>zh | en</td>
194
+ <td class="tg-0lax">Whisper-large-v3</td>
195
+ <td class="tg-0lax">7.7|4.1</td>
196
+ </tr>
197
+ <tr>
198
+ <td class="tg-0lax">Seed-ASR-Multilingual</td>
199
+ <td class="tg-0lax">-|<strong>3.4</strong></td>
200
+ </tr>
201
+ <tr>
202
+ <td class="tg-0lax">Megrez-3B-Omni</td>
203
+ <td class="tg-0lax">10.8|-</td>
204
+ </tr>
205
+ <tr>
206
+ <td class="tg-0lax">MiniCPM-o</td>
207
+ <td class="tg-0lax">4.4|-</td>
208
+ </tr>
209
+ <tr>
210
+ <td class="tg-0lax">MinMo</td>
211
+ <td class="tg-0lax">3.0|3.8</td>
212
+ </tr>
213
+ <tr>
214
+ <td class="tg-0lax">Qwen2-Audio</td>
215
+ <td class="tg-0lax">7.5|-</td>
216
+ </tr>
217
+ <tr>
218
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
219
+ <td class="tg-0lax">3.2|5.4</td>
220
+ </tr>
221
+ <tr>
222
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
223
+ <td class="tg-0lax"><strong>3.0</strong>|4.1</td>
224
+ </tr>
225
+ <tr>
226
+ <td class="tg-0lax" rowspan="6">Wenetspeech<br>test-net | test-meeting</td>
227
+ <td class="tg-0lax">Seed-ASR-Chinese</td>
228
+ <td class="tg-0lax"><strong>4.7|5.7</strong></td>
229
+ </tr>
230
+ <tr>
231
+ <td class="tg-0lax">Megrez-3B-Omni</td>
232
+ <td class="tg-0lax">-|16.4</td>
233
+ </tr>
234
+ <tr>
235
+ <td class="tg-0lax">MiniCPM-o</td>
236
+ <td class="tg-0lax">6.9|-</td>
237
+ </tr>
238
+ <tr>
239
+ <td class="tg-0lax">MinMo</td>
240
+ <td class="tg-0lax">6.8|7.4</td>
241
+ </tr>
242
+ <tr>
243
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
244
+ <td class="tg-0lax">6.3|8.1</td>
245
+ </tr>
246
+ <tr>
247
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
248
+ <td class="tg-0lax">5.9|7.7</td>
249
+ </tr>
250
+ <tr>
251
+ <td class="tg-0lax" rowspan="4">Voxpopuli-V1.0-en</td>
252
+ <td class="tg-0lax">Llama-3-8B</td>
253
+ <td class="tg-0lax">6.2</td>
254
+ </tr>
255
+ <tr>
256
+ <td class="tg-0lax">Llama-3-70B</td>
257
+ <td class="tg-0lax"><strong>5.7</strong></td>
258
+ </tr>
259
+ <tr>
260
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
261
+ <td class="tg-0lax">6.6</td>
262
+ </tr>
263
+ <tr>
264
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
265
+ <td class="tg-0lax">5.8</td>
266
+ </tr>
267
+ <tr>
268
+ <td class="tg-9j4x" colspan="3">S2TT</td>
269
+ </tr>
270
+ <tr>
271
+ <td class="tg-0lax" rowspan="9">CoVoST2<br>en-de | de-en | en-zh | zh-en</td>
272
+ <td class="tg-0lax">SALMONN</td>
273
+ <td class="tg-0lax">18.6|-|33.1|-</td>
274
+ </tr>
275
+ <tr>
276
+ <td class="tg-0lax">SpeechLLaMA</td>
277
+ <td class="tg-0lax">-|27.1|-|12.3</td>
278
+ </tr>
279
+ <tr>
280
+ <td class="tg-0lax">BLSP</td>
281
+ <td class="tg-0lax">14.1|-|-|-</td>
282
+ </tr>
283
+ <tr>
284
+ <td class="tg-0lax">MiniCPM-o</td>
285
+ <td class="tg-0lax">-|-|<strong>48.2</strong>|27.2</td>
286
+ </tr>
287
+ <tr>
288
+ <td class="tg-0lax">MinMo</td>
289
+ <td class="tg-0lax">-|<strong>39.9</strong>|46.7|26.0</td>
290
+ </tr>
291
+ <tr>
292
+ <td class="tg-0lax">Qwen-Audio</td>
293
+ <td class="tg-0lax">25.1|33.9|41.5|15.7</td>
294
+ </tr>
295
+ <tr>
296
+ <td class="tg-0lax">Qwen2-Audio</td>
297
+ <td class="tg-0lax">29.9|35.2|45.2|24.4</td>
298
+ </tr>
299
+ <tr>
300
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
301
+ <td class="tg-0lax">28.3|38.1|41.4|26.6</td>
302
+ </tr>
303
+ <tr>
304
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
305
+ <td class="tg-0lax"><strong>30.2</strong>|37.7|41.4|<strong>29.4</strong></td>
306
+ </tr>
307
+ <tr>
308
+ <td class="tg-9j4x" colspan="3">SER</td>
309
+ </tr>
310
+ <tr>
311
+ <td class="tg-0lax" rowspan="6">Meld</td>
312
+ <td class="tg-0lax">WavLM-large</td>
313
+ <td class="tg-0lax">0.542</td>
314
+ </tr>
315
+ <tr>
316
+ <td class="tg-0lax">MiniCPM-o</td>
317
+ <td class="tg-0lax">0.524</td>
318
+ </tr>
319
+ <tr>
320
+ <td class="tg-0lax">Qwen-Audio</td>
321
+ <td class="tg-0lax">0.557</td>
322
+ </tr>
323
+ <tr>
324
+ <td class="tg-0lax">Qwen2-Audio</td>
325
+ <td class="tg-0lax">0.553</td>
326
+ </tr>
327
+ <tr>
328
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
329
+ <td class="tg-0lax">0.558</td>
330
+ </tr>
331
+ <tr>
332
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
333
+ <td class="tg-0lax"><strong>0.570</strong></td>
334
+ </tr>
335
+ <tr>
336
+ <td class="tg-9j4x" colspan="3">VSC</td>
337
+ </tr>
338
+ <tr>
339
+ <td class="tg-0lax" rowspan="6">VocalSound</td>
340
+ <td class="tg-0lax">CLAP</td>
341
+ <td class="tg-0lax">0.495</td>
342
+ </tr>
343
+ <tr>
344
+ <td class="tg-0lax">Pengi</td>
345
+ <td class="tg-0lax">0.604</td>
346
+ </tr>
347
+ <tr>
348
+ <td class="tg-0lax">Qwen-Audio</td>
349
+ <td class="tg-0lax">0.929</td>
350
+ </tr>
351
+ <tr>
352
+ <td class="tg-0lax">Qwen2-Audio</td>
353
+ <td class="tg-0lax"><strong>0.939</strong></td>
354
+ </tr>
355
+ <tr>
356
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
357
+ <td class="tg-0lax">0.936</td>
358
+ </tr>
359
+ <tr>
360
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
361
+ <td class="tg-0lax"><strong>0.939</strong></td>
362
+ </tr>
363
+ <tr>
364
+ <td class="tg-9j4x" colspan="3">Music</td>
365
+ </tr>
366
+ <tr>
367
+ <td class="tg-0lax" rowspan="3">GiantSteps Tempo</td>
368
+ <td class="tg-0lax">Llark-7B</td>
369
+ <td class="tg-0lax">0.86</td>
370
+ </tr>
371
+ <tr>
372
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
373
+ <td class="tg-0lax"><strong>0.88</strong></td>
374
+ </tr>
375
+ <tr>
376
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
377
+ <td class="tg-0lax"><strong>0.88</strong></td>
378
+ </tr>
379
+ <tr>
380
+ <td class="tg-0lax" rowspan="3">MusicCaps</td>
381
+ <td class="tg-0lax">LP-MusicCaps</td>
382
+ <td class="tg-0lax">0.291|0.149|0.089|<strong>0.061</strong>|0.129|0.130</td>
383
+ </tr>
384
+ <tr>
385
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
386
+ <td class="tg-0lax">0.325|<strong>0.163</strong>|<strong>0.093</strong>|0.057|<strong>0.132</strong>|<strong>0.229</strong></td>
387
+ </tr>
388
+ <tr>
389
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
390
+ <td class="tg-0lax"><strong>0.328</strong>|0.162|0.090|0.055|0.127|0.225</td>
391
+ </tr>
392
+ <tr>
393
+ <td class="tg-9j4x" colspan="3">Audio Reasoning</td>
394
+ </tr>
395
+ <tr>
396
+ <td class="tg-0lax" rowspan="4">MMAU<br>Sound | Music | Speech | Avg</td>
397
+ <td class="tg-0lax">Gemini-Pro-V1.5</td>
398
+ <td class="tg-0lax">56.75|49.40|58.55|54.90</td>
399
+ </tr>
400
+ <tr>
401
+ <td class="tg-0lax">Qwen2-Audio</td>
402
+ <td class="tg-0lax">54.95|50.98|42.04|49.20</td>
403
+ </tr>
404
+ <tr>
405
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
406
+ <td class="tg-0lax"><strong>70.27</strong>|60.48|59.16|63.30</td>
407
+ </tr>
408
+ <tr>
409
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
410
+ <td class="tg-0lax">67.87|<strong>69.16|59.76|65.60</strong></td>
411
+ </tr>
412
+ <tr>
413
+ <td class="tg-9j4x" colspan="3">Voice Chatting</td>
414
+ </tr>
415
+ <tr>
416
+ <td class="tg-0lax" rowspan="9">VoiceBench<br>AlpacaEval | CommonEval | SD-QA | MMSU</td>
417
+ <td class="tg-0lax">Ultravox-v0.4.1-LLaMA-3.1-8B</td>
418
+ <td class="tg-0lax"><strong>4.55</strong>|3.90|53.35|47.17</td>
419
+ </tr>
420
+ <tr>
421
+ <td class="tg-0lax">MERaLiON</td>
422
+ <td class="tg-0lax">4.50|3.77|55.06|34.95</td>
423
+ </tr>
424
+ <tr>
425
+ <td class="tg-0lax">Megrez-3B-Omni</td>
426
+ <td class="tg-0lax">3.50|2.95|25.95|27.03</td>
427
+ </tr>
428
+ <tr>
429
+ <td class="tg-0lax">Lyra-Base</td>
430
+ <td class="tg-0lax">3.85|3.50|38.25|49.74</td>
431
+ </tr>
432
+ <tr>
433
+ <td class="tg-0lax">MiniCPM-o</td>
434
+ <td class="tg-0lax">4.42|<strong>4.15</strong>|50.72|54.78</td>
435
+ </tr>
436
+ <tr>
437
+ <td class="tg-0lax">Baichuan-Omni-1.5</td>
438
+ <td class="tg-0lax">4.50|4.05|43.40|57.25</td>
439
+ </tr>
440
+ <tr>
441
+ <td class="tg-0lax">Qwen2-Audio</td>
442
+ <td class="tg-0lax">3.74|3.43|35.71|35.72</td>
443
+ </tr>
444
+ <tr>
445
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
446
+ <td class="tg-0lax">4.32|4.00|49.37|50.23</td>
447
+ </tr>
448
+ <tr>
449
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
450
+ <td class="tg-0lax">4.49|3.93|<strong>55.71</strong>|<strong>61.32</strong></td>
451
+ </tr>
452
+ <tr>
453
+ <td class="tg-0lax" rowspan="9">VoiceBench<br>OpenBookQA | IFEval | AdvBench | Avg</td>
454
+ <td class="tg-0lax">Ultravox-v0.4.1-LLaMA-3.1-8B</td>
455
+ <td class="tg-0lax">65.27|<strong>66.88</strong>|98.46|71.45</td>
456
+ </tr>
457
+ <tr>
458
+ <td class="tg-0lax">MERaLiON</td>
459
+ <td class="tg-0lax">27.23|62.93|94.81|62.91</td>
460
+ </tr>
461
+ <tr>
462
+ <td class="tg-0lax">Megrez-3B-Omni</td>
463
+ <td class="tg-0lax">28.35|25.71|87.69|46.25</td>
464
+ </tr>
465
+ <tr>
466
+ <td class="tg-0lax">Lyra-Base</td>
467
+ <td class="tg-0lax">72.75|36.28|59.62|57.66</td>
468
+ </tr>
469
+ <tr>
470
+ <td class="tg-0lax">MiniCPM-o</td>
471
+ <td class="tg-0lax">78.02|49.25|97.69|71.69</td>
472
+ </tr>
473
+ <tr>
474
+ <td class="tg-0lax">Baichuan-Omni-1.5</td>
475
+ <td class="tg-0lax">74.51|54.54|97.31|71.14</td>
476
+ </tr>
477
+ <tr>
478
+ <td class="tg-0lax">Qwen2-Audio</td>
479
+ <td class="tg-0lax">49.45|26.33|96.73|55.35</td>
480
+ </tr>
481
+ <tr>
482
+ <td class="tg-0lax">Qwen2.5-Omni-3B</td>
483
+ <td class="tg-0lax">74.73|42.10|98.85|68.81</td>
484
+ </tr>
485
+ <tr>
486
+ <td class="tg-0lax">Qwen2.5-Omni-7B</td>
487
+ <td class="tg-0lax"><strong>81.10</strong>|52.87|<strong>99.42</strong>|<strong>74.12</strong></td>
488
+ </tr>
489
+ </tbody></table>
490
+ </details>
491
+
492
+ <details>
493
+ <summary>Image -> Text</summary>
494
+
495
+ | Dataset | Qwen2.5-Omni-7B | Qwen2.5-Omni-3B | Other Best | Qwen2.5-VL-7B | GPT-4o-mini |
496
+ |--------------------------------|--------------|------------|------------|---------------|-------------|
497
+ | MMMU<sub>val</sub> | 59.2 | 53.1 | 53.9 | 58.6 | **60.0** |
498
+ | MMMU-Pro<sub>overall</sub> | 36.6 | 29.7 | - | **38.3** | 37.6 |
499
+ | MathVista<sub>testmini</sub> | 67.9 | 59.4 | **71.9** | 68.2 | 52.5 |
500
+ | MathVision<sub>full</sub> | 25.0 | 20.8 | 23.1 | **25.1** | - |
501
+ | MMBench-V1.1-EN<sub>test</sub> | 81.8 | 77.8 | 80.5 | **82.6** | 76.0 |
502
+ | MMVet<sub>turbo</sub> | 66.8 | 62.1 | **67.5** | 67.1 | 66.9 |
503
+ | MMStar | **64.0** | 55.7 | **64.0** | 63.9 | 54.8 |
504
+ | MME<sub>sum</sub> | 2340 | 2117 | **2372** | 2347 | 2003 |
505
+ | MuirBench | 59.2 | 48.0 | - | **59.2** | - |
506
+ | CRPE<sub>relation</sub> | **76.5** | 73.7 | - | 76.4 | - |
507
+ | RealWorldQA<sub>avg</sub> | 70.3 | 62.6 | **71.9** | 68.5 | - |
508
+ | MME-RealWorld<sub>en</sub> | **61.6** | 55.6 | - | 57.4 | - |
509
+ | MM-MT-Bench | 6.0 | 5.0 | - | **6.3** | - |
510
+ | AI2D | 83.2 | 79.5 | **85.8** | 83.9 | - |
511
+ | TextVQA<sub>val</sub> | 84.4 | 79.8 | 83.2 | **84.9** | - |
512
+ | DocVQA<sub>test</sub> | 95.2 | 93.3 | 93.5 | **95.7** | - |
513
+ | ChartQA<sub>test Avg</sub> | 85.3 | 82.8 | 84.9 | **87.3** | - |
514
+ | OCRBench_V2<sub>en</sub> | **57.8** | 51.7 | - | 56.3 | - |
515
+
516
+
517
+ | Dataset | Qwen2.5-Omni-7B | Qwen2.5-Omni-3B | Qwen2.5-VL-7B | Grounding DINO | Gemini 1.5 Pro |
518
+ |--------------------------|--------------|---------------|---------------|----------------|----------------|
519
+ | Refcoco<sub>val</sub> | 90.5 | 88.7 | 90.0 | **90.6** | 73.2 |
520
+ | Refcoco<sub>textA</sub> | **93.5** | 91.8 | 92.5 | 93.2 | 72.9 |
521
+ | Refcoco<sub>textB</sub> | 86.6 | 84.0 | 85.4 | **88.2** | 74.6 |
522
+ | Refcoco+<sub>val</sub> | 85.4 | 81.1 | 84.2 | **88.2** | 62.5 |
523
+ | Refcoco+<sub>textA</sub> | **91.0** | 87.5 | 89.1 | 89.0 | 63.9 |
524
+ | Refcoco+<sub>textB</sub> | **79.3** | 73.2 | 76.9 | 75.9 | 65.0 |
525
+ | Refcocog+<sub>val</sub> | **87.4** | 85.0 | 87.2 | 86.1 | 75.2 |
526
+ | Refcocog+<sub>test</sub> | **87.9** | 85.1 | 87.2 | 87.0 | 76.2 |
527
+ | ODinW | 42.4 | 39.2 | 37.3 | **55.0** | 36.7 |
528
+ | PointGrounding | 66.5 | 46.2 | **67.3** | - | - |
529
+ </details>
530
+
531
+
532
+ <details>
533
+ <summary>Video(without audio) -> Text</summary>
534
+
535
+ | Dataset | Qwen2.5-Omni-7B | Qwen2.5-Omni-3B | Other Best | Qwen2.5-VL-7B | GPT-4o-mini |
536
+ |-----------------------------|--------------|------------|------------|---------------|-------------|
537
+ | Video-MME<sub>w/o sub</sub> | 64.3 | 62.0 | 63.9 | **65.1** | 64.8 |
538
+ | Video-MME<sub>w sub</sub> | **72.4** | 68.6 | 67.9 | 71.6 | - |
539
+ | MVBench | **70.3** | 68.7 | 67.2 | 69.6 | - |
540
+ | EgoSchema<sub>test</sub> | **68.6** | 61.4 | 63.2 | 65.0 | - |
541
+ </details>
542
+
543
+ <details>
544
+ <summary>Zero-shot Speech Generation</summary>
545
+
546
+
547
+ <table class="tg"><thead>
548
+ <tr>
549
+ <th class="tg-0lax">Datasets</th>
550
+ <th class="tg-0lax">Model</th>
551
+ <th class="tg-0lax">Performance</th>
552
+ </tr></thead>
553
+ <tbody>
554
+ <tr>
555
+ <td class="tg-9j4x" colspan="3">Content Consistency</td>
556
+ </tr>
557
+ <tr>
558
+ <td class="tg-0lax" rowspan="11">SEED<br>test-zh | test-en | test-hard </td>
559
+ <td class="tg-0lax">Seed-TTS_ICL</td>
560
+ <td class="tg-0lax">1.11 | 2.24 | 7.58</td>
561
+ </tr>
562
+ <tr>
563
+ <td class="tg-0lax">Seed-TTS_RL</td>
564
+ <td class="tg-0lax"><strong>1.00</strong> | 1.94 | <strong>6.42</strong></td>
565
+ </tr>
566
+ <tr>
567
+ <td class="tg-0lax">MaskGCT</td>
568
+ <td class="tg-0lax">2.27 | 2.62 | 10.27</td>
569
+ </tr>
570
+ <tr>
571
+ <td class="tg-0lax">E2_TTS</td>
572
+ <td class="tg-0lax">1.97 | 2.19 | -</td>
573
+ </tr>
574
+ <tr>
575
+ <td class="tg-0lax">F5-TTS</td>
576
+ <td class="tg-0lax">1.56 | <strong>1.83</strong> | 8.67</td>
577
+ </tr>
578
+ <tr>
579
+ <td class="tg-0lax">CosyVoice 2</td>
580
+ <td class="tg-0lax">1.45 | 2.57 | 6.83</td>
581
+ </tr>
582
+ <tr>
583
+ <td class="tg-0lax">CosyVoice 2-S</td>
584
+ <td class="tg-0lax">1.45 | 2.38 | 8.08</td>
585
+ </tr>
586
+ <tr>
587
+ <td class="tg-0lax">Qwen2.5-Omni-3B_ICL</td>
588
+ <td class="tg-0lax">1.95 | 2.87 | 9.92</td>
589
+ </tr>
590
+ <tr>
591
+ <td class="tg-0lax">Qwen2.5-Omni-3B_RL</td>
592
+ <td class="tg-0lax">1.58 | 2.51 | 7.86</td>
593
+ </tr>
594
+ <tr>
595
+ <td class="tg-0lax">Qwen2.5-Omni-7B_ICL</td>
596
+ <td class="tg-0lax">1.70 | 2.72 | 7.97</td>
597
+ </tr>
598
+ <tr>
599
+ <td class="tg-0lax">Qwen2.5-Omni-7B_RL</td>
600
+ <td class="tg-0lax">1.42 | 2.32 | 6.54</td>
601
+ </tr>
602
+ <tr>
603
+ <td class="tg-9j4x" colspan="3">Speaker Similarity</td>
604
+ </tr>
605
+ <tr>
606
+ <td class="tg-0lax" rowspan="11">SEED<br>test-zh | test-en | test-hard </td>
607
+ <td class="tg-0lax">Seed-TTS_ICL</td>
608
+ <td class="tg-0lax">0.796 | 0.762 | 0.776</td>
609
+ </tr>
610
+ <tr>
611
+ <td class="tg-0lax">Seed-TTS_RL</td>
612
+ <td class="tg-0lax"><strong>0.801</strong> | <strong>0.766</strong> | <strong>0.782</strong></td>
613
+ </tr>
614
+ <tr>
615
+ <td class="tg-0lax">MaskGCT</td>
616
+ <td class="tg-0lax">0.774 | 0.714 | 0.748</td>
617
+ </tr>
618
+ <tr>
619
+ <td class="tg-0lax">E2_TTS</td>
620
+ <td class="tg-0lax">0.730 | 0.710 | -</td>
621
+ </tr>
622
+ <tr>
623
+ <td class="tg-0lax">F5-TTS</td>
624
+ <td class="tg-0lax">0.741 | 0.647 | 0.713</td>
625
+ </tr>
626
+ <tr>
627
+ <td class="tg-0lax">CosyVoice 2</td>
628
+ <td class="tg-0lax">0.748 | 0.652 | 0.724</td>
629
+ </tr>
630
+ <tr>
631
+ <td class="tg-0lax">CosyVoice 2-S</td>
632
+ <td class="tg-0lax">0.753 | 0.654 | 0.732</td>
633
+ </tr>
634
+ <tr>
635
+ <td class="tg-0lax">Qwen2.5-Omni-3B_ICL</td>
636
+ <td class="tg-0lax">0.741 | 0.635 | 0.748</td>
637
+ </tr>
638
+ <tr>
639
+ <td class="tg-0lax">Qwen2.5-Omni-3B_RL</td>
640
+ <td class="tg-0lax">0.744 | 0.635 | 0.746</td>
641
+ </tr>
642
+ <tr>
643
+ <td class="tg-0lax">Qwen2.5-Omni-7B_ICL</td>
644
+ <td class="tg-0lax">0.752 | 0.632 | 0.747</td>
645
+ </tr>
646
+ <tr>
647
+ <td class="tg-0lax">Qwen2.5-Omni-7B_RL</td>
648
+ <td class="tg-0lax">0.754 | 0.641 | 0.752</td>
649
+ </tr>
650
+ </tbody></table>
651
+ </details>
652
+
653
+ <details>
654
+ <summary>Text -> Text</summary>
655
+
656
+ | Dataset | Qwen2.5-Omni-7B | Qwen2.5-Omni-3B | Qwen2.5-7B | Qwen2.5-3B | Qwen2-7B | Llama3.1-8B | Gemma2-9B |
657
+ |-----------------------------------|-----------|------------|------------|------------|------------|-------------|-----------|
658
+ | MMLU-Pro | 47.0 | 40.4 | **56.3** | 43.7 | 44.1 | 48.3 | 52.1 |
659
+ | MMLU-redux | 71.0 | 60.9 | **75.4** | 64.4 | 67.3 | 67.2 | 72.8 |
660
+ | LiveBench<sub>0831</sub> | 29.6 | 22.3 | **35.9** | 26.8 | 29.2 | 26.7 | 30.6 |
661
+ | GPQA | 30.8 | 34.3 | **36.4** | 30.3 | 34.3 | 32.8 | 32.8 |
662
+ | MATH | 71.5 | 63.6 | **75.5** | 65.9 | 52.9 | 51.9 | 44.3 |
663
+ | GSM8K | 88.7 | 82.6 | **91.6** | 86.7 | 85.7 | 84.5 | 76.7 |
664
+ | HumanEval | 78.7 | 70.7 | **84.8** | 74.4 | 79.9 | 72.6 | 68.9 |
665
+ | MBPP | 73.2 | 70.4 | **79.2** | 72.7 | 67.2 | 69.6 | 74.9 |
666
+ | MultiPL-E | 65.8 | 57.6 | **70.4** | 60.2 | 59.1 | 50.7 | 53.4 |
667
+ | LiveCodeBench<sub>2305-2409</sub> | 24.6 | 16.5 | **28.7** | 19.9 | 23.9 | 8.3 | 18.9 |
668
+ </details>
669
+
670
+ ## Quickstart
671
+
672
+ Below, we provide simple examples to show how to use Qwen2.5-Omni with 🤗 Transformers. The codes of Qwen2.5-Omni has been in the latest Hugging face transformers and we advise you to build from source with command:
673
+ ```
674
+ pip uninstall transformers
675
+ pip install git+https://github.com/huggingface/transformers@v4.51.3-Qwen2.5-Omni-preview
676
+ pip install accelerate
677
+ ```
678
+ or you might encounter the following error:
679
+ ```
680
+ KeyError: 'qwen2_5_omni'
681
+ ```
682
+
683
+
684
+ We offer a toolkit to help you handle various types of audio and visual input more conveniently, as if you were using an API. This includes base64, URLs, and interleaved audio, images and videos. You can install it using the following command and make sure your system has `ffmpeg` installed:
685
+
686
+ ```bash
687
+ # It's highly recommended to use `[decord]` feature for faster video loading.
688
+ pip install qwen-omni-utils[decord] -U
689
+ ```
690
+
691
+ If you are not using Linux, you might not be able to install `decord` from PyPI. In that case, you can use `pip install qwen-omni-utils -U` which will fall back to using torchvision for video processing. However, you can still [install decord from source](https://github.com/dmlc/decord?tab=readme-ov-file#install-from-source) to get decord used when loading video.
692
+
693
+ ### 🤗 Transformers Usage
694
+
695
+ Here we show a code snippet to show you how to use the chat model with `transformers` and `qwen_omni_utils`:
696
+
697
+ ```python
698
+ import soundfile as sf
699
+
700
+ from transformers import Qwen2_5OmniForConditionalGeneration, Qwen2_5OmniProcessor
701
+ from qwen_omni_utils import process_mm_info
702
+
703
+ # default: Load the model on the available device(s)
704
+ model = Qwen2_5OmniForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-Omni-3B", torch_dtype="auto", device_map="auto")
705
+
706
+ # We recommend enabling flash_attention_2 for better acceleration and memory saving.
707
+ # model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
708
+ # "Qwen/Qwen2.5-Omni-3B",
709
+ # torch_dtype="auto",
710
+ # device_map="auto",
711
+ # attn_implementation="flash_attention_2",
712
+ # )
713
+
714
+ processor = Qwen2_5OmniProcessor.from_pretrained("Qwen/Qwen2.5-Omni-3B")
715
+
716
+ conversation = [
717
+ {
718
+ "role": "system",
719
+ "content": [
720
+ {"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
721
+ ],
722
+ },
723
+ {
724
+ "role": "user",
725
+ "content": [
726
+ {"type": "video", "video": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/draw.mp4"},
727
+ ],
728
+ },
729
+ ]
730
+
731
+ # set use audio in video
732
+ USE_AUDIO_IN_VIDEO = True
733
+
734
+ # Preparation for inference
735
+ text = processor.apply_chat_template(conversation, add_generation_prompt=True, tokenize=False)
736
+ audios, images, videos = process_mm_info(conversation, use_audio_in_video=USE_AUDIO_IN_VIDEO)
737
+ inputs = processor(text=text, audio=audios, images=images, videos=videos, return_tensors="pt", padding=True, use_audio_in_video=USE_AUDIO_IN_VIDEO)
738
+ inputs = inputs.to(model.device).to(model.dtype)
739
+
740
+ # Inference: Generation of the output text and audio
741
+ text_ids, audio = model.generate(**inputs, use_audio_in_video=USE_AUDIO_IN_VIDEO)
742
+
743
+ text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
744
+ print(text)
745
+ sf.write(
746
+ "output.wav",
747
+ audio.reshape(-1).detach().cpu().numpy(),
748
+ samplerate=24000,
749
+ )
750
+ ```
751
+
752
+ <details>
753
+ <summary>Minimum GPU memory requirements</summary>
754
+
755
+ |Model | Precision | 15(s) Video | 30(s) Video | 60(s) Video |
756
+ |--------------|-----------| ------------- | ------------- | ------------------ |
757
+ | Qwen-Omni-3B | FP32 | 89.10 GB | Not Recommend | Not Recommend |
758
+ | Qwen-Omni-3B | BF16 | 18.38 GB | 22.43 GB | 28.22 GB |
759
+ | Qwen-Omni-7B | FP32 | 93.56 GB | Not Recommend | Not Recommend |
760
+ | Qwen-Omni-7B | BF16 | 31.11 GB | 41.85 GB | 60.19 GB |
761
+
762
+ Note: The table above presents the theoretical minimum memory requirements for inference with `transformers` and `BF16` is test with `attn_implementation="flash_attention_2"`; however, in practice, the actual memory usage is typically at least 1.2 times higher. For more information, see the linked resource [here](https://huggingface.co/docs/accelerate/main/en/usage_guides/model_size_estimator).
763
+ </details>
764
+
765
+ <details>
766
+ <summary>Video URL resource usage</summary>
767
+
768
+ Video URL compatibility largely depends on the third-party library version. The details are in the table below. Change the backend by `FORCE_QWENVL_VIDEO_READER=torchvision` or `FORCE_QWENVL_VIDEO_READER=decord` if you prefer not to use the default one.
769
+
770
+ | Backend | HTTP | HTTPS |
771
+ |-------------|------|-------|
772
+ | torchvision >= 0.19.0 | ✅ | ✅ |
773
+ | torchvision < 0.19.0 | ❌ | ❌ |
774
+ | decord | ✅ | ❌ |
775
+ </details>
776
+
777
+ <details>
778
+ <summary>Batch inference</summary>
779
+
780
+ The model can batch inputs composed of mixed samples of various types such as text, images, audio and videos as input when `return_audio=False` is set. Here is an example.
781
+
782
+ ```python
783
+ # Sample messages for batch inference
784
+
785
+ # Conversation with video only
786
+ conversation1 = [
787
+ {
788
+ "role": "system",
789
+ "content": [
790
+ {"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
791
+ ],
792
+ },
793
+ {
794
+ "role": "user",
795
+ "content": [
796
+ {"type": "video", "video": "/path/to/video.mp4"},
797
+ ]
798
+ }
799
+ ]
800
+
801
+ # Conversation with audio only
802
+ conversation2 = [
803
+ {
804
+ "role": "system",
805
+ "content": [
806
+ {"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
807
+ ],
808
+ },
809
+ {
810
+ "role": "user",
811
+ "content": [
812
+ {"type": "audio", "audio": "/path/to/audio.wav"},
813
+ ]
814
+ }
815
+ ]
816
+
817
+ # Conversation with pure text
818
+ conversation3 = [
819
+ {
820
+ "role": "system",
821
+ "content": [
822
+ {"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
823
+ ],
824
+ },
825
+ {
826
+ "role": "user",
827
+ "content": "who are you?"
828
+ }
829
+ ]
830
+
831
+
832
+ # Conversation with mixed media
833
+ conversation4 = [
834
+ {
835
+ "role": "system",
836
+ "content": [
837
+ {"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
838
+ ],
839
+ },
840
+ {
841
+ "role": "user",
842
+ "content": [
843
+ {"type": "image", "image": "/path/to/image.jpg"},
844
+ {"type": "video", "video": "/path/to/video.mp4"},
845
+ {"type": "audio", "audio": "/path/to/audio.wav"},
846
+ {"type": "text", "text": "What are the elements can you see and hear in these medias?"},
847
+ ],
848
+ }
849
+ ]
850
+
851
+ # Combine messages for batch processing
852
+ conversations = [conversation1, conversation2, conversation3, conversation4]
853
+
854
+ # set use audio in video
855
+ USE_AUDIO_IN_VIDEO = True
856
+
857
+ # Preparation for batch inference
858
+ text = processor.apply_chat_template(conversations, add_generation_prompt=True, tokenize=False)
859
+ audios, images, videos = process_mm_info(conversations, use_audio_in_video=USE_AUDIO_IN_VIDEO)
860
+
861
+ inputs = processor(text=text, audio=audios, images=images, videos=videos, return_tensors="pt", padding=True, use_audio_in_video=USE_AUDIO_IN_VIDEO)
862
+ inputs = inputs.to(model.device).to(model.dtype)
863
+
864
+ # Batch Inference
865
+ text_ids = model.generate(**inputs, use_audio_in_video=USE_AUDIO_IN_VIDEO, return_audio=False)
866
+ text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
867
+ print(text)
868
+ ```
869
+ </details>
870
+
871
+ ### Usage Tips
872
+
873
+ #### Prompt for audio output
874
+ If users need audio output, the system prompt must be set as "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech.", otherwise the audio output may not work as expected.
875
+ ```
876
+ {
877
+ "role": "system",
878
+ "content": [
879
+ {"type": "text", "text": "You are Qwen, a virtual human developed by the Qwen Team, Alibaba Group, capable of perceiving auditory and visual inputs, as well as generating text and speech."}
880
+ ],
881
+ }
882
+ ```
883
+ #### Use audio in video
884
+ In the process of multimodal interaction, the videos provided by users are often accompanied by audio (such as questions about the content in the video, or sounds generated by certain events in the video). This information is conducive to the model providing a better interactive experience. So we provide the following options for users to decide whether to use audio in video.
885
+ ```python
886
+ # first place, in data preprocessing
887
+ audios, images, videos = process_mm_info(conversations, use_audio_in_video=True)
888
+ ```
889
+ ```python
890
+ # second place, in model processor
891
+ inputs = processor(text=text, audio=audios, images=images, videos=videos, return_tensors="pt",
892
+ padding=True, use_audio_in_video=True)
893
+ ```
894
+ ```python
895
+ # third place, in model inference
896
+ text_ids, audio = model.generate(**inputs, use_audio_in_video=True)
897
+ ```
898
+ It is worth noting that during a multi-round conversation, the `use_audio_in_video` parameter in these places must be set to the same, otherwise unexpected results will occur.
899
+
900
+ #### Use audio output or not
901
+
902
+ The model supports both text and audio outputs, if users do not need audio outputs, they can call `model.disable_talker()` after init the model. This option will save about `~2GB` of GPU memory but the `return_audio` option for `generate` function will only allow to be set at `False`.
903
+ ```python
904
+ model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
905
+ "Qwen/Qwen2.5-Omni-3B",
906
+ torch_dtype="auto",
907
+ device_map="auto"
908
+ )
909
+ model.disable_talker()
910
+ ```
911
+
912
+ In order to obtain a flexible experience, we recommend that users can decide whether to return audio when `generate` function is called. If `return_audio` is set to `False`, the model will only return text outputs to get text responses faster.
913
+
914
+ ```python
915
+ model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
916
+ "Qwen/Qwen2.5-Omni-3B",
917
+ torch_dtype="auto",
918
+ device_map="auto"
919
+ )
920
+ ...
921
+ text_ids = model.generate(**inputs, return_audio=False)
922
+ ```
923
+
924
+ #### Change voice type of output audio
925
+ Qwen2.5-Omni supports the ability to change the voice of the output audio. The `"Qwen/Qwen2.5-Omni-3B"` checkpoint support two voice types as follow:
926
+
927
+ | Voice Type | Gender | Description |
928
+ |------------|--------|-------------|
929
+ | Chelsie | Female | A honeyed, velvety voice that carries a gentle warmth and luminous clarity.|
930
+ | Ethan | Male | A bright, upbeat voice with infectious energy and a warm, approachable vibe.|
931
+
932
+ Users can use the `speaker` parameter of `generate` function to specify the voice type. By default, if `speaker` is not specified, the default voice type is `Chelsie`.
933
+
934
+ ```python
935
+ text_ids, audio = model.generate(**inputs, speaker="Chelsie")
936
+ ```
937
+
938
+ ```python
939
+ text_ids, audio = model.generate(**inputs, speaker="Ethan")
940
+ ```
941
+
942
+ #### Flash-Attention 2 to speed up generation
943
+
944
+ First, make sure to install the latest version of Flash Attention 2:
945
+
946
+ ```bash
947
+ pip install -U flash-attn --no-build-isolation
948
+ ```
949
+
950
+ Also, you should have hardware that is compatible with FlashAttention 2. Read more about it in the official documentation of the [flash attention repository](https://github.com/Dao-AILab/flash-attention). FlashAttention-2 can only be used when a model is loaded in `torch.float16` or `torch.bfloat16`.
951
+
952
+ To load and run a model using FlashAttention-2, add `attn_implementation="flash_attention_2"` when loading the model:
953
+
954
+ ```python
955
+ from transformers import Qwen2_5OmniForConditionalGeneration
956
+
957
+ model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
958
+ "Qwen/Qwen2.5-Omni-3B",
959
+ device_map="auto",
960
+ torch_dtype=torch.bfloat16,
961
+ attn_implementation="flash_attention_2",
962
+ )
963
+ ```
964
+
965
+
966
+ ## Citation
967
+
968
+ If you find our paper and code useful in your research, please consider giving a star :star: and citation :pencil: :)
969
+
970
+
971
+
972
+ ```BibTeX
973
+
974
+ @article{Qwen2.5-Omni,
975
+ title={Qwen2.5-Omni Technical Report},
976
+ author={Jin Xu, Zhifang Guo, Jinzheng He, Hangrui Hu, Ting He, Shuai Bai, Keqin Chen, Jialin Wang, Yang Fan, Kai Dang, Bin Zhang, Xiong Wang, Yunfei Chu, Junyang Lin},
977
+ journal={arXiv preprint arXiv:2503.20215},
978
+ year={2025}
979
+ }
980
+ ```
981
+
982
+ <br>
983
+
qwen25OmniConfig/added_tokens.json ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "</tool_call>": 151658,
3
+ "<tool_call>": 151657,
4
+ "<|AUDIO|>": 151646,
5
+ "<|IMAGE|>": 151655,
6
+ "<|VIDEO|>": 151656,
7
+ "<|audio_bos|>": 151647,
8
+ "<|audio_eos|>": 151648,
9
+ "<|box_end|>": 151649,
10
+ "<|endoftext|>": 151643,
11
+ "<|file_sep|>": 151664,
12
+ "<|fim_middle|>": 151660,
13
+ "<|fim_pad|>": 151662,
14
+ "<|fim_prefix|>": 151659,
15
+ "<|fim_suffix|>": 151661,
16
+ "<|im_end|>": 151645,
17
+ "<|im_start|>": 151644,
18
+ "<|quad_end|>": 151651,
19
+ "<|quad_start|>": 151650,
20
+ "<|repo_name|>": 151663,
21
+ "<|vision_bos|>": 151652,
22
+ "<|vision_eos|>": 151653,
23
+ "<|vision_pad|>": 151654
24
+ }
qwen25OmniConfig/chat_template.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ {
2
+ "chat_template": "{% set audio_count = namespace(value=0) %}{% set image_count = namespace(value=0) %}{% set video_count = namespace(value=0) %}{% for message in messages %}{% if loop.first and message['role'] != 'system' %}<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n{% endif %}<|im_start|>{{ message['role'] }}\n{% if message['content'] is string %}{{ message['content'] }}<|im_end|>\n{% else %}{% for content in message['content'] %}{% if content['type'] == 'image' or 'image' in content or 'image_url' in content %}{% set image_count.value = image_count.value + 1 %}{% if add_vision_id %}Picture {{ image_count.value }}: {% endif %}<|vision_bos|><|IMAGE|><|vision_eos|>{% elif content['type'] == 'audio' or 'audio' in content or 'audio_url' in content %}{% set audio_count.value = audio_count.value + 1 %}{% if add_audio_id %}Audio {{ audio_count.value }}: {% endif %}<|audio_bos|><|AUDIO|><|audio_eos|>{% elif content['type'] == 'video' or 'video' in content %}{% set video_count.value = video_count.value + 1 %}{% if add_vision_id %}Video {{ video_count.value }}: {% endif %}<|vision_bos|><|VIDEO|><|vision_eos|>{% elif 'text' in content %}{{ content['text'] }}{% endif %}{% endfor %}<|im_end|>\n{% endif %}{% endfor %}{% if add_generation_prompt %}<|im_start|>assistant\n{% endif %}"
3
+ }
qwen25OmniConfig/config.json ADDED
@@ -0,0 +1,495 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen2_5OmniModel"
4
+ ],
5
+ "enable_audio_output": true,
6
+ "enable_talker": true,
7
+ "model_type": "qwen2_5_omni",
8
+ "talker_config": {
9
+ "_attn_implementation_autoset": true,
10
+ "_name_or_path": "Qwen2.5-Omni-3B/talker",
11
+ "architectures": [
12
+ "Qwen2OmniTalkerForConditionalGeneration"
13
+ ],
14
+ "attention_dropout": 0.0,
15
+ "audio_end_token_id": 151648,
16
+ "audio_start_token_id": 151647,
17
+ "audio_token_index": 151646,
18
+ "embedding_size": 2048,
19
+ "head_dim": 64,
20
+ "hidden_act": "silu",
21
+ "hidden_size": 896,
22
+ "image_token_index": 151655,
23
+ "init_std": 0.02,
24
+ "initializer_range": 0.02,
25
+ "intermediate_size": 4864,
26
+ "max_position_embeddings": 32768,
27
+ "max_window_layers": 28,
28
+ "model_type": "qwen2_5_omni_talker",
29
+ "num_attention_heads": 14,
30
+ "num_hidden_layers": 24,
31
+ "num_key_value_heads": 2,
32
+ "position_id_per_seconds": 25,
33
+ "rms_norm_eps": 1e-06,
34
+ "rope_scaling": {
35
+ "mrope_section": [
36
+ 16,
37
+ 16,
38
+ 0
39
+ ],
40
+ "rope_type": "default",
41
+ "type": "default"
42
+ },
43
+ "rope_theta": 1000000.0,
44
+ "seconds_per_chunk": 2,
45
+ "sliding_window": 32768,
46
+ "spatial_merge_size": 2,
47
+ "torch_dtype": "bfloat16",
48
+ "tts_codec_end_token_id": 8294,
49
+ "tts_codec_mask_token_id": 8296,
50
+ "tts_codec_pad_token_id": 8292,
51
+ "tts_codec_start_token_id": 8293,
52
+ "tts_text_end_token_id": 151861,
53
+ "tts_text_pad_token_id": 151859,
54
+ "tts_text_start_token_id": 151860,
55
+ "use_cache": true,
56
+ "use_sliding_window": false,
57
+ "video_token_index": 151656,
58
+ "vision_end_token_id": 151653,
59
+ "vision_start_token_id": 151652,
60
+ "vocab_size": 8448
61
+ },
62
+ "thinker_config": {
63
+ "_attn_implementation_autoset": true,
64
+ "_name_or_path": "Qwen2.5-Omni-3B/thinker",
65
+ "architectures": [
66
+ "Qwen2OmniNaViTThinkerForConditionalGeneration"
67
+ ],
68
+ "audio_config": {
69
+ "_attn_implementation_autoset": true,
70
+ "_name_or_path": "",
71
+ "activation_dropout": 0.0,
72
+ "activation_function": "gelu",
73
+ "add_cross_attention": false,
74
+ "architectures": null,
75
+ "attention_dropout": 0.0,
76
+ "bad_words_ids": null,
77
+ "begin_suppress_tokens": null,
78
+ "bos_token_id": null,
79
+ "chunk_size_feed_forward": 0,
80
+ "cross_attention_hidden_size": null,
81
+ "d_model": 1280,
82
+ "decoder_start_token_id": null,
83
+ "diversity_penalty": 0.0,
84
+ "do_sample": false,
85
+ "dropout": 0.0,
86
+ "early_stopping": false,
87
+ "encoder_attention_heads": 20,
88
+ "encoder_ffn_dim": 5120,
89
+ "encoder_layerdrop": 0.0,
90
+ "encoder_layers": 32,
91
+ "encoder_no_repeat_ngram_size": 0,
92
+ "eos_token_id": null,
93
+ "exponential_decay_length_penalty": null,
94
+ "finetuning_task": null,
95
+ "forced_bos_token_id": null,
96
+ "forced_eos_token_id": null,
97
+ "id2label": {
98
+ "0": "LABEL_0",
99
+ "1": "LABEL_1"
100
+ },
101
+ "init_std": 0.02,
102
+ "is_decoder": false,
103
+ "is_encoder_decoder": false,
104
+ "label2id": {
105
+ "LABEL_0": 0,
106
+ "LABEL_1": 1
107
+ },
108
+ "length_penalty": 1.0,
109
+ "max_length": 20,
110
+ "max_source_positions": 1500,
111
+ "min_length": 0,
112
+ "model_type": "qwen2_5_omni_audio_encoder",
113
+ "n_window": 100,
114
+ "no_repeat_ngram_size": 0,
115
+ "num_beam_groups": 1,
116
+ "num_beams": 1,
117
+ "num_hidden_layers": 32,
118
+ "num_mel_bins": 128,
119
+ "num_return_sequences": 1,
120
+ "output_attentions": false,
121
+ "output_dim": 2048,
122
+ "output_hidden_states": false,
123
+ "output_scores": false,
124
+ "pad_token_id": null,
125
+ "prefix": null,
126
+ "problem_type": null,
127
+ "pruned_heads": {},
128
+ "remove_invalid_values": false,
129
+ "repetition_penalty": 1.0,
130
+ "return_dict": true,
131
+ "return_dict_in_generate": false,
132
+ "scale_embedding": false,
133
+ "sep_token_id": null,
134
+ "suppress_tokens": null,
135
+ "task_specific_params": null,
136
+ "temperature": 1.0,
137
+ "tf_legacy_loss": false,
138
+ "tie_encoder_decoder": false,
139
+ "tie_word_embeddings": true,
140
+ "tokenizer_class": null,
141
+ "top_k": 50,
142
+ "top_p": 1.0,
143
+ "torch_dtype": null,
144
+ "torchscript": false,
145
+ "typical_p": 1.0,
146
+ "use_bfloat16": false
147
+ },
148
+ "text_config": {
149
+ "model_type": "qwen2_5_omni_text",
150
+ "hidden_act": "silu",
151
+ "hidden_size": 2048,
152
+ "init_std": 0.02,
153
+ "intermediate_size": 11008,
154
+ "vocab_size": 151936,
155
+ "num_attention_heads": 16,
156
+ "num_hidden_layers": 36,
157
+ "num_key_value_heads": 2,
158
+ "max_position_embeddings": 32768,
159
+ "max_window_layers": 70,
160
+ "rms_norm_eps": 1e-06,
161
+ "rope_scaling": {
162
+ "mrope_section": [
163
+ 16,
164
+ 24,
165
+ 24
166
+ ],
167
+ "rope_type": "default",
168
+ "type": "default"
169
+ },
170
+ "use_cache": true,
171
+ "rope_theta": 1000000.0,
172
+ "use_sliding_window": false,
173
+ "sliding_window": 32768,
174
+ "attention_dropout": 0.0,
175
+ "tie_word_embeddings": false
176
+ },
177
+ "audio_end_token_id": 151648,
178
+ "audio_start_token_id": 151647,
179
+ "audio_token_index": 151646,
180
+ "bos_token_id": 151644,
181
+ "eos_token_id": 151645,
182
+ "ignore_index": -100,
183
+ "image_token_index": 151655,
184
+ "init_std": 0.02,
185
+ "model_type": "qwen2_5_omni_thinker",
186
+ "pad_token_id": 151643,
187
+ "position_id_per_seconds": 25,
188
+ "seconds_per_chunk": 2,
189
+ "torch_dtype": "bfloat16",
190
+ "user_token_id": 872,
191
+ "video_token_index": 151656,
192
+ "vision_config": {
193
+ "_attn_implementation_autoset": true,
194
+ "_name_or_path": "",
195
+ "add_cross_attention": false,
196
+ "architectures": null,
197
+ "bad_words_ids": null,
198
+ "begin_suppress_tokens": null,
199
+ "bos_token_id": null,
200
+ "chunk_size_feed_forward": 0,
201
+ "cross_attention_hidden_size": null,
202
+ "decoder_start_token_id": null,
203
+ "depth": 32,
204
+ "diversity_penalty": 0.0,
205
+ "do_sample": false,
206
+ "early_stopping": false,
207
+ "embed_dim": 1280,
208
+ "encoder_no_repeat_ngram_size": 0,
209
+ "eos_token_id": null,
210
+ "exponential_decay_length_penalty": null,
211
+ "finetuning_task": null,
212
+ "forced_bos_token_id": null,
213
+ "forced_eos_token_id": null,
214
+ "fullatt_block_indexes": [
215
+ 7,
216
+ 15,
217
+ 23,
218
+ 31
219
+ ],
220
+ "hidden_act": "silu",
221
+ "hidden_size": 1280,
222
+ "id2label": {
223
+ "0": "LABEL_0",
224
+ "1": "LABEL_1"
225
+ },
226
+ "in_channels": 3,
227
+ "in_chans": 3,
228
+ "init_std": 0.02,
229
+ "intermediate_size": 3420,
230
+ "is_decoder": false,
231
+ "is_encoder_decoder": false,
232
+ "label2id": {
233
+ "LABEL_0": 0,
234
+ "LABEL_1": 1
235
+ },
236
+ "length_penalty": 1.0,
237
+ "max_length": 20,
238
+ "min_length": 0,
239
+ "model_type": "qwen2_5_omni_vision_encoder",
240
+ "no_repeat_ngram_size": 0,
241
+ "num_beam_groups": 1,
242
+ "num_beams": 1,
243
+ "num_heads": 16,
244
+ "num_return_sequences": 1,
245
+ "out_hidden_size": 2048,
246
+ "output_attentions": false,
247
+ "output_hidden_states": false,
248
+ "output_scores": false,
249
+ "pad_token_id": null,
250
+ "patch_size": 14,
251
+ "prefix": null,
252
+ "problem_type": null,
253
+ "pruned_heads": {},
254
+ "remove_invalid_values": false,
255
+ "repetition_penalty": 1.0,
256
+ "return_dict": true,
257
+ "return_dict_in_generate": false,
258
+ "sep_token_id": null,
259
+ "spatial_merge_size": 2,
260
+ "spatial_patch_size": 14,
261
+ "suppress_tokens": null,
262
+ "task_specific_params": null,
263
+ "temperature": 1.0,
264
+ "temporal_patch_size": 2,
265
+ "tf_legacy_loss": false,
266
+ "tie_encoder_decoder": false,
267
+ "tie_word_embeddings": true,
268
+ "tokenizer_class": null,
269
+ "tokens_per_second": 25,
270
+ "top_k": 50,
271
+ "top_p": 1.0,
272
+ "torch_dtype": null,
273
+ "torchscript": false,
274
+ "typical_p": 1.0,
275
+ "use_bfloat16": false,
276
+ "window_size": 112
277
+ },
278
+ "vision_end_token_id": 151653,
279
+ "vision_start_token_id": 151652,
280
+ "vision_token_id": 151654
281
+ },
282
+ "token2wav_config": {
283
+ "_attn_implementation_autoset": true,
284
+ "bigvgan_config": {
285
+ "_attn_implementation_autoset": true,
286
+ "_name_or_path": "",
287
+ "add_cross_attention": false,
288
+ "architectures": null,
289
+ "bad_words_ids": null,
290
+ "begin_suppress_tokens": null,
291
+ "bos_token_id": null,
292
+ "chunk_size_feed_forward": 0,
293
+ "cross_attention_hidden_size": null,
294
+ "decoder_start_token_id": null,
295
+ "diversity_penalty": 0.0,
296
+ "do_sample": false,
297
+ "early_stopping": false,
298
+ "encoder_no_repeat_ngram_size": 0,
299
+ "eos_token_id": null,
300
+ "exponential_decay_length_penalty": null,
301
+ "finetuning_task": null,
302
+ "forced_bos_token_id": null,
303
+ "forced_eos_token_id": null,
304
+ "id2label": {
305
+ "0": "LABEL_0",
306
+ "1": "LABEL_1"
307
+ },
308
+ "is_decoder": false,
309
+ "is_encoder_decoder": false,
310
+ "label2id": {
311
+ "LABEL_0": 0,
312
+ "LABEL_1": 1
313
+ },
314
+ "length_penalty": 1.0,
315
+ "max_length": 20,
316
+ "mel_dim": 80,
317
+ "min_length": 0,
318
+ "model_type": "qwen2_5_omni_bigvgan",
319
+ "no_repeat_ngram_size": 0,
320
+ "num_beam_groups": 1,
321
+ "num_beams": 1,
322
+ "num_return_sequences": 1,
323
+ "output_attentions": false,
324
+ "output_hidden_states": false,
325
+ "output_scores": false,
326
+ "pad_token_id": null,
327
+ "prefix": null,
328
+ "problem_type": null,
329
+ "pruned_heads": {},
330
+ "remove_invalid_values": false,
331
+ "repetition_penalty": 1.0,
332
+ "resblock_dilation_sizes": [
333
+ [
334
+ 1,
335
+ 3,
336
+ 5
337
+ ],
338
+ [
339
+ 1,
340
+ 3,
341
+ 5
342
+ ],
343
+ [
344
+ 1,
345
+ 3,
346
+ 5
347
+ ]
348
+ ],
349
+ "resblock_kernel_sizes": [
350
+ 3,
351
+ 7,
352
+ 11
353
+ ],
354
+ "return_dict": true,
355
+ "return_dict_in_generate": false,
356
+ "sep_token_id": null,
357
+ "suppress_tokens": null,
358
+ "task_specific_params": null,
359
+ "temperature": 1.0,
360
+ "tf_legacy_loss": false,
361
+ "tie_encoder_decoder": false,
362
+ "tie_word_embeddings": true,
363
+ "tokenizer_class": null,
364
+ "top_k": 50,
365
+ "top_p": 1.0,
366
+ "torch_dtype": null,
367
+ "torchscript": false,
368
+ "typical_p": 1.0,
369
+ "upsample_initial_channel": 1536,
370
+ "upsample_kernel_sizes": [
371
+ 11,
372
+ 7,
373
+ 4,
374
+ 4,
375
+ 4,
376
+ 4
377
+ ],
378
+ "upsample_rates": [
379
+ 5,
380
+ 3,
381
+ 2,
382
+ 2,
383
+ 2,
384
+ 2
385
+ ],
386
+ "use_bfloat16": false,
387
+ "use_bias_at_final": false
388
+ },
389
+ "dit_config": {
390
+ "_attn_implementation_autoset": true,
391
+ "_name_or_path": "",
392
+ "add_cross_attention": false,
393
+ "architectures": null,
394
+ "bad_words_ids": null,
395
+ "begin_suppress_tokens": null,
396
+ "bos_token_id": null,
397
+ "chunk_size_feed_forward": 0,
398
+ "cross_attention_hidden_size": null,
399
+ "decoder_start_token_id": null,
400
+ "depth": 22,
401
+ "dim": 1024,
402
+ "diversity_penalty": 0.0,
403
+ "do_sample": false,
404
+ "dropout": 0.1,
405
+ "early_stopping": false,
406
+ "emb_dim": 512,
407
+ "enc_attention_channels": 64,
408
+ "enc_channels": [
409
+ 256,
410
+ 256,
411
+ 256,
412
+ 256,
413
+ 768
414
+ ],
415
+ "enc_dilations": [
416
+ 1,
417
+ 2,
418
+ 3,
419
+ 4,
420
+ 1
421
+ ],
422
+ "enc_dim": 128,
423
+ "enc_emb_dim": 192,
424
+ "enc_global_context": true,
425
+ "enc_kernel_sizes": [
426
+ 5,
427
+ 3,
428
+ 3,
429
+ 3,
430
+ 1
431
+ ],
432
+ "enc_lin_neurons": 192,
433
+ "enc_res2net_scale": 2,
434
+ "enc_se_channels": 64,
435
+ "encoder_no_repeat_ngram_size": 0,
436
+ "eos_token_id": null,
437
+ "exponential_decay_length_penalty": null,
438
+ "ff_mult": 2,
439
+ "finetuning_task": null,
440
+ "forced_bos_token_id": null,
441
+ "forced_eos_token_id": null,
442
+ "head_dim": 64,
443
+ "heads": 16,
444
+ "id2label": {
445
+ "0": "LABEL_0",
446
+ "1": "LABEL_1"
447
+ },
448
+ "is_decoder": false,
449
+ "is_encoder_decoder": false,
450
+ "label2id": {
451
+ "LABEL_0": 0,
452
+ "LABEL_1": 1
453
+ },
454
+ "length_penalty": 1.0,
455
+ "max_length": 20,
456
+ "mel_dim": 80,
457
+ "min_length": 0,
458
+ "model_type": "qwen2_5_omni_dit",
459
+ "no_repeat_ngram_size": 0,
460
+ "num_beam_groups": 1,
461
+ "num_beams": 1,
462
+ "num_embeds": 8193,
463
+ "num_return_sequences": 1,
464
+ "output_attentions": false,
465
+ "output_hidden_states": false,
466
+ "output_scores": false,
467
+ "pad_token_id": null,
468
+ "prefix": null,
469
+ "problem_type": null,
470
+ "pruned_heads": {},
471
+ "remove_invalid_values": false,
472
+ "repeats": 2,
473
+ "repetition_penalty": 1.0,
474
+ "return_dict": true,
475
+ "return_dict_in_generate": false,
476
+ "sep_token_id": null,
477
+ "suppress_tokens": null,
478
+ "task_specific_params": null,
479
+ "temperature": 1.0,
480
+ "tf_legacy_loss": false,
481
+ "tie_encoder_decoder": false,
482
+ "tie_word_embeddings": true,
483
+ "tokenizer_class": null,
484
+ "top_k": 50,
485
+ "top_p": 1.0,
486
+ "torch_dtype": "float32",
487
+ "torchscript": false,
488
+ "typical_p": 1.0,
489
+ "use_bfloat16": false
490
+ },
491
+ "model_type": "qwen2_5_omni_token2wav"
492
+ },
493
+ "torch_dtype": "bfloat16",
494
+ "transformers_version": "4.51.0.dev0"
495
+ }
qwen25OmniConfig/generation_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "transformers_version": "4.50.0.dev0"
4
+ }
qwen25OmniConfig/merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
qwen25OmniConfig/model.safetensors.index.json ADDED
The diff for this file is too large to render. See raw diff
 
qwen25OmniConfig/models--Qwen--Qwen2.5-Omni-3B/refs/main ADDED
@@ -0,0 +1 @@
 
 
1
+ f75b40e3da2003cdd6e1829b1f420ca70797c34e
qwen25OmniConfig/preprocessor_config.json ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "chunk_length": 300,
3
+ "dither": 0.0,
4
+ "feature_extractor_type": "WhisperFeatureExtractor",
5
+ "feature_size": 128,
6
+ "hop_length": 160,
7
+ "image_mean": [
8
+ 0.48145466,
9
+ 0.4578275,
10
+ 0.40821073
11
+ ],
12
+ "image_processor_type": "Qwen2VLImageProcessor",
13
+ "image_std": [
14
+ 0.26862954,
15
+ 0.26130258,
16
+ 0.27577711
17
+ ],
18
+ "max_pixels": 12845056,
19
+ "merge_size": 2,
20
+ "min_pixels": 3136,
21
+ "n_fft": 400,
22
+ "n_samples": 4800000,
23
+ "nb_max_frames": 30000,
24
+ "padding_side": "right",
25
+ "padding_value": 0.0,
26
+ "patch_size": 14,
27
+ "processor_class": "Qwen2_5OmniProcessor",
28
+ "return_attention_mask": true,
29
+ "sampling_rate": 16000,
30
+ "temporal_patch_size": 2
31
+ }
qwen25OmniConfig/special_tokens_map.json ADDED
@@ -0,0 +1,38 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "additional_special_tokens": [
3
+ "<|im_start|>",
4
+ "<|im_end|>",
5
+ "<|AUDIO|>",
6
+ "<|audio_bos|>",
7
+ "<|audio_eos|>",
8
+ "<|box_end|>",
9
+ "<|quad_start|>",
10
+ "<|quad_end|>",
11
+ "<|vision_bos|>",
12
+ "<|vision_eos|>",
13
+ "<|vision_pad|>",
14
+ "<|IMAGE|>",
15
+ "<|VIDEO|>"
16
+ ],
17
+ "eos_token": {
18
+ "content": "<|im_end|>",
19
+ "lstrip": false,
20
+ "normalized": false,
21
+ "rstrip": false,
22
+ "single_word": false
23
+ },
24
+ "pad_token": {
25
+ "content": "<|endoftext|>",
26
+ "lstrip": false,
27
+ "normalized": false,
28
+ "rstrip": false,
29
+ "single_word": false
30
+ },
31
+ "image_token": "<|IMAGE|>",
32
+ "audio_token": "<|AUDIO|>",
33
+ "video_token": "<|VIDEO|>",
34
+ "vision_bos_token": "<|vision_bos|>",
35
+ "vision_eos_token": "<|vision_eos|>",
36
+ "audio_bos_token": "<|audio_bos|>",
37
+ "audio_eos_token": "<|audio_eos|>"
38
+ }
qwen25OmniConfig/spk_dict.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6a05609b28f5d42b7b748f0f07592545c8f1f6885b9ae8fff64baf56e86b2a18
3
+ size 259544
qwen25OmniConfig/tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8441917e39ae0244e06d704b95b3124795cec478e297f9afac39ba670d7e9d99
3
+ size 11421870
qwen25OmniConfig/tokenizer_config.json ADDED
@@ -0,0 +1,223 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "added_tokens_decoder": {
4
+ "151643": {
5
+ "content": "<|endoftext|>",
6
+ "lstrip": false,
7
+ "normalized": false,
8
+ "rstrip": false,
9
+ "single_word": false,
10
+ "special": true
11
+ },
12
+ "151644": {
13
+ "content": "<|im_start|>",
14
+ "lstrip": false,
15
+ "normalized": false,
16
+ "rstrip": false,
17
+ "single_word": false,
18
+ "special": true
19
+ },
20
+ "151645": {
21
+ "content": "<|im_end|>",
22
+ "lstrip": false,
23
+ "normalized": false,
24
+ "rstrip": false,
25
+ "single_word": false,
26
+ "special": true
27
+ },
28
+ "151646": {
29
+ "content": "<|AUDIO|>",
30
+ "lstrip": false,
31
+ "normalized": false,
32
+ "rstrip": false,
33
+ "single_word": false,
34
+ "special": true
35
+ },
36
+ "151647": {
37
+ "content": "<|audio_bos|>",
38
+ "lstrip": false,
39
+ "normalized": false,
40
+ "rstrip": false,
41
+ "single_word": false,
42
+ "special": true
43
+ },
44
+ "151648": {
45
+ "content": "<|audio_eos|>",
46
+ "lstrip": false,
47
+ "normalized": false,
48
+ "rstrip": false,
49
+ "single_word": false,
50
+ "special": true
51
+ },
52
+ "151649": {
53
+ "content": "<|box_end|>",
54
+ "lstrip": false,
55
+ "normalized": false,
56
+ "rstrip": false,
57
+ "single_word": false,
58
+ "special": true
59
+ },
60
+ "151650": {
61
+ "content": "<|quad_start|>",
62
+ "lstrip": false,
63
+ "normalized": false,
64
+ "rstrip": false,
65
+ "single_word": false,
66
+ "special": true
67
+ },
68
+ "151651": {
69
+ "content": "<|quad_end|>",
70
+ "lstrip": false,
71
+ "normalized": false,
72
+ "rstrip": false,
73
+ "single_word": false,
74
+ "special": true
75
+ },
76
+ "151652": {
77
+ "content": "<|vision_bos|>",
78
+ "lstrip": false,
79
+ "normalized": false,
80
+ "rstrip": false,
81
+ "single_word": false,
82
+ "special": true
83
+ },
84
+ "151653": {
85
+ "content": "<|vision_eos|>",
86
+ "lstrip": false,
87
+ "normalized": false,
88
+ "rstrip": false,
89
+ "single_word": false,
90
+ "special": true
91
+ },
92
+ "151654": {
93
+ "content": "<|vision_pad|>",
94
+ "lstrip": false,
95
+ "normalized": false,
96
+ "rstrip": false,
97
+ "single_word": false,
98
+ "special": true
99
+ },
100
+ "151655": {
101
+ "content": "<|IMAGE|>",
102
+ "lstrip": false,
103
+ "normalized": false,
104
+ "rstrip": false,
105
+ "single_word": false,
106
+ "special": true
107
+ },
108
+ "151656": {
109
+ "content": "<|VIDEO|>",
110
+ "lstrip": false,
111
+ "normalized": false,
112
+ "rstrip": false,
113
+ "single_word": false,
114
+ "special": true
115
+ },
116
+ "151657": {
117
+ "content": "<tool_call>",
118
+ "lstrip": false,
119
+ "normalized": false,
120
+ "rstrip": false,
121
+ "single_word": false,
122
+ "special": false
123
+ },
124
+ "151658": {
125
+ "content": "</tool_call>",
126
+ "lstrip": false,
127
+ "normalized": false,
128
+ "rstrip": false,
129
+ "single_word": false,
130
+ "special": false
131
+ },
132
+ "151659": {
133
+ "content": "<|fim_prefix|>",
134
+ "lstrip": false,
135
+ "normalized": false,
136
+ "rstrip": false,
137
+ "single_word": false,
138
+ "special": false
139
+ },
140
+ "151660": {
141
+ "content": "<|fim_middle|>",
142
+ "lstrip": false,
143
+ "normalized": false,
144
+ "rstrip": false,
145
+ "single_word": false,
146
+ "special": false
147
+ },
148
+ "151661": {
149
+ "content": "<|fim_suffix|>",
150
+ "lstrip": false,
151
+ "normalized": false,
152
+ "rstrip": false,
153
+ "single_word": false,
154
+ "special": false
155
+ },
156
+ "151662": {
157
+ "content": "<|fim_pad|>",
158
+ "lstrip": false,
159
+ "normalized": false,
160
+ "rstrip": false,
161
+ "single_word": false,
162
+ "special": false
163
+ },
164
+ "151663": {
165
+ "content": "<|repo_name|>",
166
+ "lstrip": false,
167
+ "normalized": false,
168
+ "rstrip": false,
169
+ "single_word": false,
170
+ "special": false
171
+ },
172
+ "151664": {
173
+ "content": "<|file_sep|>",
174
+ "lstrip": false,
175
+ "normalized": false,
176
+ "rstrip": false,
177
+ "single_word": false,
178
+ "special": false
179
+ }
180
+ },
181
+ "additional_special_tokens": [
182
+ "<|im_start|>",
183
+ "<|im_end|>",
184
+ "<|AUDIO|>",
185
+ "<|audio_bos|>",
186
+ "<|audio_eos|>",
187
+ "<|box_end|>",
188
+ "<|quad_start|>",
189
+ "<|quad_end|>",
190
+ "<|vision_bos|>",
191
+ "<|vision_eos|>",
192
+ "<|vision_pad|>",
193
+ "<|IMAGE|>",
194
+ "<|VIDEO|>"
195
+ ],
196
+ "bos_token": null,
197
+ "chat_template": "{% set audio_count = namespace(value=0) %}{% set image_count = namespace(value=0) %}{% set video_count = namespace(value=0) %}{% for message in messages %}{% if loop.first and message['role'] != 'system' %}<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n{% endif %}<|im_start|>{{ message['role'] }}\n{% if message['content'] is string %}{{ message['content'] }}<|im_end|>\n{% else %}{% for content in message['content'] %}{% if content['type'] == 'image' or 'image' in content or 'image_url' in content %}{% set image_count.value = image_count.value + 1 %}{% if add_vision_id %}Picture {{ image_count.value }}: {% endif %}<|vision_bos|><|IMAGE|><|vision_eos|>{% elif content['type'] == 'audio' or 'audio' in content or 'audio_url' in content %}{% set audio_count.value = audio_count.value + 1 %}{% if add_audio_id %}Audio {{ audio_count.value }}: {% endif %}<|audio_bos|><|AUDIO|><|audio_eos|>{% elif content['type'] == 'video' or 'video' in content %}{% set video_count.value = video_count.value + 1 %}{% if add_vision_id %}Video {{ video_count.value }}: {% endif %}<|vision_bos|><|VIDEO|><|vision_eos|>{% elif 'text' in content %}{{ content['text'] }}{% endif %}{% endfor %}<|im_end|>\n{% endif %}{% endfor %}{% if add_generation_prompt %}<|im_start|>assistant\n{% endif %}",
198
+ "clean_up_tokenization_spaces": false,
199
+ "eos_token": "<|im_end|>",
200
+ "errors": "replace",
201
+ "extra_special_tokens": {
202
+ "image_token": "<|IMAGE|>",
203
+ "audio_token": "<|AUDIO|>",
204
+ "video_token": "<|VIDEO|>",
205
+ "vision_bos_token": "<|vision_bos|>",
206
+ "vision_eos_token": "<|vision_eos|>",
207
+ "audio_bos_token": "<|audio_bos|>",
208
+ "audio_eos_token": "<|audio_eos|>"
209
+ },
210
+ "model_max_length": 32768,
211
+ "pad_token": "<|endoftext|>",
212
+ "processor_class": "Qwen2_5OmniProcessor",
213
+ "split_special_tokens": false,
214
+ "tokenizer_class": "Qwen2Tokenizer",
215
+ "unk_token": null,
216
+ "image_token": "<|IMAGE|>",
217
+ "audio_token": "<|AUDIO|>",
218
+ "video_token": "<|VIDEO|>",
219
+ "vision_bos_token": "<|vision_bos|>",
220
+ "vision_eos_token": "<|vision_eos|>",
221
+ "audio_bos_token": "<|audio_bos|>",
222
+ "audio_eos_token": "<|audio_eos|>"
223
+ }
qwen25OmniConfig/vocab.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,207 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_bos_token": false,
3
+ "add_prefix_space": false,
4
+ "added_tokens_decoder": {
5
+ "151643": {
6
+ "content": "<|endoftext|>",
7
+ "lstrip": false,
8
+ "normalized": false,
9
+ "rstrip": false,
10
+ "single_word": false,
11
+ "special": true
12
+ },
13
+ "151644": {
14
+ "content": "<|im_start|>",
15
+ "lstrip": false,
16
+ "normalized": false,
17
+ "rstrip": false,
18
+ "single_word": false,
19
+ "special": true
20
+ },
21
+ "151645": {
22
+ "content": "<|im_end|>",
23
+ "lstrip": false,
24
+ "normalized": false,
25
+ "rstrip": false,
26
+ "single_word": false,
27
+ "special": true
28
+ },
29
+ "151646": {
30
+ "content": "<|object_ref_start|>",
31
+ "lstrip": false,
32
+ "normalized": false,
33
+ "rstrip": false,
34
+ "single_word": false,
35
+ "special": true
36
+ },
37
+ "151647": {
38
+ "content": "<|object_ref_end|>",
39
+ "lstrip": false,
40
+ "normalized": false,
41
+ "rstrip": false,
42
+ "single_word": false,
43
+ "special": true
44
+ },
45
+ "151648": {
46
+ "content": "<|box_start|>",
47
+ "lstrip": false,
48
+ "normalized": false,
49
+ "rstrip": false,
50
+ "single_word": false,
51
+ "special": true
52
+ },
53
+ "151649": {
54
+ "content": "<|box_end|>",
55
+ "lstrip": false,
56
+ "normalized": false,
57
+ "rstrip": false,
58
+ "single_word": false,
59
+ "special": true
60
+ },
61
+ "151650": {
62
+ "content": "<|quad_start|>",
63
+ "lstrip": false,
64
+ "normalized": false,
65
+ "rstrip": false,
66
+ "single_word": false,
67
+ "special": true
68
+ },
69
+ "151651": {
70
+ "content": "<|quad_end|>",
71
+ "lstrip": false,
72
+ "normalized": false,
73
+ "rstrip": false,
74
+ "single_word": false,
75
+ "special": true
76
+ },
77
+ "151652": {
78
+ "content": "<|vision_start|>",
79
+ "lstrip": false,
80
+ "normalized": false,
81
+ "rstrip": false,
82
+ "single_word": false,
83
+ "special": true
84
+ },
85
+ "151653": {
86
+ "content": "<|vision_end|>",
87
+ "lstrip": false,
88
+ "normalized": false,
89
+ "rstrip": false,
90
+ "single_word": false,
91
+ "special": true
92
+ },
93
+ "151654": {
94
+ "content": "<|vision_pad|>",
95
+ "lstrip": false,
96
+ "normalized": false,
97
+ "rstrip": false,
98
+ "single_word": false,
99
+ "special": true
100
+ },
101
+ "151655": {
102
+ "content": "<|image_pad|>",
103
+ "lstrip": false,
104
+ "normalized": false,
105
+ "rstrip": false,
106
+ "single_word": false,
107
+ "special": true
108
+ },
109
+ "151656": {
110
+ "content": "<|video_pad|>",
111
+ "lstrip": false,
112
+ "normalized": false,
113
+ "rstrip": false,
114
+ "single_word": false,
115
+ "special": true
116
+ },
117
+ "151657": {
118
+ "content": "<tool_call>",
119
+ "lstrip": false,
120
+ "normalized": false,
121
+ "rstrip": false,
122
+ "single_word": false,
123
+ "special": false
124
+ },
125
+ "151658": {
126
+ "content": "</tool_call>",
127
+ "lstrip": false,
128
+ "normalized": false,
129
+ "rstrip": false,
130
+ "single_word": false,
131
+ "special": false
132
+ },
133
+ "151659": {
134
+ "content": "<|fim_prefix|>",
135
+ "lstrip": false,
136
+ "normalized": false,
137
+ "rstrip": false,
138
+ "single_word": false,
139
+ "special": false
140
+ },
141
+ "151660": {
142
+ "content": "<|fim_middle|>",
143
+ "lstrip": false,
144
+ "normalized": false,
145
+ "rstrip": false,
146
+ "single_word": false,
147
+ "special": false
148
+ },
149
+ "151661": {
150
+ "content": "<|fim_suffix|>",
151
+ "lstrip": false,
152
+ "normalized": false,
153
+ "rstrip": false,
154
+ "single_word": false,
155
+ "special": false
156
+ },
157
+ "151662": {
158
+ "content": "<|fim_pad|>",
159
+ "lstrip": false,
160
+ "normalized": false,
161
+ "rstrip": false,
162
+ "single_word": false,
163
+ "special": false
164
+ },
165
+ "151663": {
166
+ "content": "<|repo_name|>",
167
+ "lstrip": false,
168
+ "normalized": false,
169
+ "rstrip": false,
170
+ "single_word": false,
171
+ "special": false
172
+ },
173
+ "151664": {
174
+ "content": "<|file_sep|>",
175
+ "lstrip": false,
176
+ "normalized": false,
177
+ "rstrip": false,
178
+ "single_word": false,
179
+ "special": false
180
+ }
181
+ },
182
+ "additional_special_tokens": [
183
+ "<|im_start|>",
184
+ "<|im_end|>",
185
+ "<|object_ref_start|>",
186
+ "<|object_ref_end|>",
187
+ "<|box_start|>",
188
+ "<|box_end|>",
189
+ "<|quad_start|>",
190
+ "<|quad_end|>",
191
+ "<|vision_start|>",
192
+ "<|vision_end|>",
193
+ "<|vision_pad|>",
194
+ "<|image_pad|>",
195
+ "<|video_pad|>"
196
+ ],
197
+ "bos_token": null,
198
+ "chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}\n {%- if messages[0]['role'] == 'system' %}\n {{- messages[0]['content'] }}\n {%- else %}\n {{- 'You are a helpful assistant.' }}\n {%- endif %}\n {{- \"\\n\\n# Tools\\n\\nYou may call one or more functions to assist with the user query.\\n\\nYou are provided with function signatures within <tools></tools> XML tags:\\n<tools>\" }}\n {%- for tool in tools %}\n {{- \"\\n\" }}\n {{- tool | tojson }}\n {%- endfor %}\n {{- \"\\n</tools>\\n\\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\\n<tool_call>\\n{\\\"name\\\": <function-name>, \\\"arguments\\\": <args-json-object>}\\n</tool_call><|im_end|>\\n\" }}\n{%- else %}\n {%- if messages[0]['role'] == 'system' %}\n {{- '<|im_start|>system\\n' + messages[0]['content'] + '<|im_end|>\\n' }}\n {%- else %}\n {{- '<|im_start|>system\\nYou are a helpful assistant.<|im_end|>\\n' }}\n {%- endif %}\n{%- endif %}\n{%- for message in messages %}\n {%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) or (message.role == \"assistant\" and not message.tool_calls) %}\n {{- '<|im_start|>' + message.role + '\\n' + message.content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {{- '<|im_start|>' + message.role }}\n {%- if message.content %}\n {{- '\\n' + message.content }}\n {%- endif %}\n {%- for tool_call in message.tool_calls %}\n {%- if tool_call.function is defined %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {{- '\\n<tool_call>\\n{\"name\": \"' }}\n {{- tool_call.name }}\n {{- '\", \"arguments\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- '}\\n</tool_call>' }}\n {%- endfor %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != \"tool\") %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n<tool_response>\\n' }}\n {{- message.content }}\n {{- '\\n</tool_response>' }}\n {%- if loop.last or (messages[loop.index0 + 1].role != \"tool\") %}\n {{- '<|im_end|>\\n' }}\n {%- endif %}\n {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n {{- '<|im_start|>assistant\\n' }}\n{%- endif %}\n",
199
+ "clean_up_tokenization_spaces": false,
200
+ "eos_token": "<|endoftext|>",
201
+ "errors": "replace",
202
+ "model_max_length": 131072,
203
+ "pad_token": "<|endoftext|>",
204
+ "split_special_tokens": false,
205
+ "tokenizer_class": "Qwen2Tokenizer",
206
+ "unk_token": null
207
+ }
upload.py ADDED
@@ -0,0 +1,46 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Upload the sharded checkpoint folder to zhifeixie/Mini-Omni3."""
2
+ import argparse
3
+ from pathlib import Path
4
+
5
+ from huggingface_hub import HfApi, login
6
+
7
+
8
+ def main():
9
+ ap = argparse.ArgumentParser()
10
+ ap.add_argument("--folder", default="/Users/yansc-xzf/Desktop/工作/Mini-Omni3/github/omni3/Mini-Omni3/checkpoints")
11
+ ap.add_argument("--repo-id", default="zhifeixie/Mini-Omni3")
12
+ ap.add_argument("--path-in-repo", default=".",
13
+ help="Subdirectory inside the repo. Use '.' to upload at repo root.")
14
+ ap.add_argument("--private", action="store_false")
15
+ ap.add_argument("--token", default=None,
16
+ help="HF token. If omitted, uses cached login (`huggingface-cli login`).")
17
+ args = ap.parse_args()
18
+
19
+ if args.token:
20
+ login(token=args.token)
21
+
22
+ api = HfApi()
23
+ api.create_repo(repo_id=args.repo_id, repo_type="model",
24
+ private=args.private, exist_ok=True)
25
+
26
+ folder = Path(args.folder)
27
+ if not folder.is_dir():
28
+ raise SystemExit(f"Not a directory: {folder}")
29
+
30
+ print(f"Uploading {folder} → {args.repo_id}:{args.path_in_repo}")
31
+ # upload_large_folder is designed for multi-GB folders: parallel chunked
32
+ # uploads with automatic resume on interruption.
33
+ api.upload_large_folder(
34
+ repo_id=args.repo_id,
35
+ repo_type="model",
36
+ folder_path=str(folder),
37
+ # path_in_repo is not directly supported by upload_large_folder;
38
+ # we emulate it via allow_patterns if needed. The simplest path is
39
+ # to upload the folder as-is at the repo root, OR to rename your
40
+ # local folder to match the desired in-repo name.
41
+ )
42
+ print("Done. Check: https://huggingface.co/" + args.repo_id)
43
+
44
+
45
+ if __name__ == "__main__":
46
+ main()
utils.py ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Shard MiniOmni3_LM.pt into HF safetensors shards.
2
+
3
+ Output layout (under --out-dir):
4
+ model-00001-of-0000N.safetensors
5
+ model-00002-of-0000N.safetensors
6
+ ...
7
+ model.safetensors.index.json
8
+ """
9
+ import argparse
10
+ from pathlib import Path
11
+
12
+ import torch
13
+ from huggingface_hub import save_torch_state_dict
14
+
15
+
16
+ def main():
17
+ ap = argparse.ArgumentParser()
18
+ ap.add_argument("--ckpt", default="/Users/yansc-xzf/Desktop/工作/Mini-Omni3/github/omni3/Mini-Omni3/checkpoints/MiniOmni3_LM.pt")
19
+ ap.add_argument("--out-dir", default="/Users/yansc-xzf/Desktop/工作/Mini-Omni3/github/omni3/Mini-Omni3/checkpoints/")
20
+ ap.add_argument("--max-shard-size", default="4GB",
21
+ help="HF-style size string, e.g. '4GB', '2GB', '500MB'.")
22
+ args = ap.parse_args()
23
+
24
+ out_dir = Path(args.out_dir)
25
+ out_dir.mkdir(parents=True, exist_ok=True)
26
+
27
+ print(f"Loading {args.ckpt} (this loads the full ~13 GB into RAM once)…")
28
+ obj = torch.load(args.ckpt, map_location="cpu", weights_only=False)
29
+
30
+ # Most training scripts save either a raw state_dict, or {"model": state_dict, ...}.
31
+ if isinstance(obj, dict) and "model" in obj and isinstance(obj["model"], dict):
32
+ state_dict = obj["model"]
33
+ print("Detected wrapped checkpoint — using obj['model'].")
34
+ elif isinstance(obj, dict) and all(isinstance(v, torch.Tensor) for v in obj.values()):
35
+ state_dict = obj
36
+ print("Detected raw state_dict.")
37
+ else:
38
+ raise SystemExit(
39
+ f"Unexpected checkpoint structure: top-level type={type(obj)}. "
40
+ f"Inspect the file and adjust this script (the variable `state_dict` "
41
+ f"must end up as Dict[str, Tensor])."
42
+ )
43
+
44
+ # Safetensors can't store shared/aliased tensors silently. Clone any duplicates
45
+ # so save_torch_state_dict doesn't complain. Cheap when there are no aliases.
46
+ seen = {}
47
+ for k, v in list(state_dict.items()):
48
+ ptr = v.data_ptr()
49
+ if ptr in seen:
50
+ state_dict[k] = v.clone()
51
+ else:
52
+ seen[ptr] = k
53
+
54
+ print(f"Sharding to {out_dir} with max_shard_size={args.max_shard_size}…")
55
+ save_torch_state_dict(
56
+ state_dict=state_dict,
57
+ save_directory=str(out_dir),
58
+ max_shard_size=args.max_shard_size,
59
+ # filename_pattern defaults to "model-{index:05d}-of-{total:05d}.safetensors"
60
+ )
61
+ print("Done. Files written:")
62
+ for p in sorted(out_dir.iterdir()):
63
+ sz = p.stat().st_size / (1024**3)
64
+ print(f" {p.name} ({sz:.2f} GB)")
65
+
66
+
67
+ if __name__ == "__main__":
68
+ main()