许可证:其他
许可证名称:apache-2.0
许可证链接:https://huggingface.co/Qwen/Qwen2.5-Omni-7B-GPTQ-Int4/blob/main/LICENSE
语言:
- 英语
标签:
- 多模态
库名称:transformers
管道标签:任意到任意
Qwen2.5-Omni-7B-GPTQ-Int4
概述
简介
Qwen2.5-Omni 是一个端到端的多模态模型,旨在感知包括文本、图像、音频和视频在内的多种模态,同时以流式方式生成文本和自然语音响应。
主要特点
-
全模态与新颖架构:我们提出了 Thinker-Talker 架构,这是一个端到端的多模态模型,旨在感知包括文本、图像、音频和视频在内的多种模态,同时以流式方式生成文本和自然语音响应。我们提出了一种名为 TMRoPE(时间对齐多模态 RoPE)的新型位置嵌入,以同步视频输入与音频的时间戳。
-
实时语音和视频聊天:专为完全实时交互设计的架构,支持分块输入和即时输出。
-
自然且稳健的语音生成:超越了许多现有的流式和非流式替代方案,在语音生成中表现出卓越的稳健性和自然性。
-
跨模态的强劲性能:在与类似规模的单模态模型相比时,Qwen2.5-Omni 在所有模态上表现出卓越的性能。Qwen2.5-Omni 在音频能力上超越了类似规模的 Qwen2-Audio,并与 Qwen2.5-VL-7B 的性能相当。
-
出色的端到端语音指令跟随:Qwen2.5-Omni 在端到端语音指令跟随方面表现出色,其效果与文本输入相当,这一点在 MMLU 和 GSM8K 等基准测试中得到了证明。
模型架构
快速开始
本模型卡介绍了一系列旨在提高 Qwen2.5-Omni-7B 在 GPU 内存受限设备上的可操作性的增强功能。主要优化包括:
-
使用 GPTQ 实现了 Thinker 权重的 4 位量化,有效减少了 GPU VRAM 的使用。
-
增强了推理流程,按需加载每个模块的模型权重,并在推理完成后将其卸载到 CPU 内存,防止峰值 VRAM 使用过高。
-
将 token2wav 模块转换为支持流式推理,从而避免预分配过多的 GPU 内存。
-
将 ODE 求解器从二阶(RK4)调整为一阶(Euler)方法,进一步降低计算开销。
这些改进旨在确保 Qwen2.5-Omni 在各种硬件配置(尤其是 GPU 内存较低的设备,如 RTX3080、4080、5070 等)上高效运行。
下面,我们提供一个简单的示例,展示如何使用 Qwen2.5-Omni-7B-GPTQ-Int4 与 gptqmodel
:
pip uninstall transformers
pip install git+https://github.com/huggingface/transformers@v4.51.3-Qwen2.5-Omni-preview
pip install accelerate
pip install gptqmodel==2.0.0
pip install numpy==2.0.0
git clone https://github.com/QwenLM/Qwen2.5-Omni.git
cd Qwen2.5-Omni/low-VRAM-mode/
CUDA_VISIBLE_DEVICES=0 python3 low_VRAM_demo_gptq.py
我们提供了一个工具包,帮助您更方便地处理各种类型的音频和视觉输入,就像使用 API 一样。这包括 base64、URL 以及交错的音频、图像和视频。您可以使用以下命令安装它,并确保您的系统已安装 ffmpeg
:
pip install qwen-omni-utils[decord] -U
如果您不使用 Linux,可能无法从 PyPI 安装 decord
。在这种情况下,您可以使用 pip install qwen-omni-utils -U
,这将回退到使用 torchvision 进行视频处理。不过,您仍然可以从源代码安装 decord 以在加载视频时使用 decord。
性能与 GPU 内存需求
以下两个表格展示了 Qwen2.5-Omni-7B-GPTQ-Int4 和 Qwen2.5-Omni-7B 在特定评估基准上的性能对比和 GPU 内存消耗。数据表明,GPTQ-Int4 模型在保持可比性能的同时,将 GPU 内存需求降低了 50% 以上,使更多设备能够运行和体验高性能的 Qwen2.5-Omni-7B 模型。值得注意的是,由于量化技术和 CPU 卸载机制,GPTQ-Int4 变体的推理速度略慢于原生 Qwen2.5-Omni-7B 模型。
评估集 |
任务 |
指标 |
Qwen2.5-Omni-7B |
Qwen2.5-Omni-7B-GPTQ-Int4 |
LibriSpeech test-other |
语音识别(ASR) |
WER ⬇️ |
3.4 |
3.71 |
WenetSpeech test-net |
语音识别(ASR) |
WER ⬇️ |
5.9 |
6.62 |
Seed-TTS test-hard |
语音合成(TTS,说话者:Chelsie) |
WER ⬇️ |
8.7 |
10.3 |
MMLU-Pro |
文本 -> 文本 |
准确率 ⬆️ |
47.0 |
43.76 |
OmniBench |
语音 -> 文本 |
准确率 ⬆️ |
56.13 |
53.59 |
VideoMME |
多模态 -> 文本 |
准确率 ⬆️ |
72.4 |
68.0 |
模型 |
精度 |
15秒视频 |
30秒视频 |
60秒视频 |
Qwen-Omni-7B |
FP32 |
93.56 GB |
不推荐 |
不推荐 |
Qwen-Omni-7B |
BF16 |
31.11 GB |
41.85 GB |
60.19 GB |
Qwen-Omni-7B |
GPTQ-Int4 |
11.64 GB |
17.43 GB |
29.51 GB |
引用
如果您发现我们的论文和代码对您的研究有用,请考虑给予星标 :star: 和引用 :pencil: :)
@article{Qwen2.5-Omni,
title={Qwen2.5-Omni 技术报告},
author={徐进, 郭志芳, 何金正, 胡航瑞, 何婷, 柏帅, 陈科钦, 王嘉琳, 范阳, 党凯, 张斌, 王雄, 褚云飞, 林俊阳},
journal={arXiv 预印本 arXiv:2503.20215},
year={2025}
}