peiranW commited on
Commit
edad0cd
·
verified ·
1 Parent(s): 504d0b7

Upload 19 files

Browse files
.gitattributes CHANGED
@@ -33,3 +33,6 @@ 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
+ benchmark.png filter=lfs diff=lfs merge=lfs -text
37
+ tiktok_qa_sample.png filter=lfs diff=lfs merge=lfs -text
38
+ tokenizer.json filter=lfs diff=lfs merge=lfs -text
README.md ADDED
@@ -0,0 +1,305 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model:
3
+ - Qwen/Qwen2.5-Omni-3B
4
+ datasets:
5
+ - openinterx/UGC-VideoCap
6
+ license: mit
7
+ metrics:
8
+ - bleu
9
+ - accuracy
10
+ pipeline_tag: video-text-to-text
11
+ library_name: transformers
12
+ tags:
13
+ - multimodal
14
+ - video-captioning
15
+ - audio-visual
16
+ - ugc
17
+ ---
18
+
19
+ # UGC-VideoCaptioner: An Omni UGC Video Detail Caption Model and New Benchmarks
20
+
21
+ **UGC-VideoCaptioner** is a 3B-parameter captioning model distilled from Gemini-2.5 Flash, specifically designed for detailed, omnimodal captioning of short-form, user-generated videos (UGC). It addresses the crucial role of audio in conjunction with visual content, which is often overlooked in existing video captioning models.
22
+
23
+ <p align="left">
24
+ <a href="https://huggingface.co/papers/2507.11336" target="_blank">
25
+ <img src="https://img.shields.io/badge/HuggingFace_Paper-2507.11336%F0%9F%93%96-blue">
26
+ </a>
27
+ <a href="http://arxiv.org/abs/2507.11336" target="_blank">
28
+ <img src="https://img.shields.io/badge/arXiv-2507.11336%F0%9F%93%96-bron">
29
+ </a>
30
+ <a href="https://memories.ai/" target="_blank">
31
+ <img src="https://img.shields.io/badge/Project_Page-%F0%9F%8C%90-green">
32
+ </a>
33
+ <a href="https://github.com/openinterx/UGC-VideoCaptioner" target="_blank">
34
+ <img src="https://img.shields.io/badge/GitHub-Code-black?logo=github">
35
+ </a>
36
+ </p>
37
+
38
+ ## Abstract
39
+
40
+ Real-world user-generated videos, especially on platforms like TikTok, often feature rich and intertwined audio visual content. However, existing video captioning benchmarks and models remain predominantly visual centric, overlooking the crucial role of audio in conveying scene dynamics, speaker intent, and narrative context. This lack of omni datasets and lightweight, capable models hampers progress in fine grained, multimodal video understanding. To address these challenges, we introduce UGC-VideoCap, a new benchmark and model framework specifically designed for detailed omnimodal captioning of short form user-generated videos. Unlike prior datasets, UGC-VideoCap emphasizes balanced integration of audio and visual modalities, featuring 1000 TikTok videos annotated through a structured three stage human-in-the-loop pipeline covering audio only, visual only, and joint audio visual semantics. The benchmark also includes 4000 carefully crafted QA pairs probing both unimodal and cross modal understanding. Alongside the dataset, we propose UGC-VideoCaptioner(3B), a 3B parameter captioning model distilled from Gemini 2.5 Flash. Using a novel two-stage training strategy supervised fine tuning followed by Group Relative Policy Optimization (GRPO), our approach enables efficient adaptation from limited data while maintaining competitive performance. Together, our benchmark and model offer a high-quality foundation and a data-efficient solution for advancing omnimodal video captioning in unconstrained real-world UGC settings.
41
+
42
+ <p align="center">
43
+ <img src="tiktok_qa_sample.png" alt="UGC-VideoCap">
44
+ </p>
45
+
46
+ ## Benchmark Results
47
+
48
+ <p align="center">
49
+ <img src="benchmark.png" alt="UGC-VideoCap">
50
+ </p>
51
+
52
+ ### Model Zoom
53
+
54
+ | Model | visual | audio | details | average | Link |
55
+ |:------------------------------|:------:|:-----:|:-------:|:-------:|:----:|
56
+ | Gemini-2.5-pro | 75.8 | 70.8 | 74.8 | 73.78 | N/A |
57
+ | Gemini-2.5-flash | **78.8** | **74.2** | **77.2** | **76.73** | N/A |
58
+ | Qwen2.5-Omni-3B | 55.6 | 48.2 | 52.6 | 52.18 | N/A |
59
+ | UGC-VideoCaptioner-3B-zero(1k RL) | 57.8 | 53.0 | 55.4 | 55.40(**+3.22**) | [google-drive](https://drive.google.com/drive/folders/1R-L4kz4R7UxYpcU4El1ctgvVDQbsMsG6?usp=sharing) |
60
+ | Qwen2.5-Omni-3B 1k sft | 58.4 | 61.4 | 57.0 | 58.96(+6.78) | [google-drive](https://drive.google.com/drive/folders/1itJ1u4XEJNVfmgbxuKL-fGWCbaW3EAza?usp=sharing) |
61
+ | Qwen2.5-Omni-3B 10k sft | 58.4 | 63.2 | 58.0 | 59.87(+7.69) | [google-drive](https://drive.google.com/drive/folders/1auQ4mx9CcxIzAIF4SyH034xufzrqe29w?usp=sharing) |
62
+ | Qwen2.5-Omni-3B 20k sft | 59.2 | 64 | 58.4 | 60.50(+8.32) | [google-drive](https://drive.google.com/drive/folders/11WJZkq8I_807zJUmBCCvwNjSj18F2im9?usp=sharing) |
63
+ | UGC-VideoCaptioner-3B (1k SFT + 1k RL) | 59.4 | 62.4 | 58.2 | 60.01(**+7.83**) | [google-drive](https://drive.google.com/drive/folders/1LGmIU60cdacErNgUk86D8I5_kiU_ljFz?usp=sharing) |
64
+
65
+ ## Quick Start
66
+
67
+ You can use this model with the `transformers` library. Below is a quick example demonstrating how to perform inference.
68
+ Please note that for full video processing capabilities, you might need to install `decord` and refer to the [official GitHub repository](https://github.com/WPR001/UGC_VideoCaptioner/tree/main?tab=readme-ov-file) for detailed video handling steps, especially if `AutoProcessor` doesn't directly handle video file paths for complex scenarios.
69
+
70
+ ### Environment Setup
71
+
72
+ ```bash
73
+ pip install transformers torch decord soundfile qwen_omni_utils
74
+ ```
75
+
76
+ ### Inference
77
+
78
+ ```python
79
+ import soundfile as sf
80
+
81
+ from transformers import Qwen2_5OmniForConditionalGeneration, Qwen2_5OmniProcessor
82
+ from qwen_omni_utils import process_mm_info
83
+
84
+ model = Qwen2_5OmniForConditionalGeneration.from_pretrained("openinterx/UGC-VideoCaptioner", torch_dtype="auto", device_map="auto")
85
+
86
+ # We recommend enabling flash_attention_2 for better acceleration and memory saving.
87
+ # model = Qwen2_5OmniForConditionalGeneration.from_pretrained(
88
+ # "Qwen/Qwen2.5-Omni-3B",
89
+ # torch_dtype="auto",
90
+ # device_map="auto",
91
+ # attn_implementation="flash_attention_2",
92
+ # )
93
+
94
+ processor = Qwen2_5OmniProcessor.from_pretrained("openinterx/UGC-VideoCaptioner")
95
+
96
+ # Example video path (replace with your actual video file path)
97
+ video_path = "path/to/your/video.mp4"
98
+
99
+ # Define the detailed captioning prompt
100
+ prompt_text = (
101
+ "You are given a short video with both audio and visual content. Write a detailed and coherent paragraph "
102
+ "that naturally integrates all modalities. Your description should include: (1) the primary scene and "
103
+ "background setting; (2) key characters or objects and their actions or interactions; (3) significant "
104
+ "audio cues such as voices, background music, sound effects, and their emotional tone; (4) any on-screen "
105
+ "text (OCR) and its role in the video context; and (5) the overall theme or purpose of the video. "
106
+ "Ensure the output is a fluent and objective paragraph, not a bullet-point list, and captures the video's "
107
+ "content in a human-like, narrative style."
108
+ )
109
+
110
+ # Prepare messages in the chat template format
111
+ messages = [
112
+ {
113
+ "role": "user",
114
+ "content": [
115
+ {"type": "video", "video": video_path}, # Pass video path
116
+ {"type": "text", "text": prompt_text},
117
+ ],
118
+ }
119
+ ]
120
+
121
+
122
+ # set use audio in video
123
+ USE_AUDIO_IN_VIDEO = True
124
+
125
+ # Preparation for inference
126
+ text = processor.apply_chat_template(conversation, add_generation_prompt=True, tokenize=False)
127
+ audios, images, videos = process_mm_info(conversation, use_audio_in_video=USE_AUDIO_IN_VIDEO)
128
+ inputs = processor(text=text, audio=audios, images=images, videos=videos, return_tensors="pt", padding=True, use_audio_in_video=USE_AUDIO_IN_VIDEO)
129
+ inputs = inputs.to(model.device).to(model.dtype)
130
+
131
+ # Inference: Generation of the output text and audio
132
+ text_ids, audio = model.generate(**inputs, use_audio_in_video=USE_AUDIO_IN_VIDEO)
133
+
134
+ text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)
135
+ print(text)
136
+ sf.write(
137
+ "output.wav",
138
+ audio.reshape(-1).detach().cpu().numpy(),
139
+ samplerate=24000,
140
+ )
141
+ ```
142
+
143
+
144
+
145
+ ### vllm inference
146
+
147
+ ```python
148
+ # pip install vllm
149
+ # pip install transformers==4.52.3
150
+
151
+
152
+ import os
153
+ import json
154
+ import re
155
+ from tqdm import tqdm
156
+ from vllm import LLM, SamplingParams
157
+ from vllm.assets.video import VideoAsset
158
+ from vllm.utils import FlexibleArgumentParser
159
+
160
+ VIDEO_DIR = "/workspace/benchmark/video"
161
+ OUTPUT_JSONL = "/workspace/benchmark/omni_vllm_sft_result_same_parameter.jsonl"
162
+ USE_AUDIO_IN_VIDEO = True
163
+ MAX_RETRY = 3
164
+
165
+ # Ensure output file exists
166
+ def ensure_output_file(path: str):
167
+ if not os.path.exists(path):
168
+ open(path, "w", encoding="utf-8").close()
169
+
170
+ # Load processed video IDs to skip
171
+
172
+ def load_processed_ids(jsonl_path: str) -> set[str]:
173
+ processed = set()
174
+ with open(jsonl_path, "r", encoding="utf-8") as fin:
175
+ for line in fin:
176
+ try:
177
+ data = json.loads(line)
178
+ vid = data.get("video_id")
179
+ if vid:
180
+ processed.add(vid)
181
+ except json.JSONDecodeError:
182
+ continue
183
+ return processed
184
+
185
+ # Regex to verify level tag at end of caption
186
+ # 没有level
187
+ LEVEL_PATTERN = re.compile(r"<level>[A-F]</level>\s*$")
188
+
189
+ PROMPT_TEMPLATE = (
190
+ f"<|im_start|>system\n" +
191
+ "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. Please make sure that the content within the answer is long and detailed enough." +
192
+ "<|im_end|>\n"
193
+ "<|im_start|>user\n<|vision_bos|><|VIDEO|><|vision_eos|>"
194
+ "You are given a short video with both audio and visual content. Write a detailed and coherent paragraph that naturally integrates all modalities. "
195
+ "Your description should include: (1) the primary scene and background setting; (2) key characters or objects and their actions or interactions; "
196
+ "(3) significant audio cues such as voices, background music, sound effects, and their emotional tone; "
197
+ "(4) any on-screen text (OCR) and its role in the video context; and (5) the overall theme or purpose of the video. "
198
+ "Ensure the output is a fluent and objective paragraph, not a bullet-point list, and captures the video's content in a human-like, narrative style. <|im_end|>\n"
199
+ "<|im_start|>assistant\n"
200
+ )
201
+
202
+
203
+ def process_video_folder(model_name: str, seed: int = None):
204
+ ensure_output_file(OUTPUT_JSONL)
205
+ video_files = sorted(f for f in os.listdir(VIDEO_DIR) if f.lower().endswith(".mp4"))
206
+ processed_ids = load_processed_ids(OUTPUT_JSONL)
207
+
208
+ llm = LLM(
209
+ model=model_name,
210
+ max_model_len=20000,
211
+ max_num_seqs=5,
212
+ limit_mm_per_prompt={"video": 1, "audio": 1},
213
+ seed=seed,
214
+ )
215
+ sampling_params = SamplingParams(temperature=0.2, max_tokens=1024)
216
+
217
+ with open(OUTPUT_JSONL, "a", encoding="utf-8") as fout:
218
+ for fname in tqdm(video_files, desc="Processing videos"):
219
+ video_id = os.path.splitext(fname)[0]
220
+ if video_id in processed_ids:
221
+ print(f"[Skip] {fname} already processed, skipping.")
222
+ continue
223
+
224
+ fpath = os.path.join(VIDEO_DIR, fname)
225
+ valid_caption = None
226
+ try:
227
+ video_asset = VideoAsset(path=fpath, num_frames=32)
228
+ audio = video_asset.get_audio(sampling_rate=16000)
229
+
230
+ inputs = {
231
+ "prompt": PROMPT_TEMPLATE,
232
+ "multi_modal_data": {"video": video_asset.np_ndarrays, "audio": audio},
233
+ "mm_processor_kwargs": {"use_audio_in_video": USE_AUDIO_IN_VIDEO},
234
+ }
235
+
236
+ for attempt in range(MAX_RETRY):
237
+ outputs = llm.generate(inputs, sampling_params=sampling_params)
238
+ text = outputs[0].outputs[0].text.strip()
239
+ if text and LEVEL_PATTERN.search(text):
240
+ valid_caption = text
241
+ break
242
+ else:
243
+ print(f"[Retry] Attempt {attempt+1} for {fname} did not end with level tag, retrying...")
244
+
245
+ if not valid_caption:
246
+ print(f"[Warning] {fname} failed to get valid level tag after {MAX_RETRY} attempts, skipping.")
247
+ continue
248
+
249
+ fout.write(json.dumps({"video_id": video_id, "caption": valid_caption}, ensure_ascii=False) + "\n")
250
+ fout.flush()
251
+ processed_ids.add(video_id)
252
+
253
+ except Exception as e:
254
+ print(f"[Error] Failed to process {fname}: {e}")
255
+ continue
256
+
257
+ print(f"✅ Done! Processed videos with skipping and level validation. Output written to {OUTPUT_JSONL}")
258
+
259
+
260
+ def parse_args():
261
+ parser = FlexibleArgumentParser(description="Batch inference for a folder of videos using Qwen2.5-Omni + vLLM.")
262
+ parser.add_argument("--model-name", type=str, default="/workspace/output_model/tiktok_caption/omni_sft_20k_level/v1-20250701-150049/checkpoint-2404-merged", help="Model path or name.")
263
+ parser.add_argument("--seed", type=int, default=42, help="Random seed for reproducibility.")
264
+ return parser.parse_args()
265
+
266
+
267
+ if __name__ == "__main__":
268
+ args = parse_args()
269
+ process_video_folder(args.model_name, args.seed)
270
+
271
+ ```
272
+
273
+
274
+ ## Evaluation
275
+
276
+ ### Final Caption prompt (for inference)
277
+
278
+ ```python
279
+ prompt = "You are given a short video with both audio and visual content. Write a detailed and coherent paragraph that naturally integrates all modalities. "
280
+ "Your description should include: (1) the primary scene and background setting; (2) key characters or objects and their actions or interactions; "
281
+ "(3) significant audio cues such as voices, background music, sound effects, and their emotional tone; "
282
+ "(4) any on-screen text (OCR) and its role in the video context; and (5) the overall theme or purpose of the video. "
283
+ "Ensure the output is a fluent and objective paragraph, not a bullet-point list, and captures the video's content in a human-like, narrative style.
284
+ ```
285
+
286
+ ### Score
287
+
288
+ Scores are judged by GPT-4o-2024-08-06.
289
+
290
+ ```bash
291
+ python eval_caption.py
292
+ ```
293
+
294
+ ## Citation
295
+
296
+ If you find this repository helpful, feel free to cite our paper:
297
+
298
+ ```bibtex
299
+ @article{wu2025ugc,
300
+ title={UGC-VideoCaptioner: An Omni UGC Video Detail Caption Model and New Benchmarks},
301
+ author={Wu, Peiran and Liu, Yunze and Zhu, Zhengdong and Zhou, Enmin and Shen, Shawn},
302
+ journal={arXiv preprint arXiv:2507.11336},
303
+ year={2025}
304
+ }
305
+ ```
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
+ }
args.json ADDED
@@ -0,0 +1,451 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "model": "/workspace/output_model/tiktok_caption/omni_sft/1k/v0-20250703-214042/checkpoint-62-merged",
3
+ "model_type": "qwen2_5_omni",
4
+ "model_revision": null,
5
+ "task_type": "causal_lm",
6
+ "torch_dtype": "bfloat16",
7
+ "attn_impl": null,
8
+ "num_labels": null,
9
+ "problem_type": null,
10
+ "rope_scaling": null,
11
+ "device_map": null,
12
+ "max_memory": {},
13
+ "local_repo_path": null,
14
+ "init_strategy": null,
15
+ "template": "qwen2_5_omni",
16
+ "system": "A conversation between User and Assistant. The user asks a question, and the Assistant solves it. Please make sure that the content within the answer is long and detailed enough.\n",
17
+ "max_length": 8192,
18
+ "truncation_strategy": "left",
19
+ "max_pixels": null,
20
+ "agent_template": null,
21
+ "norm_bbox": null,
22
+ "response_prefix": null,
23
+ "padding_side": "right",
24
+ "loss_scale": "last_round",
25
+ "sequence_parallel_size": 1,
26
+ "use_chat_template": true,
27
+ "template_backend": "swift",
28
+ "dataset": [
29
+ "/workspace/Tiktok_caption/amount_ablation/10k_grpo_1k.jsonl"
30
+ ],
31
+ "val_dataset": [],
32
+ "split_dataset_ratio": 0.02,
33
+ "data_seed": 42,
34
+ "dataset_num_proc": 4,
35
+ "load_from_cache_file": false,
36
+ "dataset_shuffle": true,
37
+ "val_dataset_shuffle": false,
38
+ "streaming": false,
39
+ "interleave_prob": null,
40
+ "stopping_strategy": "first_exhausted",
41
+ "shuffle_buffer_size": 1000,
42
+ "download_mode": "reuse_dataset_if_exists",
43
+ "columns": {},
44
+ "strict": false,
45
+ "remove_unused_columns": false,
46
+ "model_name": [
47
+ null,
48
+ null
49
+ ],
50
+ "model_author": [
51
+ null,
52
+ null
53
+ ],
54
+ "custom_dataset_info": [],
55
+ "quant_method": null,
56
+ "quant_bits": null,
57
+ "hqq_axis": null,
58
+ "bnb_4bit_compute_dtype": "bfloat16",
59
+ "bnb_4bit_quant_type": "nf4",
60
+ "bnb_4bit_use_double_quant": true,
61
+ "bnb_4bit_quant_storage": null,
62
+ "max_new_tokens": 64,
63
+ "temperature": 1.0,
64
+ "top_k": 50,
65
+ "top_p": 0.99,
66
+ "repetition_penalty": 1.0,
67
+ "num_beams": 1,
68
+ "stream": false,
69
+ "stop_words": [],
70
+ "logprobs": false,
71
+ "top_logprobs": null,
72
+ "ckpt_dir": "/workspace/output_model/tiktok_caption/omni_sft/1k/v0-20250703-214042/checkpoint-62-merged",
73
+ "lora_modules": [],
74
+ "tuner_backend": "peft",
75
+ "train_type": "lora",
76
+ "adapters": [],
77
+ "external_plugins": [
78
+ "examples/train/grpo/plugin/plugin.py"
79
+ ],
80
+ "seed": 42,
81
+ "model_kwargs": {},
82
+ "load_args": false,
83
+ "load_data_args": false,
84
+ "use_hf": false,
85
+ "hub_token": null,
86
+ "custom_register_path": [],
87
+ "ignore_args_error": false,
88
+ "use_swift_lora": false,
89
+ "output_dir": "/workspace/output_model/tiktok_caption/omni_20k_r1/10k_r1_new/v0-20250706-121650",
90
+ "overwrite_output_dir": false,
91
+ "do_train": false,
92
+ "do_eval": false,
93
+ "do_predict": false,
94
+ "eval_strategy": "steps",
95
+ "prediction_loss_only": false,
96
+ "per_device_train_batch_size": 2,
97
+ "per_device_eval_batch_size": 2,
98
+ "per_gpu_train_batch_size": null,
99
+ "per_gpu_eval_batch_size": null,
100
+ "gradient_accumulation_steps": 1,
101
+ "eval_accumulation_steps": null,
102
+ "eval_delay": 0,
103
+ "torch_empty_cache_steps": null,
104
+ "learning_rate": 1e-05,
105
+ "weight_decay": 0.1,
106
+ "adam_beta1": 0.9,
107
+ "adam_beta2": 0.95,
108
+ "adam_epsilon": 1e-08,
109
+ "max_grad_norm": 1.0,
110
+ "num_train_epochs": 1.0,
111
+ "max_steps": -1,
112
+ "lr_scheduler_type": "cosine",
113
+ "lr_scheduler_kwargs": null,
114
+ "warmup_ratio": 0.05,
115
+ "warmup_steps": 0,
116
+ "log_level": "passive",
117
+ "log_level_replica": "warning",
118
+ "log_on_each_node": true,
119
+ "logging_dir": "/workspace/output_model/tiktok_caption/omni_20k_r1/10k_r1_new/v0-20250706-121650/runs",
120
+ "logging_strategy": "steps",
121
+ "logging_first_step": true,
122
+ "logging_steps": 5,
123
+ "logging_nan_inf_filter": true,
124
+ "save_strategy": "steps",
125
+ "save_steps": 50.0,
126
+ "save_total_limit": 5,
127
+ "save_safetensors": true,
128
+ "save_on_each_node": false,
129
+ "save_only_model": false,
130
+ "restore_callback_states_from_checkpoint": false,
131
+ "no_cuda": false,
132
+ "use_cpu": false,
133
+ "use_mps_device": false,
134
+ "jit_mode_eval": false,
135
+ "use_ipex": false,
136
+ "bf16": true,
137
+ "fp16": false,
138
+ "fp16_opt_level": "O1",
139
+ "half_precision_backend": "auto",
140
+ "bf16_full_eval": false,
141
+ "fp16_full_eval": false,
142
+ "tf32": null,
143
+ "local_rank": 0,
144
+ "ddp_backend": null,
145
+ "tpu_num_cores": null,
146
+ "tpu_metrics_debug": false,
147
+ "debug": null,
148
+ "dataloader_drop_last": false,
149
+ "eval_steps": 1000.0,
150
+ "dataloader_num_workers": 4,
151
+ "dataloader_prefetch_factor": null,
152
+ "past_index": -1,
153
+ "run_name": "/workspace/output_model/tiktok_caption/omni_20k_r1/10k_r1_new/v0-20250706-121650",
154
+ "disable_tqdm": null,
155
+ "label_names": null,
156
+ "load_best_model_at_end": false,
157
+ "metric_for_best_model": "reward",
158
+ "greater_is_better": true,
159
+ "ignore_data_skip": false,
160
+ "fsdp": "",
161
+ "fsdp_min_num_params": 0,
162
+ "fsdp_config": null,
163
+ "fsdp_transformer_layer_cls_to_wrap": null,
164
+ "accelerator_config": {
165
+ "dispatch_batches": false
166
+ },
167
+ "deepspeed": {
168
+ "fp16": {
169
+ "enabled": "auto",
170
+ "loss_scale": 0,
171
+ "loss_scale_window": 1000,
172
+ "initial_scale_power": 16,
173
+ "hysteresis": 2,
174
+ "min_loss_scale": 1
175
+ },
176
+ "bf16": {
177
+ "enabled": "auto"
178
+ },
179
+ "zero_optimization": {
180
+ "stage": 2,
181
+ "offload_optimizer": {
182
+ "device": "none",
183
+ "pin_memory": true
184
+ },
185
+ "allgather_partitions": true,
186
+ "allgather_bucket_size": 200000000.0,
187
+ "overlap_comm": false,
188
+ "reduce_scatter": true,
189
+ "reduce_bucket_size": 200000000.0,
190
+ "contiguous_gradients": true
191
+ },
192
+ "gradient_accumulation_steps": "auto",
193
+ "gradient_clipping": "auto",
194
+ "steps_per_print": 2000,
195
+ "train_batch_size": "auto",
196
+ "train_micro_batch_size_per_gpu": "auto",
197
+ "wall_clock_breakdown": false
198
+ },
199
+ "label_smoothing_factor": 0.0,
200
+ "optim": "adamw_torch",
201
+ "optim_args": null,
202
+ "adafactor": false,
203
+ "group_by_length": false,
204
+ "length_column_name": "length",
205
+ "report_to": [
206
+ "wandb"
207
+ ],
208
+ "ddp_find_unused_parameters": null,
209
+ "ddp_bucket_cap_mb": null,
210
+ "ddp_broadcast_buffers": null,
211
+ "dataloader_pin_memory": true,
212
+ "dataloader_persistent_workers": false,
213
+ "skip_memory_metrics": true,
214
+ "use_legacy_prediction_loop": false,
215
+ "push_to_hub": false,
216
+ "resume_from_checkpoint": null,
217
+ "hub_model_id": null,
218
+ "hub_strategy": "every_save",
219
+ "hub_private_repo": null,
220
+ "hub_always_push": false,
221
+ "gradient_checkpointing": true,
222
+ "gradient_checkpointing_kwargs": null,
223
+ "include_inputs_for_metrics": false,
224
+ "include_for_metrics": [],
225
+ "eval_do_concat_batches": true,
226
+ "fp16_backend": "auto",
227
+ "push_to_hub_model_id": null,
228
+ "push_to_hub_organization": null,
229
+ "push_to_hub_token": null,
230
+ "mp_parameters": "",
231
+ "auto_find_batch_size": false,
232
+ "full_determinism": false,
233
+ "torchdynamo": null,
234
+ "ray_scope": "last",
235
+ "ddp_timeout": 1800,
236
+ "torch_compile": false,
237
+ "torch_compile_backend": null,
238
+ "torch_compile_mode": null,
239
+ "include_tokens_per_second": false,
240
+ "include_num_input_tokens_seen": false,
241
+ "neftune_noise_alpha": null,
242
+ "optim_target_modules": null,
243
+ "batch_eval_metrics": false,
244
+ "eval_on_start": false,
245
+ "use_liger_kernel": false,
246
+ "eval_use_gather_object": false,
247
+ "average_tokens_across_devices": false,
248
+ "sortish_sampler": false,
249
+ "predict_with_generate": false,
250
+ "generation_max_length": null,
251
+ "generation_num_beams": null,
252
+ "generation_config": null,
253
+ "check_model": true,
254
+ "acc_strategy": "token",
255
+ "train_dataloader_shuffle": true,
256
+ "max_epochs": null,
257
+ "metric_warmup_step": 0,
258
+ "fsdp_num": 1,
259
+ "acc_steps": 1,
260
+ "eval_use_evalscope": false,
261
+ "eval_datasets": [],
262
+ "eval_limit": null,
263
+ "eval_datasets_args": null,
264
+ "eval_generation_config": null,
265
+ "freeze_parameters": [
266
+ "thinker.audio_tower",
267
+ "thinker.visual",
268
+ "thinker.audio_tower.proj",
269
+ "thinker.visual.merger",
270
+ "talker",
271
+ "token2wav"
272
+ ],
273
+ "freeze_parameters_regex": null,
274
+ "freeze_parameters_ratio": 0.0,
275
+ "trainable_parameters": [],
276
+ "trainable_parameters_regex": null,
277
+ "freeze_llm": false,
278
+ "freeze_vit": true,
279
+ "freeze_aligner": true,
280
+ "target_modules": [
281
+ "all-linear"
282
+ ],
283
+ "target_regex": null,
284
+ "modules_to_save": [],
285
+ "lora_rank": 8,
286
+ "lora_alpha": 32,
287
+ "lora_dropout": 0.05,
288
+ "lora_bias": "none",
289
+ "lora_dtype": null,
290
+ "lorap_lr_ratio": null,
291
+ "use_rslora": false,
292
+ "use_dora": false,
293
+ "lora_ga_batch_size": 2,
294
+ "lora_ga_iters": 2,
295
+ "lora_ga_max_length": 1024,
296
+ "lora_ga_direction": "ArB2r",
297
+ "lora_ga_scale": "stable",
298
+ "lora_ga_stable_gamma": 16,
299
+ "init_weights": true,
300
+ "fourier_n_frequency": 2000,
301
+ "fourier_scaling": 300.0,
302
+ "boft_block_size": 4,
303
+ "boft_block_num": 0,
304
+ "boft_n_butterfly_factor": 1,
305
+ "boft_dropout": 0.0,
306
+ "vera_rank": 256,
307
+ "vera_projection_prng_key": 0,
308
+ "vera_dropout": 0.0,
309
+ "vera_d_initial": 0.1,
310
+ "adapter_act": "gelu",
311
+ "adapter_length": 128,
312
+ "use_galore": false,
313
+ "galore_target_modules": null,
314
+ "galore_rank": 128,
315
+ "galore_update_proj_gap": 50,
316
+ "galore_scale": 1.0,
317
+ "galore_proj_type": "std",
318
+ "galore_optim_per_parameter": false,
319
+ "galore_with_embedding": false,
320
+ "galore_quantization": false,
321
+ "galore_proj_quant": false,
322
+ "galore_proj_bits": 4,
323
+ "galore_proj_group_size": 256,
324
+ "galore_cos_threshold": 0.4,
325
+ "galore_gamma_proj": 2,
326
+ "galore_queue_size": 5,
327
+ "adalora_target_r": 8,
328
+ "adalora_init_r": 12,
329
+ "adalora_tinit": 0,
330
+ "adalora_tfinal": 0,
331
+ "adalora_deltaT": 1,
332
+ "adalora_beta1": 0.85,
333
+ "adalora_beta2": 0.85,
334
+ "adalora_orth_reg_weight": 0.5,
335
+ "llamapro_num_new_blocks": 4,
336
+ "llamapro_num_groups": null,
337
+ "lisa_activated_layers": 0,
338
+ "lisa_step_interval": 20,
339
+ "reft_layer_key": null,
340
+ "reft_layers": null,
341
+ "reft_rank": 4,
342
+ "reft_intervention_type": "LoreftIntervention",
343
+ "reft_args": null,
344
+ "swanlab_token": null,
345
+ "swanlab_project": null,
346
+ "swanlab_workspace": null,
347
+ "swanlab_exp_name": null,
348
+ "swanlab_mode": "cloud",
349
+ "add_version": true,
350
+ "resume_only_model": false,
351
+ "create_checkpoint_symlink": false,
352
+ "packing": false,
353
+ "lazy_tokenize": true,
354
+ "loss_type": "grpo",
355
+ "optimizer": null,
356
+ "metric": null,
357
+ "zero_hpz_partition_size": null,
358
+ "reward_model": null,
359
+ "reward_adapters": [],
360
+ "reward_model_type": null,
361
+ "reward_model_revision": null,
362
+ "num_ppo_epochs": 4,
363
+ "whiten_rewards": false,
364
+ "kl_coef": 0.05,
365
+ "cliprange": 0.2,
366
+ "vf_coef": 0.1,
367
+ "cliprange_value": 0.2,
368
+ "gamma": 1.0,
369
+ "lam": 0.95,
370
+ "num_mini_batches": 1,
371
+ "local_rollout_forward_batch_size": 64,
372
+ "num_sample_generations": 10,
373
+ "response_length": 512,
374
+ "missing_eos_penalty": null,
375
+ "epsilon": 0.2,
376
+ "epsilon_high": null,
377
+ "num_infer_workers": null,
378
+ "vllm_mode": "colocate",
379
+ "vllm_device": null,
380
+ "vllm_gpu_memory_utilization": 0.9,
381
+ "vllm_max_model_len": null,
382
+ "vllm_max_num_seqs": null,
383
+ "vllm_enforce_eager": false,
384
+ "vllm_limit_mm_per_prompt": null,
385
+ "vllm_enable_prefix_caching": true,
386
+ "vllm_tensor_parallel_size": 1,
387
+ "vllm_server_host": null,
388
+ "vllm_server_port": 8000,
389
+ "vllm_server_timeout": 240.0,
390
+ "cosine_min_len_value_wrong": -0.5,
391
+ "cosine_max_len_value_wrong": 0.0,
392
+ "cosine_min_len_value_correct": 1.0,
393
+ "cosine_max_len_value_correct": 0.5,
394
+ "cosine_max_len": null,
395
+ "repetition_n_grams": 3,
396
+ "repetition_max_penalty": -1.0,
397
+ "reward_model_plugin": null,
398
+ "sync_ref_model": false,
399
+ "ref_model_sync_steps": 512,
400
+ "ref_model_mixup_alpha": 0.6,
401
+ "async_generate": false,
402
+ "tensor_parallel_size": null,
403
+ "sleep_level": 0,
404
+ "move_model_batches": null,
405
+ "offload_optimizer": false,
406
+ "offload_model": false,
407
+ "gc_collect_after_offload": false,
408
+ "multi_turn_func": null,
409
+ "completion_length_limit_scope": "per_round",
410
+ "dynamic_sample": false,
411
+ "max_resample_times": 3,
412
+ "overlong_filter": false,
413
+ "soft_max_length": null,
414
+ "soft_cache_length": null,
415
+ "scale_rewards": true,
416
+ "wandb_log_unique_prompts": null,
417
+ "num_generations": 8,
418
+ "max_completion_length": 1024,
419
+ "ds3_gather_for_generation": true,
420
+ "reward_funcs": [
421
+ "audio_visual_detail_llm_judge_gemini",
422
+ "output_length_control",
423
+ "no_check_format"
424
+ ],
425
+ "reward_weights": null,
426
+ "log_completions": true,
427
+ "use_vllm": false,
428
+ "num_iterations": 1,
429
+ "rlhf_type": "grpo",
430
+ "ref_model": null,
431
+ "ref_model_type": null,
432
+ "ref_model_revision": null,
433
+ "beta": 0.04,
434
+ "label_smoothing": 0,
435
+ "rpo_alpha": 1.0,
436
+ "cpo_alpha": 1.0,
437
+ "simpo_gamma": 1,
438
+ "desirable_weight": 1.0,
439
+ "undesirable_weight": 1.0,
440
+ "center_rewards_coefficient": null,
441
+ "rank": 0,
442
+ "global_world_size": 8,
443
+ "local_world_size": 8,
444
+ "model_suffix": "checkpoint-62-merged",
445
+ "model_info": "ModelInfo(model_type='qwen2_5_omni', model_dir='/workspace/output_model/tiktok_caption/omni_sft/1k/v0-20250703-214042/checkpoint-62-merged', torch_dtype=torch.bfloat16, max_model_len=32768, quant_method=None, quant_bits=None, rope_scaling={'mrope_section': [16, 24, 24], 'rope_type': 'default', 'type': 'default'}, config=None, task_type='causal_lm', num_labels=None)",
446
+ "model_meta": "ModelMeta(model_type='qwen2_5_omni', model_groups=[ModelGroup(models=[Model(ms_model_id='Qwen/Qwen2.5-Omni-3B', hf_model_id='Qwen/Qwen2.5-Omni-3B', model_path=None, ms_revision=None, hf_revision=None), Model(ms_model_id='Qwen/Qwen2.5-Omni-7B', hf_model_id='Qwen/Qwen2.5-Omni-7B', model_path=None, ms_revision=None, hf_revision=None)], ignore_patterns=None, requires=None, tags=[])], template='qwen2_5_omni', get_function=<function get_model_tokenizer_qwen2_5_omni at 0x71fe7096fbe0>, model_arch='qwen2_5_omni', architectures=['Qwen2_5OmniModel', 'Qwen2_5OmniForConditionalGeneration'], additional_saved_files=['spk_dict.pt'], torch_dtype=None, is_multimodal=True, is_reward=False, task_type=None, ignore_patterns=[], requires=['transformers>=4.50', 'soundfile', 'qwen_omni_utils', 'decord'], tags=['vision', 'video', 'audio'])",
447
+ "model_dir": "/workspace/output_model/tiktok_caption/omni_sft/1k/v0-20250703-214042/checkpoint-62-merged",
448
+ "hub": "<class 'swift.hub.hub.MSHub'>",
449
+ "evaluation_strategy": "steps",
450
+ "training_args": "GRPOConfig(output_dir='/workspace/output_model/tiktok_caption/omni_20k_r1/10k_r1_new/v0-20250706-121650', overwrite_output_dir=False, do_train=False, do_eval=True, do_predict=False, eval_strategy=<IntervalStrategy.STEPS: 'steps'>, prediction_loss_only=False, per_device_train_batch_size=2, per_device_eval_batch_size=2, per_gpu_train_batch_size=None, per_gpu_eval_batch_size=None, gradient_accumulation_steps=1, eval_accumulation_steps=None, eval_delay=0, torch_empty_cache_steps=None, learning_rate=1e-05, weight_decay=0.1, adam_beta1=0.9, adam_beta2=0.95, adam_epsilon=1e-08, max_grad_norm=1.0, num_train_epochs=1.0, max_steps=-1, lr_scheduler_type=<SchedulerType.COSINE: 'cosine'>, lr_scheduler_kwargs=None, warmup_ratio=0.05, warmup_steps=0, log_level='passive', log_level_replica='warning', log_on_each_node=True, logging_dir='/workspace/output_model/tiktok_caption/omni_20k_r1/10k_r1_new/v0-20250706-121650/runs', logging_strategy=<IntervalStrategy.STEPS: 'steps'>, logging_first_step=True, logging_steps=5, logging_nan_inf_filter=True, save_strategy=<SaveStrategy.STEPS: 'steps'>, save_steps=50, save_total_limit=5, save_safetensors=True, save_on_each_node=False, save_only_model=False, restore_callback_states_from_checkpoint=False, no_cuda=False, use_cpu=False, use_mps_device=False, seed=42, data_seed=42, jit_mode_eval=False, use_ipex=False, bf16=True, fp16=False, fp16_opt_level='O1', half_precision_backend='auto', bf16_full_eval=False, fp16_full_eval=False, tf32=None, local_rank=0, ddp_backend=None, tpu_num_cores=None, tpu_metrics_debug=False, debug=[], dataloader_drop_last=True, eval_steps=1000, dataloader_num_workers=4, dataloader_prefetch_factor=10, past_index=-1, run_name='/workspace/output_model/tiktok_caption/omni_20k_r1/10k_r1_new/v0-20250706-121650', disable_tqdm=False, remove_unused_columns=False, label_names=None, load_best_model_at_end=False, metric_for_best_model='reward', greater_is_better=True, ignore_data_skip=False, fsdp=[], fsdp_min_num_params=0, fsdp_config={'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}, fsdp_transformer_layer_cls_to_wrap=None, accelerator_config=AcceleratorConfig(split_batches=False, dispatch_batches=False, even_batches=True, use_seedable_sampler=True, non_blocking=False, gradient_accumulation_kwargs=None, use_configured_state=False), deepspeed={'fp16': {'enabled': 'auto', 'loss_scale': 0, 'loss_scale_window': 1000, 'initial_scale_power': 16, 'hysteresis': 2, 'min_loss_scale': 1}, 'bf16': {'enabled': 'auto'}, 'zero_optimization': {'stage': 2, 'offload_optimizer': {'device': 'none', 'pin_memory': True}, 'allgather_partitions': True, 'allgather_bucket_size': 200000000.0, 'overlap_comm': False, 'reduce_scatter': True, 'reduce_bucket_size': 200000000.0, 'contiguous_gradients': True}, 'gradient_accumulation_steps': 'auto', 'gradient_clipping': 'auto', 'steps_per_print': 2000, 'train_batch_size': 'auto', 'train_micro_batch_size_per_gpu': 'auto', 'wall_clock_breakdown': False}, label_smoothing_factor=0.0, optim=<OptimizerNames.ADAMW_TORCH: 'adamw_torch'>, optim_args=None, adafactor=False, group_by_length=False, length_column_name='length', report_to=['wandb'], ddp_find_unused_parameters=None, ddp_bucket_cap_mb=None, ddp_broadcast_buffers=None, dataloader_pin_memory=True, dataloader_persistent_workers=False, skip_memory_metrics=True, use_legacy_prediction_loop=False, push_to_hub=False, resume_from_checkpoint=None, hub_model_id=None, hub_strategy=<HubStrategy.EVERY_SAVE: 'every_save'>, hub_token=None, hub_private_repo=None, hub_always_push=False, gradient_checkpointing=True, gradient_checkpointing_kwargs=None, include_inputs_for_metrics=False, include_for_metrics=[], eval_do_concat_batches=True, fp16_backend='auto', push_to_hub_model_id=None, push_to_hub_organization=None, push_to_hub_token=None, mp_parameters='', auto_find_batch_size=False, full_determinism=False, torchdynamo=None, ray_scope='last', ddp_timeout=1800, torch_compile=False, torch_compile_backend=None, torch_compile_mode=None, include_tokens_per_second=None, include_num_input_tokens_seen=None, neftune_noise_alpha=None, optim_target_modules=None, batch_eval_metrics=False, eval_on_start=False, use_liger_kernel=False, eval_use_gather_object=False, average_tokens_across_devices=None, model_init_kwargs=None, disable_dropout=False, max_prompt_length=512, num_generations=8, max_completion_length=1024, ds3_gather_for_generation=True, shuffle_dataset=True, temperature=1.0, top_p=0.99, top_k=50, min_p=None, repetition_penalty=1.0, cache_implementation=None, use_vllm=False, vllm_server_host=None, vllm_server_port=8000, vllm_server_timeout=240.0, vllm_guided_decoding_regex=None, beta=0.04, num_iterations=1, epsilon=0.2, epsilon_high=None, reward_weights=None, scale_rewards=True, loss_type='grpo', mask_truncated_completions=False, sync_ref_model=False, ref_model_mixup_alpha=0.6, ref_model_sync_steps=512, use_liger_loss=False, log_completions=True, num_completions_to_print=None, wandb_log_unique_prompts=None, vllm_device=None, vllm_gpu_memory_utilization=0.9, vllm_dtype=None, vllm_max_model_len=None, vllm_enable_prefix_caching=True, check_model=True, acc_strategy='token', train_dataloader_shuffle=True, max_epochs=None, metric_warmup_step=0, fsdp_num=1, acc_steps=1, eval_use_evalscope=False, eval_datasets=[], eval_limit=None, eval_datasets_args=None, eval_generation_config=None, train_type='lora', optimizer=None, local_repo_path=None, galore_config=None, num_infer_workers=None, vllm_mode='colocate', vllm_max_num_seqs=None, vllm_enforce_eager=False, vllm_limit_mm_per_prompt={}, vllm_tensor_parallel_size=1, cosine_min_len_value_wrong=-0.5, cosine_max_len_value_wrong=0.0, cosine_min_len_value_correct=1.0, cosine_max_len_value_correct=0.5, cosine_max_len=1024, repetition_n_grams=3, repetition_max_penalty=-1.0, reward_model=None, reward_model_plugin=None, async_generate=False, tensor_parallel_size=None, sleep_level=0, move_model_batches=None, offload_optimizer=False, offload_model=False, gc_collect_after_offload=False, multi_turn_func=None, completion_length_limit_scope='per_round', dynamic_sample=False, max_resample_times=3, overlong_filter=False, soft_max_length=None, soft_cache_length=None, dataset_shuffle=True, stop_words=[])"
451
+ }
benchmark.png ADDED

Git LFS Details

  • SHA256: 07a054d8ac60bfdef2494255b7872b31e790afff1149ebbf4fa872059d37585e
  • Pointer size: 131 Bytes
  • Size of remote file: 325 kB
chat_template.jinja ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ {% 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
2
+ You are a helpful assistant.<|im_end|>
3
+ {% endif %}<|im_start|>{{ message['role'] }}
4
+ {% if message['content'] is string %}{{ message['content'] }}<|im_end|>
5
+ {% 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|>
6
+ {% endif %}{% endfor %}{% if add_generation_prompt %}<|im_start|>assistant
7
+ {% endif %}
config.json ADDED
@@ -0,0 +1,583 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "architectures": [
3
+ "Qwen2_5OmniForConditionalGeneration"
4
+ ],
5
+ "enable_audio_output": true,
6
+ "enable_talker": true,
7
+ "hidden_size": 2048,
8
+ "keys_to_ignore_at_inference": [
9
+ "past_key_values",
10
+ "hidden_states",
11
+ "attention_mask",
12
+ "hidden_states",
13
+ "attention_mask"
14
+ ],
15
+ "model_type": "qwen2_5_omni",
16
+ "pad_token_id": 151643,
17
+ "talker_config": {
18
+ "_attn_implementation_autoset": true,
19
+ "_name_or_path": "Qwen2.5-Omni-3B/talker",
20
+ "architectures": [
21
+ "Qwen2OmniTalkerForConditionalGeneration"
22
+ ],
23
+ "attention_dropout": 0.0,
24
+ "audio_end_token_id": 151648,
25
+ "audio_start_token_id": 151647,
26
+ "audio_token_index": 151646,
27
+ "embedding_size": 2048,
28
+ "head_dim": 64,
29
+ "hidden_act": "silu",
30
+ "hidden_size": 896,
31
+ "image_token_index": 151655,
32
+ "init_std": 0.02,
33
+ "initializer_range": 0.02,
34
+ "intermediate_size": 4864,
35
+ "max_position_embeddings": 32768,
36
+ "max_window_layers": 28,
37
+ "model_type": "qwen2_5_omni_talker",
38
+ "num_attention_heads": 14,
39
+ "num_hidden_layers": 24,
40
+ "num_key_value_heads": 2,
41
+ "position_id_per_seconds": 25,
42
+ "rms_norm_eps": 1e-06,
43
+ "rope_scaling": {
44
+ "mrope_section": [
45
+ 16,
46
+ 16,
47
+ 0
48
+ ],
49
+ "rope_type": "default",
50
+ "type": "default"
51
+ },
52
+ "rope_theta": 1000000.0,
53
+ "seconds_per_chunk": 2,
54
+ "sliding_window": 32768,
55
+ "spatial_merge_size": 2,
56
+ "torch_dtype": "bfloat16",
57
+ "tts_codec_end_token_id": 8294,
58
+ "tts_codec_mask_token_id": 8296,
59
+ "tts_codec_pad_token_id": 8292,
60
+ "tts_codec_start_token_id": 8293,
61
+ "tts_text_end_token_id": 151861,
62
+ "tts_text_pad_token_id": 151859,
63
+ "tts_text_start_token_id": 151860,
64
+ "use_cache": true,
65
+ "use_sliding_window": false,
66
+ "video_token_index": 151656,
67
+ "vision_end_token_id": 151653,
68
+ "vision_start_token_id": 151652,
69
+ "vocab_size": 8448
70
+ },
71
+ "thinker_config": {
72
+ "_attn_implementation_autoset": true,
73
+ "_name_or_path": "Qwen2.5-Omni-3B/thinker",
74
+ "architectures": [
75
+ "Qwen2OmniNaViTThinkerForConditionalGeneration"
76
+ ],
77
+ "audio_config": {
78
+ "_attn_implementation_autoset": false,
79
+ "_name_or_path": "",
80
+ "activation_dropout": 0.0,
81
+ "activation_function": "gelu",
82
+ "add_cross_attention": false,
83
+ "architectures": null,
84
+ "attention_dropout": 0.0,
85
+ "bad_words_ids": null,
86
+ "begin_suppress_tokens": null,
87
+ "bos_token_id": null,
88
+ "chunk_size_feed_forward": 0,
89
+ "cross_attention_hidden_size": null,
90
+ "d_model": 1280,
91
+ "decoder_start_token_id": null,
92
+ "diversity_penalty": 0.0,
93
+ "do_sample": false,
94
+ "dropout": 0.0,
95
+ "early_stopping": false,
96
+ "encoder_attention_heads": 20,
97
+ "encoder_ffn_dim": 5120,
98
+ "encoder_layerdrop": 0.0,
99
+ "encoder_layers": 32,
100
+ "encoder_no_repeat_ngram_size": 0,
101
+ "eos_token_id": null,
102
+ "exponential_decay_length_penalty": null,
103
+ "finetuning_task": null,
104
+ "forced_bos_token_id": null,
105
+ "forced_eos_token_id": null,
106
+ "id2label": {
107
+ "0": "LABEL_0",
108
+ "1": "LABEL_1"
109
+ },
110
+ "init_std": 0.02,
111
+ "initializer_range": 0.02,
112
+ "is_decoder": false,
113
+ "is_encoder_decoder": false,
114
+ "label2id": {
115
+ "LABEL_0": 0,
116
+ "LABEL_1": 1
117
+ },
118
+ "length_penalty": 1.0,
119
+ "max_length": 20,
120
+ "max_source_positions": 1500,
121
+ "min_length": 0,
122
+ "model_type": "qwen2_5_omni_audio_encoder",
123
+ "n_window": 100,
124
+ "no_repeat_ngram_size": 0,
125
+ "num_beam_groups": 1,
126
+ "num_beams": 1,
127
+ "num_hidden_layers": 32,
128
+ "num_mel_bins": 128,
129
+ "num_return_sequences": 1,
130
+ "output_attentions": false,
131
+ "output_dim": 2048,
132
+ "output_hidden_states": false,
133
+ "output_scores": false,
134
+ "pad_token_id": null,
135
+ "prefix": null,
136
+ "problem_type": null,
137
+ "pruned_heads": {},
138
+ "remove_invalid_values": false,
139
+ "repetition_penalty": 1.0,
140
+ "return_dict": true,
141
+ "return_dict_in_generate": false,
142
+ "scale_embedding": false,
143
+ "sep_token_id": null,
144
+ "suppress_tokens": null,
145
+ "task_specific_params": null,
146
+ "temperature": 1.0,
147
+ "tf_legacy_loss": false,
148
+ "tie_encoder_decoder": false,
149
+ "tie_word_embeddings": true,
150
+ "tokenizer_class": null,
151
+ "top_k": 50,
152
+ "top_p": 1.0,
153
+ "torch_dtype": null,
154
+ "torchscript": false,
155
+ "typical_p": 1.0,
156
+ "use_bfloat16": false
157
+ },
158
+ "audio_end_token_id": 151648,
159
+ "audio_start_token_id": 151647,
160
+ "audio_token_index": 151646,
161
+ "bos_token_id": 151644,
162
+ "eos_token_id": 151645,
163
+ "ignore_index": -100,
164
+ "image_token_index": 151655,
165
+ "init_std": 0.02,
166
+ "initializer_range": 0.02,
167
+ "model_type": "qwen2_5_omni_thinker",
168
+ "pad_token_id": 151643,
169
+ "position_id_per_seconds": 25,
170
+ "seconds_per_chunk": 2,
171
+ "text_config": {
172
+ "_attn_implementation_autoset": false,
173
+ "_name_or_path": "",
174
+ "add_cross_attention": false,
175
+ "architectures": null,
176
+ "attention_dropout": 0.0,
177
+ "bad_words_ids": null,
178
+ "begin_suppress_tokens": null,
179
+ "bos_token_id": null,
180
+ "chunk_size_feed_forward": 0,
181
+ "cross_attention_hidden_size": null,
182
+ "decoder_start_token_id": null,
183
+ "diversity_penalty": 0.0,
184
+ "do_sample": false,
185
+ "early_stopping": false,
186
+ "encoder_no_repeat_ngram_size": 0,
187
+ "eos_token_id": null,
188
+ "exponential_decay_length_penalty": null,
189
+ "finetuning_task": null,
190
+ "forced_bos_token_id": null,
191
+ "forced_eos_token_id": null,
192
+ "hidden_act": "silu",
193
+ "hidden_size": 2048,
194
+ "id2label": {
195
+ "0": "LABEL_0",
196
+ "1": "LABEL_1"
197
+ },
198
+ "init_std": 0.02,
199
+ "initializer_range": 0.02,
200
+ "intermediate_size": 11008,
201
+ "is_decoder": false,
202
+ "is_encoder_decoder": false,
203
+ "label2id": {
204
+ "LABEL_0": 0,
205
+ "LABEL_1": 1
206
+ },
207
+ "length_penalty": 1.0,
208
+ "max_length": 20,
209
+ "max_position_embeddings": 32768,
210
+ "max_window_layers": 70,
211
+ "min_length": 0,
212
+ "model_type": "qwen2_5_omni_text",
213
+ "no_repeat_ngram_size": 0,
214
+ "num_attention_heads": 16,
215
+ "num_beam_groups": 1,
216
+ "num_beams": 1,
217
+ "num_hidden_layers": 36,
218
+ "num_key_value_heads": 2,
219
+ "num_return_sequences": 1,
220
+ "output_attentions": false,
221
+ "output_hidden_states": false,
222
+ "output_scores": false,
223
+ "pad_token_id": null,
224
+ "prefix": null,
225
+ "problem_type": null,
226
+ "pruned_heads": {},
227
+ "remove_invalid_values": false,
228
+ "repetition_penalty": 1.0,
229
+ "return_dict": true,
230
+ "return_dict_in_generate": false,
231
+ "rms_norm_eps": 1e-06,
232
+ "rope_scaling": {
233
+ "mrope_section": [
234
+ 16,
235
+ 24,
236
+ 24
237
+ ],
238
+ "rope_type": "default",
239
+ "type": "default"
240
+ },
241
+ "rope_theta": 1000000.0,
242
+ "sep_token_id": null,
243
+ "sliding_window": 32768,
244
+ "suppress_tokens": null,
245
+ "task_specific_params": null,
246
+ "temperature": 1.0,
247
+ "tf_legacy_loss": false,
248
+ "tie_encoder_decoder": false,
249
+ "tie_word_embeddings": false,
250
+ "tokenizer_class": null,
251
+ "top_k": 50,
252
+ "top_p": 1.0,
253
+ "torch_dtype": null,
254
+ "torchscript": false,
255
+ "typical_p": 1.0,
256
+ "use_bfloat16": false,
257
+ "use_cache": true,
258
+ "use_sliding_window": false,
259
+ "vocab_size": 151936
260
+ },
261
+ "torch_dtype": "bfloat16",
262
+ "user_token_id": 872,
263
+ "video_token_index": 151656,
264
+ "vision_config": {
265
+ "_attn_implementation_autoset": false,
266
+ "_name_or_path": "",
267
+ "add_cross_attention": false,
268
+ "architectures": null,
269
+ "bad_words_ids": null,
270
+ "begin_suppress_tokens": null,
271
+ "bos_token_id": null,
272
+ "chunk_size_feed_forward": 0,
273
+ "cross_attention_hidden_size": null,
274
+ "decoder_start_token_id": null,
275
+ "depth": 32,
276
+ "diversity_penalty": 0.0,
277
+ "do_sample": false,
278
+ "early_stopping": false,
279
+ "embed_dim": 1280,
280
+ "encoder_no_repeat_ngram_size": 0,
281
+ "eos_token_id": null,
282
+ "exponential_decay_length_penalty": null,
283
+ "finetuning_task": null,
284
+ "forced_bos_token_id": null,
285
+ "forced_eos_token_id": null,
286
+ "fullatt_block_indexes": [
287
+ 7,
288
+ 15,
289
+ 23,
290
+ 31
291
+ ],
292
+ "hidden_act": "silu",
293
+ "hidden_size": 1280,
294
+ "id2label": {
295
+ "0": "LABEL_0",
296
+ "1": "LABEL_1"
297
+ },
298
+ "in_channels": 3,
299
+ "in_chans": 3,
300
+ "init_std": 0.02,
301
+ "initializer_range": 0.02,
302
+ "intermediate_size": 3420,
303
+ "is_decoder": false,
304
+ "is_encoder_decoder": false,
305
+ "label2id": {
306
+ "LABEL_0": 0,
307
+ "LABEL_1": 1
308
+ },
309
+ "length_penalty": 1.0,
310
+ "max_length": 20,
311
+ "min_length": 0,
312
+ "model_type": "qwen2_5_omni_vision_encoder",
313
+ "no_repeat_ngram_size": 0,
314
+ "num_beam_groups": 1,
315
+ "num_beams": 1,
316
+ "num_heads": 16,
317
+ "num_return_sequences": 1,
318
+ "out_hidden_size": 2048,
319
+ "output_attentions": false,
320
+ "output_hidden_states": false,
321
+ "output_scores": false,
322
+ "pad_token_id": null,
323
+ "patch_size": 14,
324
+ "prefix": null,
325
+ "problem_type": null,
326
+ "pruned_heads": {},
327
+ "remove_invalid_values": false,
328
+ "repetition_penalty": 1.0,
329
+ "return_dict": true,
330
+ "return_dict_in_generate": false,
331
+ "sep_token_id": null,
332
+ "spatial_merge_size": 2,
333
+ "spatial_patch_size": 14,
334
+ "suppress_tokens": null,
335
+ "task_specific_params": null,
336
+ "temperature": 1.0,
337
+ "temporal_patch_size": 2,
338
+ "tf_legacy_loss": false,
339
+ "tie_encoder_decoder": false,
340
+ "tie_word_embeddings": true,
341
+ "tokenizer_class": null,
342
+ "tokens_per_second": 25,
343
+ "top_k": 50,
344
+ "top_p": 1.0,
345
+ "torch_dtype": null,
346
+ "torchscript": false,
347
+ "typical_p": 1.0,
348
+ "use_bfloat16": false,
349
+ "window_size": 112
350
+ },
351
+ "vision_end_token_id": 151653,
352
+ "vision_start_token_id": 151652,
353
+ "vision_token_id": 151654
354
+ },
355
+ "token2wav_config": {
356
+ "_attn_implementation_autoset": true,
357
+ "bigvgan_config": {
358
+ "_attn_implementation_autoset": false,
359
+ "_name_or_path": "",
360
+ "add_cross_attention": false,
361
+ "architectures": null,
362
+ "bad_words_ids": null,
363
+ "begin_suppress_tokens": null,
364
+ "bos_token_id": null,
365
+ "chunk_size_feed_forward": 0,
366
+ "cross_attention_hidden_size": null,
367
+ "decoder_start_token_id": null,
368
+ "diversity_penalty": 0.0,
369
+ "do_sample": false,
370
+ "early_stopping": false,
371
+ "encoder_no_repeat_ngram_size": 0,
372
+ "eos_token_id": null,
373
+ "exponential_decay_length_penalty": null,
374
+ "finetuning_task": null,
375
+ "forced_bos_token_id": null,
376
+ "forced_eos_token_id": null,
377
+ "id2label": {
378
+ "0": "LABEL_0",
379
+ "1": "LABEL_1"
380
+ },
381
+ "is_decoder": false,
382
+ "is_encoder_decoder": false,
383
+ "label2id": {
384
+ "LABEL_0": 0,
385
+ "LABEL_1": 1
386
+ },
387
+ "length_penalty": 1.0,
388
+ "max_length": 20,
389
+ "mel_dim": 80,
390
+ "min_length": 0,
391
+ "model_type": "qwen2_5_omni_bigvgan",
392
+ "no_repeat_ngram_size": 0,
393
+ "num_beam_groups": 1,
394
+ "num_beams": 1,
395
+ "num_return_sequences": 1,
396
+ "output_attentions": false,
397
+ "output_hidden_states": false,
398
+ "output_scores": false,
399
+ "pad_token_id": null,
400
+ "prefix": null,
401
+ "problem_type": null,
402
+ "pruned_heads": {},
403
+ "remove_invalid_values": false,
404
+ "repetition_penalty": 1.0,
405
+ "resblock_dilation_sizes": [
406
+ [
407
+ 1,
408
+ 3,
409
+ 5
410
+ ],
411
+ [
412
+ 1,
413
+ 3,
414
+ 5
415
+ ],
416
+ [
417
+ 1,
418
+ 3,
419
+ 5
420
+ ]
421
+ ],
422
+ "resblock_kernel_sizes": [
423
+ 3,
424
+ 7,
425
+ 11
426
+ ],
427
+ "return_dict": true,
428
+ "return_dict_in_generate": false,
429
+ "sep_token_id": null,
430
+ "suppress_tokens": null,
431
+ "task_specific_params": null,
432
+ "temperature": 1.0,
433
+ "tf_legacy_loss": false,
434
+ "tie_encoder_decoder": false,
435
+ "tie_word_embeddings": true,
436
+ "tokenizer_class": null,
437
+ "top_k": 50,
438
+ "top_p": 1.0,
439
+ "torch_dtype": null,
440
+ "torchscript": false,
441
+ "typical_p": 1.0,
442
+ "upsample_initial_channel": 1536,
443
+ "upsample_kernel_sizes": [
444
+ 11,
445
+ 7,
446
+ 4,
447
+ 4,
448
+ 4,
449
+ 4
450
+ ],
451
+ "upsample_rates": [
452
+ 5,
453
+ 3,
454
+ 2,
455
+ 2,
456
+ 2,
457
+ 2
458
+ ],
459
+ "use_bfloat16": false,
460
+ "use_bias_at_final": false
461
+ },
462
+ "dit_config": {
463
+ "_attn_implementation_autoset": false,
464
+ "_name_or_path": "",
465
+ "add_cross_attention": false,
466
+ "architectures": null,
467
+ "bad_words_ids": null,
468
+ "begin_suppress_tokens": null,
469
+ "block_size": 24,
470
+ "bos_token_id": null,
471
+ "chunk_size_feed_forward": 0,
472
+ "cross_attention_hidden_size": null,
473
+ "decoder_start_token_id": null,
474
+ "depth": 22,
475
+ "dim": 1024,
476
+ "diversity_penalty": 0.0,
477
+ "do_sample": false,
478
+ "dropout": 0.1,
479
+ "early_stopping": false,
480
+ "emb_dim": 512,
481
+ "enc_attention_channels": 64,
482
+ "enc_channels": [
483
+ 256,
484
+ 256,
485
+ 256,
486
+ 256,
487
+ 768
488
+ ],
489
+ "enc_dilations": [
490
+ 1,
491
+ 2,
492
+ 3,
493
+ 4,
494
+ 1
495
+ ],
496
+ "enc_dim": 128,
497
+ "enc_emb_dim": 192,
498
+ "enc_global_context": true,
499
+ "enc_kernel_sizes": [
500
+ 5,
501
+ 3,
502
+ 3,
503
+ 3,
504
+ 1
505
+ ],
506
+ "enc_lin_neurons": 192,
507
+ "enc_res2net_scale": 2,
508
+ "enc_se_channels": 64,
509
+ "encoder_no_repeat_ngram_size": 0,
510
+ "eos_token_id": null,
511
+ "exponential_decay_length_penalty": null,
512
+ "ff_mult": 2,
513
+ "finetuning_task": null,
514
+ "forced_bos_token_id": null,
515
+ "forced_eos_token_id": null,
516
+ "head_dim": 64,
517
+ "heads": 16,
518
+ "hidden_size": 1024,
519
+ "id2label": {
520
+ "0": "LABEL_0",
521
+ "1": "LABEL_1"
522
+ },
523
+ "is_decoder": false,
524
+ "is_encoder_decoder": false,
525
+ "label2id": {
526
+ "LABEL_0": 0,
527
+ "LABEL_1": 1
528
+ },
529
+ "length_penalty": 1.0,
530
+ "look_ahead_layers": [
531
+ 10
532
+ ],
533
+ "look_backward_layers": [
534
+ 0,
535
+ 20
536
+ ],
537
+ "max_length": 20,
538
+ "max_position_embeddings": 32768,
539
+ "mel_dim": 80,
540
+ "min_length": 0,
541
+ "model_type": "qwen2_5_omni_dit",
542
+ "no_repeat_ngram_size": 0,
543
+ "num_attention_heads": 16,
544
+ "num_beam_groups": 1,
545
+ "num_beams": 1,
546
+ "num_embeds": 8193,
547
+ "num_hidden_layers": 22,
548
+ "num_return_sequences": 1,
549
+ "output_attentions": false,
550
+ "output_hidden_states": false,
551
+ "output_scores": false,
552
+ "pad_token_id": null,
553
+ "prefix": null,
554
+ "problem_type": null,
555
+ "pruned_heads": {},
556
+ "remove_invalid_values": false,
557
+ "repeats": 2,
558
+ "repetition_penalty": 1.0,
559
+ "return_dict": true,
560
+ "return_dict_in_generate": false,
561
+ "rope_theta": 10000.0,
562
+ "sep_token_id": null,
563
+ "suppress_tokens": null,
564
+ "task_specific_params": null,
565
+ "temperature": 1.0,
566
+ "tf_legacy_loss": false,
567
+ "tie_encoder_decoder": false,
568
+ "tie_word_embeddings": true,
569
+ "tokenizer_class": null,
570
+ "top_k": 50,
571
+ "top_p": 1.0,
572
+ "torch_dtype": "float32",
573
+ "torchscript": false,
574
+ "typical_p": 1.0,
575
+ "use_bfloat16": false
576
+ },
577
+ "model_type": "qwen2_5_omni_token2wav",
578
+ "pad_token_id": 151643,
579
+ "torch_dtype": "bfloat16"
580
+ },
581
+ "torch_dtype": "bfloat16",
582
+ "transformers_version": "4.52.0.dev0"
583
+ }
generation_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "_from_model_config": true,
3
+ "transformers_version": "4.52.0.dev0"
4
+ }
merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
model-00001-of-00003.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b9987abf2735756e9a2ad413577b6ad2cf0d8ee43b86e9e8c0aef0922a679ef7
3
+ size 4994850880
model-00002-of-00003.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a6b3e9f780ba7506c5894fa1bdef3b826242b5106f96bf40bc8b2b3df7fada48
3
+ size 4999787448
model-00003-of-00003.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8f2138170a87ec604b53232491a96d6dcf19e0724aca37e69aace143e508b170
3
+ size 1978024880
model.safetensors.index.json ADDED
The diff for this file is too large to render. See raw diff
 
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
+ }
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
+ "audio_bos_token": "<|audio_bos|>",
18
+ "audio_eos_token": "<|audio_eos|>",
19
+ "audio_token": "<|AUDIO|>",
20
+ "eos_token": {
21
+ "content": "<|im_end|>",
22
+ "lstrip": false,
23
+ "normalized": false,
24
+ "rstrip": false,
25
+ "single_word": false
26
+ },
27
+ "image_token": "<|IMAGE|>",
28
+ "pad_token": {
29
+ "content": "<|endoftext|>",
30
+ "lstrip": false,
31
+ "normalized": false,
32
+ "rstrip": false,
33
+ "single_word": false
34
+ },
35
+ "video_token": "<|VIDEO|>",
36
+ "vision_bos_token": "<|vision_bos|>",
37
+ "vision_eos_token": "<|vision_eos|>"
38
+ }
spk_dict.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6a05609b28f5d42b7b748f0f07592545c8f1f6885b9ae8fff64baf56e86b2a18
3
+ size 259544
tiktok_qa_sample.png ADDED

Git LFS Details

  • SHA256: fca026f60429b76fb286e91fb8a33bc40ebf4e5c9257e3559e44801bad79c7d1
  • Pointer size: 131 Bytes
  • Size of remote file: 857 kB
tokenizer.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8441917e39ae0244e06d704b95b3124795cec478e297f9afac39ba670d7e9d99
3
+ size 11421870
tokenizer_config.json ADDED
@@ -0,0 +1,222 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
+ "audio_bos_token": "<|audio_bos|>",
197
+ "audio_eos_token": "<|audio_eos|>",
198
+ "audio_token": "<|AUDIO|>",
199
+ "bos_token": null,
200
+ "clean_up_tokenization_spaces": false,
201
+ "eos_token": "<|im_end|>",
202
+ "errors": "replace",
203
+ "extra_special_tokens": {
204
+ "audio_bos_token": "<|audio_bos|>",
205
+ "audio_eos_token": "<|audio_eos|>",
206
+ "audio_token": "<|AUDIO|>",
207
+ "image_token": "<|IMAGE|>",
208
+ "video_token": "<|VIDEO|>",
209
+ "vision_bos_token": "<|vision_bos|>",
210
+ "vision_eos_token": "<|vision_eos|>"
211
+ },
212
+ "image_token": "<|IMAGE|>",
213
+ "model_max_length": 32768,
214
+ "pad_token": "<|endoftext|>",
215
+ "processor_class": "Qwen2_5OmniProcessor",
216
+ "split_special_tokens": false,
217
+ "tokenizer_class": "Qwen2Tokenizer",
218
+ "unk_token": null,
219
+ "video_token": "<|VIDEO|>",
220
+ "vision_bos_token": "<|vision_bos|>",
221
+ "vision_eos_token": "<|vision_eos|>"
222
+ }
vocab.json ADDED
The diff for this file is too large to render. See raw diff