Allora non puoi perdere Anakin AI!
Anakin AI è una piattaforma all-in-one per tutta la tua automazione del flusso di lavoro, crea potenti app AI con un costruttore di app No Code facile da usare, con Deepseek, o3-mini-high di OpenAI, Claude 3.7 Sonnet, FLUX, Minimax Video, Hunyuan...
Costruisci la tua app AI dei sogni in pochi minuti, non settimane con Anakin AI!

Introduzione
Qwen2.5-Omni-7B rappresenta l'ultima innovazione nella tecnologia AI multimodale del team Qwen di Alibaba Cloud. Rilasciato come parte della serie Qwen2.5, questo modello da 7B parametri segna un significativo avanzamento nelle capacità multimodali end-to-end, in grado di percepire e processare diverse modalità di input, inclusi testo, immagini, audio e video, generando contemporaneamente risposte in testo e in linguaggio naturale in modo continuato.
Ciò che distingue Qwen2.5-Omni-7B è la sua eccezionale versatilità e prestazioni su tutte le modalità, rendendolo un modello "omni" per varie applicazioni AI. La capacità del modello di gestire contemporaneamente parlato, visione e testo lo colloca tra i modelli multimodali open-source più avanzati attualmente disponibili.
Caratteristiche e Capacità Chiave

Innovativa Architettura Thinker-Talker
Al centro di Qwen2.5-Omni-7B si trova la sua innovativa architettura Thinker-Talker, specificamente progettata per una percezione multimodale completa. Questa architettura consente al modello di:
- Processare più modalità di input simultaneamente
- Generare sia output testuali che audio
- Fornire risposte in streaming in tempo reale
L'architettura include un nuovo sistema di posizionamento chiamato TMRoPE (Time-aligned Multimodal RoPE), che sincronizza i timestamp degli input video con l'audio, consentendo una comprensione multimodale più coerente.
Chat Voce e Video in Tempo Reale
Il modello è progettato per interazioni completamente in tempo reale, supportando l'elaborazione di input a chunk e la generazione immediata di output. Questa capacità è cruciale per applicazioni che richiedono un flusso conversazionale naturale, come assistenti virtuali e sistemi interattivi.
Generazione di Parlato Naturale e Robusta
Qwen2.5-Omni-7B dimostra superiori capacità di generazione del parlato rispetto a molte alternative esistenti in streaming e non streaming. L'output vocale del modello è caratterizzato da una robustezza e una naturalezza eccezionali, rendendolo adatto per applicazioni in cui l'output vocale di alta qualità è essenziale.
Eccellente Prestazione Intermodale
Quando confrontato con modelli a singola modalità di dimensioni simili, Qwen2.5-Omni-7B mostra prestazioni eccezionali su tutte le modalità. Supera il Qwen2-Audio di dimensioni simili nelle capacità audio e raggiunge prestazioni comparabili con Qwen2.5-VL-7B nei compiti visione-linguaggio, dimostrando la sua versatilità come vero sistema multimodale.
Eccellente Capacità di Seguire Istruzioni Vocali
Uno degli aspetti più impressionanti di Qwen2.5-Omni-7B è la sua capacità di seguire istruzioni attraverso input vocali, con prestazioni paragonabili alle sue capacità di input testuale. Questo è attestato dalle sue forti prestazioni su benchmark come MMLU e GSM8K quando fornito con input vocale, dimostrando che il modello mantiene alte capacità cognitive indipendentemente dalla modalità di input.
Prestazioni nei Benchmark
Qwen2.5-Omni-7B è stato sottoposto a valutazione completa attraverso molteplici benchmark, dimostrando costantemente buone prestazioni in vari domini:
Benchmark Multimodali
In OmniBench, che testa le prestazioni nel riconoscimento di parlato, eventi sonori e comprensione musicale:
- Qwen2.5-Omni-7B: 56.13% di prestazioni medie
- Gemini-1.5-Pro: 42.91%
- Baichuan-Omni-1.5: 42.90%
- MiniCPM-o: 40.50%
Questo colloca Qwen2.5-Omni-7B ai vertici della tecnologia per compiti di comprensione multimodale tra modelli di dimensioni comparabili.
Elaborazione Audio
Per il riconoscimento vocale su LibriSpeech:
- Qwen2.5-Omni-7B: 1.8 WER su test-clean, 3.4 WER su test-other
- Qwen2-Audio: 1.6 WER su test-clean, 3.6 WER su test-other
- Whisper-large-v3: 1.8 WER su test-clean, 3.6 WER su test-other
Per la comprensione audio su MMAU:
- Qwen2.5-Omni-7B: 65.60% (media)
- Gemini-Pro-V1.5: 54.90%
- Qwen2-Audio: 49.20%
Comprensione Immagini e Video
Nei benchmark di comprensione delle immagini:
- MMMU val: 59.2% (rispetto al 60.0% per GPT-4o-mini e al 58.6% per Qwen2.5-VL-7B)
- MMBench-V1.1-EN test: 81.8% (rispetto all'82.6% per Qwen2.5-VL-7B e al 76.0% per GPT-4o-mini)
Per la comprensione video:
- MVBench: 70.3% (rispetto al 69.6% per Qwen2.5-VL-7B)
- Video-MME senza sottotitoli: 64.3% (rispetto al 65.1% per Qwen2.5-VL-7B)
Benchmark Solo Testo
Nonostante sia un modello multimodale, Qwen2.5-Omni-7B mantiene buone prestazioni nei benchmark solo testo:
- MMLU-redux: 71.0% (rispetto al 75.4% per Qwen2.5-7B)
- GSM8K: 88.7% (rispetto al 91.6% per Qwen2.5-7B)
- HumanEval: 78.7% (rispetto all'84.8% per Qwen2.5-7B)
Seppur la performance solo testo sia leggermente inferiore rispetto al suo corrispondente specializzato (Qwen2.5-7B), supera significativamente molti modelli comparabili come Llama3.1-8B e Gemma2-9B in gran parte dei benchmark.
Esecuzione di Qwen2.5-Omni-7B Localmente
Configurare ed eseguire Qwen2.5-Omni-7B localmente richiede alcune preparazioni a causa dei suoi requisiti multimodali. Ecco una guida completa per iniziare:
Requisiti di Sistema
Per eseguire Qwen2.5-Omni-7B in modo efficace, avrai bisogno di:
- GPU compatibile con CUDA con sufficiente memoria:
- Per video di 15s: 31.11 GB (BF16)
- Per video di 30s: 41.85 GB (BF16)
- Per video di 60s: 60.19 GB (BF16)
- Nota: l'utilizzo effettivo della memoria è tipicamente 1.2x superiore a questi minimi teorici
- Requisiti software:
- Python 3.8+
- PyTorch 2.0+
- FFmpeg (per elaborazione audio/video)
Passaggi di Installazione
Installa i pacchetti necessari:
pip uninstall transformers
pip install git+https://github.com/huggingface/transformers@3a1ead0aabed473eafe527915eea8c197d424356
pip install accelerate
pip install qwen-omni-utils[decord]
Installa Flash Attention 2 (opzionale ma raccomandata per prestazioni migliori):
pip install -U flash-attn --no-build-isolation
Esempio di Uso Fondamentale
Ecco un esempio di base su come utilizzare Qwen2.5-Omni-7B con Transformers:
import soundfile as sf
from transformers import Qwen2_5OmniModel, Qwen2_5OmniProcessor
from qwen_omni_utils import process_mm_info
# Carica il modello
model = Qwen2_5OmniModel.from_pretrained(
"Qwen/Qwen2.5-Omni-7B",
torch_dtype="auto",
device_map="auto",
# Decommenta per un migliore rendimento con l'hardware compatibile
# attn_implementation="flash_attention_2",
)
# Carica il processore
processor = Qwen2_5OmniProcessor.from_pretrained("Qwen/Qwen2.5-Omni-7B")
# Prepara la conversazione
conversation = [
{
"role": "system",
"content": "Sei Qwen, un umano virtuale sviluppato dal team Qwen, Alibaba Group, capace di percepire input auditivi e visivi, nonché generare testo e parlato.",
},
{
"role": "user",
"content": [
{"type": "video", "video": "<https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen2.5-Omni/draw.mp4>"},
],
},
]
# Preparazione per l'inferenza
text = 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)
# Inferenza: Generazione del testo e audio di output
text_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)
# Salva l'audio di output
sf.write(
"output.wav",
audio.reshape(-1).detach().cpu().numpy(),
samplerate=24000,
)
Suggerimenti per l'Uso
Requisiti per l'Output Audio
Per abilitare l'output audio, il prompt di sistema deve essere impostato esattamente come mostrato:
{
"role": "system",
"content": "Sei Qwen, un umano virtuale sviluppato dal team Qwen, Alibaba Group, capace di percepire input auditivi e visivi, nonché generare testo e parlato."
}
Selezione del Tipo di Voce
Qwen2.5-Omni-7B supporta due tipi di voce:
- Chelsie (Femminile): Una voce dolce e vellutata con calore gentile e chiarezza luminosa
- Ethan (Maschile): Una voce brillante e vivace con energia e calore contagiosi
Puoi specificare la voce usando il parametro spk
:
text_ids, audio = model.generate(**inputs, spk="Ethan")
Opzioni di Elaborazione Video
La compatibilità degli URL video dipende dalla versione della libreria di terze parti:
torchvision >= 0.19.0
: Supporta sia HTTP che HTTPSdecord
: Supporta solo HTTP
Puoi cambiare il backend impostando variabili ambientali:
FORCE_QWENVL_VIDEO_READER=torchvision
# o
FORCE_QWENVL_VIDEO_READER=decord
Distribuzione Docker
Per una distribuzione semplificata, puoi utilizzare l'immagine Docker ufficiale:
docker run --gpus all --ipc=host --network=host --rm --name qwen2.5-omni -it qwenllm/qwen-omni:2.5-cu121 bash
Per avviare la demo web tramite Docker:
bash docker/docker_web_demo.sh --checkpoint /path/to/Qwen2.5-Omni-7B --flash-attn2
Distribuzione vLLM
Per un'inferenza più veloce, si raccomanda vLLM:
Installa vLLM con supporto per Qwen2.5-Omni:
pip install git+https://github.com/huggingface/transformers@1d04f0d44251be5e236484f8c8a00e1c7aa69022
pip install accelerate
pip install qwen-omni-utils
git clone -b qwen2_omni_public_v1 <https://github.com/fyabc/vllm.git> vllm
cd vllm
pip install .
Utilizzo basilare di vLLM (output solo testo attualmente supportato):
import os
import torch
from transformers import Qwen2_5OmniProcessor
from vllm import LLM, SamplingParams
from qwen_omni_utils import process_mm_info
os.environ['VLLM_USE_V1'] = '0' # vLLM engine v1 non supportato ancora
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
)
# Processare gli input e generare output come mostrato nell'esempio
Conclusione
Qwen2.5-Omni-7B rappresenta un significativo avanzamento nella tecnologia AI multimodale, offrendo prestazioni impressionanti nell'elaborazione di testo, immagini, audio e video in un unico modello. Con la sua dimensione di 7B parametri, fornisce un buon equilibrio tra capacità e requisiti di risorse, rendendolo accessibile per vari scenari di distribuzione.
La capacità del modello di non solo comprendere modalità multiple ma anche generare output sia testuali che vocali apre numerose possibilità per applicazioni in assistenti virtuali, creazione di contenuti, strumenti di accessibilità e molto altro. Le sue prestazioni competitive rispetto a modelli specializzati più grandi dimostrano l'efficacia della sua architettura e approccio di training.
Man mano che l'AI continua a evolversi verso capacità di interazione più simili a quelle umane, modelli come Qwen2.5-Omni-7B rappresentano un passo importante verso la creazione di sistemi di intelligenza artificiale più naturali e versatili che possono colmare senza soluzione di continuità più forme di comunicazione.