全球首个7B全模态模型!阿里Qwen2.5-Omni登顶榜首,实时语音+视频交互开源免费
在人工智能范畴,单一模态模型已取得显着成果,但人类智能是多模态的。我们通过视觉、听觉等感官感知世界,并通过语言等方式交换。因此,开发能处理多种模态输入并输出的模型,对实现更接近人类智能的系统至关紧张。Qwen2.5-Omni 正是在此配景下诞生,旨在冲破模态壁垒,实现更自然、高效的人机交互。本文将具体先容其技术原理、功能特点、应用场景及快速使用方法。一、项目概述
Qwen2.5-Omni是阿里巴巴于2025年3月27日发布并开源的端到端全模态大模型,能处理文本、图像、音频和视频等多种输入,并生成文本与自然语音输出。Qwen2.5-Omni 的目的是构建一个能够同时处理文本、图像、音频和视频等多种模态输入,并以流式方式生成文本和自然语音响应的端到端多模态大模型。该模型不仅要在多模态使命中表现出色,还要在单模态使命中保持竞争力,同时具备实时交互的本领,为各种应用场景提供强大的技术支持。
https://i-blog.csdnimg.cn/img_convert/2199d8e52e17388ef147c02d60ac6a12.png
二、技术原理
(一)模型架构
Qwen2.5-Omni 接纳了创新的 Thinker-Talker 双核架构。Thinker 模块类似于大脑,负责处理文本、音频、视频等多模态输入,生成高层语义表征及对应的文本内容。它基于 Transformer 解码器架构,融合音频和图像编码器进行特性提取。Talker 模块则类似于发声器官,以流式方式汲取 Thinker 实时输出的语义表征与文本,流畅合成离散语音单位。Talker 接纳双轨自回归 Transformer 解码器设计,在练习和推理过程中直接汲取来自 Thinker 的高维表征,并共享全部历史上下文信息,形成端到端的统一模型架构。
(二)技术创新
1. TMRoPE(Time-aligned Multimodal RoPE):这是一种新的位置编码技术,通过时间轴对齐实现视频与音频输入的精准同步。这对于处理音视频融合使命至关紧张,由于它能够确保不同模态的信息在时间上保持同等,从而进步模型的理解和生成本领。
2. 流式交互设计:Qwen2.5-Omni 支持完全实时交互,能够处理分块输入并即时输出。这种设计使得模型可以像人类一样进行连续的、无延迟的对话和响应,大大提拔了用户体验。
https://i-blog.csdnimg.cn/img_convert/36a029df6804e6ac05618ad419a46d88.png
三、功能特点
(一)万能创新架构
Qwen2.5-Omni 的 Thinker-Talker 架构使其能够同时处理文本、图像、音频和视频等多种模态输入,并生成相应的文本和语音响应。这种架构不仅支持跨模态理解,还能够以流式方式输出效果,使得模型在处理复杂的多模态使命时更加高效和自然。
(二)实时音视频交互
Qwen2.5-Omni 支持实时音视频交互,能够处理分块输入并即时输出。这意味着模型可以在汲取到输入数据的同时,立即生成响应,无需等候所有数据输入完成。这种实时性对于需要快速响应的应用场景(如视频会议、实时翻译等)具有紧张意义。
(三)自然流畅的语音生成
Qwen2.5-Omni 在语音生成的自然性和稳固性方面表现出色。它能够生成流畅、自然的语音,逾越了许多现有的流式和非流式语音生成模型。这种高质量的语音生成本领使得模型在语音交互应用中更具优势。
(四)全模态性能优势
Qwen2.5-Omni 在多模态使命 OmniBench 中到达了 SOTA(State-of-the-Art)表现。此外,在单模态使命中,如语音识别(Common Voice)、翻译(CoVoST2)、音频理解(MMAU)、图像推理(MMMU、MMStar)、视频理解(MVBench)以及语音生成(Seed-tts-eval 和主观自然听感)等多个范畴,Qwen2.5-Omni 也表现出色。这表明该模型不仅在多模态使命中表现出色,还在单模态使命中保持了竞争力。
(五)良好的端到端语音指令跟随本领
Qwen2.5-Omni 在端到端语音指令跟随方面表现出色。它能够准确理解和执行语音指令,与文本输入处理的效果相当。这种本领在 MMLU 通用知识理解和 GSM8K 数学推理等基准测试中得到了验证。
四、应用场景
(一)智能语音助手
Qwen2.5-Omni 的实时音视频交互本领和自然流畅的语音生成本领使其成为理想的智能语音助手。它可以处理用户的语音指令,实时生成语音回应,为用户提供更加自然和便捷的交互体验。
(二)多模态内容创作
在内容创作范畴,Qwen2.5-Omni 可以同时处理文本、图像和视频输入,并生成相应的文本或语音形貌。这使得创作者能够更加高效地生成多模态内容,如视频字幕、图像形貌等。
(三)教育与培训
Qwen2.5-Omni 可以用于教育和培训范畴,通过处理多种模态的输入,为学生提供更加丰富和个性化的学习体验。比方,它可以实时生成语音讲授,帮助学生更好地理解复杂的概念。
(四)智能客服
在智能客服范畴,Qwen2.5-Omni 可以实时处理客户的语音或文本标题,并生成准确的回应。这种本领可以进步客服效率,改善客户体验。
五、性能表现
(一)多模态使命
Qwen2.5-Omni 在多模态使命 OmniBench 中到达了 SOTA 表现。这表明该模型在处理多模态输入和输出方面具有显着优势。
(二)单模态使命
在单模态使命中,Qwen2.5-Omni 也表现出色。比方,在语音识别(Common Voice)、翻译(CoVoST2)、音频理解(MMAU)、图像推理(MMMU、MMStar)、视频理解(MVBench)以及语音生成(Seed-tts-eval 和主观自然听感)等多个范畴,Qwen2.5-Omni 都取得了优秀的效果。
(三)实时性
Qwen2.5-Omni 支持完全实时交互,能够处理分块输入并即时输出。这种实时性使得模型在需要快速响应的应用场景中具有显着优势。
https://i-blog.csdnimg.cn/img_convert/a4d8d0de0bad09749dfccf33ada01658.png
六、使用指南
(一)在线快速体验
访问下面在线地址,即可在线快速体验Qwen2.5-Omni-7B-Demo模型
体验地址:https://huggingface.co/spaces/Qwen/Qwen2.5-Omni-7B-Demo
https://i-blog.csdnimg.cn/img_convert/86e1072664b0d223577a89dade2f79f6.png
在线体验了 Qwen2.5-Omni 之后,我必须说,它的表现简直超出了我的预期,团体使用效果令人印象深刻。无论是处理复杂的多模态输入,还是生成流畅自然的语音和文本输出,Qwen2.5-Omni 都展现出了良好的性能。特殊是它的实时交互本领,让我感觉就像在和一个真正的人类进行对话一样,毫无延迟和卡顿,这种流畅的交互体验让人感觉非常棒。
(二)本地部署推理(transformers)
在开始使用 Qwen2.5-Omni 之前,需要确保你的环境满足以下要求:
[*] Python 版本:保举使用 Python 3.9 或更高版本。
[*] PyTorch:安装 PyTorch 2.0 或更高版本,确保支持 CUDA 运算。
[*] Transformers:安装 Hugging Face 的 Transformers 库,版本建议为 4.36.0 或更高。
[*] 其他依赖:安装 accelerate 和 qwen-omni-utils 库,用于加快练习和处理多模态数据。
可以通过以下命令安装必要的依赖:
pip install transformers# 由于Qwen2.5-Omni的代码在Hugging Face transformers中目前处于未合并阶段,尚未并入主分支,官方建议从源代码构建:# pip uninstall transformers# pip install git+https://github.com/huggingface/transformers@3a1ead0aabed473eafe527915eea8c197d424356pip install accelerate# 安装qwen-omni相关依赖工具包pip install qwen-omni-utils 以下是一个使用Qwen2.5-Omni 模型的代码示例:
import soundfile as sf
from transformers import Qwen2_5OmniModel, Qwen2_5OmniProcessorfrom qwen_omni_utils import process_mm_info
# default: Load the model on the available device(s)model = Qwen2_5OmniModel.from_pretrained("Qwen/Qwen2.5-Omni-7B", torch_dtype="auto", device_map="auto")
# 我们建议启用 flash_attention_2 以获取更快的推理速度以及更低的显存占用.# model = Qwen2_5OmniModel.from_pretrained(# "Qwen/Qwen2.5-Omni-7B",# torch_dtype="auto",# device_map="auto",# attn_implementation="flash_attention_2",# )
processor = Qwen2_5OmniProcessor.from_pretrained("Qwen/Qwen2.5-Omni-7B")
conversation = [ { "role": "system", "content": "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.", }, { "role": "user", "content": [ {"type": "video", "video": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/draw.mp4"}, ], },]
# Preparation for inferencetext = processor.apply_chat_template(conversation, add_generation_prompt=True, tokenize=False)audios, images, videos = process_mm_info(conversation, use_audio_in_video=True)inputs = processor(text=text, audios=audios, images=images, videos=videos, return_tensors="pt", padding=True)inputs = inputs.to(model.device).to(model.dtype)
# Inference: Generation of the output text and audiotext_ids, audio = model.generate(**inputs, use_audio_in_video=True)
text = processor.batch_decode(text_ids, skip_special_tokens=True, clean_up_tokenization_spaces=False)print(text)sf.write( "output.wav", audio.reshape(-1).detach().cpu().numpy(), samplerate=24000,) 官方保举的最小GPU资源:
https://i-blog.csdnimg.cn/img_convert/11e684e6b866ba8b6916a40b8bfb0de2.png
(三)本地部署推理(vLLM)
安装qwen-omni-utils和vllm相干依赖
pip install git+https://github.com/huggingface/transformers@1d04f0d44251be5e236484f8c8a00e1c7aa69022pip install acceleratepip install qwen-omni-utilsgit clone -b qwen2_omni_public_v1 https://github.com/fyabc/vllm.gitcd vllmpip install . 以下是一个使用vLLM 的代码示例:
import osimport torch
from transformers import Qwen2_5OmniProcessorfrom vllm import LLM, SamplingParamsfrom qwen_omni_utils import process_mm_info
# vLLM engine v1 not supported yetos.environ['VLLM_USE_V1'] = '0'
MODEL_PATH = "Qwen/Qwen2.5-Omni-7B"
llm = LLM( model=MODEL_PATH, trust_remote_code=True, gpu_memory_utilization=0.9, tensor_parallel_size=torch.cuda.device_count(), limit_mm_per_prompt={'image': 1, 'video': 1, 'audio': 1}, seed=1234,)
sampling_params = SamplingParams( temperature=1e-6, max_tokens=512,)
processor = Qwen2_5OmniProcessor.from_pretrained(MODEL_PATH)
messages = [ { "role": "system", "content": "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.", }, { "role": "user", "content": [ {"type": "video", "video": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/draw.mp4"}, ], },]
text = processor.apply_chat_template( messages, tokenize=False, add_generation_prompt=True,)
audios, images, videos = process_mm_info(messages, use_audio_in_video=True)
inputs = { 'prompt': text, 'multi_modal_data': {}, "mm_processor_kwargs": { "use_audio_in_video": True, },}
if images is not None: inputs['multi_modal_data']['image'] = imagesif videos is not None: inputs['multi_modal_data']['video'] = videosif audios is not None: inputs['multi_modal_data']['audio'] = audios
outputs = llm.generate(inputs, sampling_params=sampling_params)print(outputs.outputs.text) (四)本地网页对话
1、克隆代码安装依赖
在开始之前,请确保已安装所需的依赖项,可以通过运行以下命令来安装:
git clone https://github.com/QwenLM/Qwen2.5-Omni.gitpip install -r requirements_web_demo.txt 2、启动Web服务
安装所需的依赖项,我们就可以使用以下命令启动网页演示
python web_demo.py 在运行这个命令之后, 您将会在终端中看到类似的输出:
Running on local: http://127.0.0.1:7860/
输入到浏览器中,即可访问网页演示,在网页中您可以输入文本、上传音频、图像和视频,以及切换输出音色范例等功能。
注意:基于FlashAttention-2 启动演示为了得到更好的性能和效率,尤其是处理大量图像和视频的场景下,官方建议使用 FlashAttention-2。FlashAttention-2 提供了显存使用和速度的显着改进,因此对于处理大型模型和数据处理的场景,它非常符合;命令启动如下:
python web_demo.py --flash-attn2 七、结语
Qwen2.5-Omni 是阿里巴巴开源的万能多模态大模型,接纳创新的 Thinker-Talker 架构,具备强大的多模态处理本领,在多模态和单模态使命中均表现出色。其实时交互和自然语音生成本领使其在智能语音助手、内容创作、教育和智能客服等范畴应用前景广阔。随着技术发展和场景拓展,Qwen2.5-Omni 将为人工智能带来更多创新突破。
https://i-blog.csdnimg.cn/direct/b0d75c7f791d48ce957e873ab49406bf.jpeg
怎样学习AI大模型?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和发展。
我意识到有很多经验和知识值得分享给各人,也可以通过我们的本领和经验解答各人在人工智能学习中的很多狐疑,以是在工作繁忙的环境下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋侪无法得到准确的资料得到学习提拔,故此将并将紧张的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
https://i-blog.csdnimg.cn/direct/8329decc464e4872b4b4c9182c73cbbb.png
第一阶段: 从大模型系统设计入手,讲授大模型的重要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商范畴虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物盛行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大康健、新零售、新媒体范畴构建适合当前范畴大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
https://i-blog.csdnimg.cn/direct/36d0e600a1b745e38ec2399fb7dc551e.jpeg
页:
[1]