Principiante 11 minAudio

Faster-Whisper: trascrivere velocemente, anche senza GPU

Risposta diretta

Faster-Whisper (SYSTRAN/faster-whisper, licenza MIT) è una reimplementazione di Whisper sul motore CTranslate2. Il progetto dichiara una velocità fino a 4 volte superiore a quella di openai/whisper, a parità di precisione e con un minore consumo di memoria. Nel proprio benchmark su CPU (Intel i7-12700K, modello small), trascrive 13 minuti di audio in 1 minuto e 42 secondi in int8 contro 6 minuti e 58 secondi per openai/whisper — quasi 4 volte più veloce su processore, senza scheda grafica.

Faster-Whisper è una reimplementazione di Whisper che trascrive nettamente più velocemente e consuma sensibilmente meno memoria, a parità di qualità del testo. Non è un nuovo modello: sono gli stessi pesi, eseguiti da CTranslate2, un motore di inferenza diverso pubblicato da SYSTRAN con licenza MIT. È l'implementazione da scegliere come opzione predefinita per trascrivere in locale, e il suo benchmark quantifica con precisione cosa significhi in pratica «rende finalmente ragionevole la trascrizione su processore».

Di Mohamed Meguedmi·Agg. 2026-09-28·Testato su Windows, macOS e Linux

#Cosa è e cosa non è

Whisper indica sia una famiglia di modelli sia l'implementazione di riferimento di OpenAI che li esegue. Faster-Whisper mantiene i modelli e sostituisce l'implementazione con CTranslate2, un motore di inferenza ottimizzato per i modelli di tipo transformer, sviluppato originariamente per la traduzione automatica presso OpenNMT. Il testo prodotto è lo stesso a parità di qualità; ciò che cambia sono il tempo e la memoria necessari per ottenerlo, non il contenuto del risultato finale.

Conseguenza pratica: tutto ciò che sai già sulla scelta delle dimensioni del modello Whisper rimane perfettamente valido, e la maggior parte degli strumenti di trascrizione locale che incontri ogni giorno lo utilizza già internamente, spesso senza necessariamente dichiararlo né documentarlo. Un altro dettaglio utile: a differenza di openai-whisper, FFmpeg non deve essere installato separatamente sul sistema: l'audio viene decodificato dalla libreria PyAV, che include le proprie librerie FFmpeg.

#Da dove viene il guadagno

Il kit IA Locale

Il tuo ChatGPT privato e gratuito sulla tua macchina in 1 ora — LM Studio, Ollama, Open WebUI, i tuoi documenti, senza cloud.

  • Spazio online a vita
  • PDF + file
  • Aggiornamenti a vita
Un motore di inferenza specializzato
CTranslate2, progettato per eseguire i transformer in modo efficiente, anziché usare direttamente un framework generalista come PyTorch.
La quantizzazione
Eseguire il modello a 8 bit riduce l'occupazione di memoria e velocizza l'esecuzione, con una perdita di qualità della trascrizione generalmente impercettibile.
Elaborazione in batch
I file lunghi possono essere suddivisi ed elaborati in parallelo (batch_size) anziché rigorosamente uno dopo l'altro, al prezzo di un maggiore consumo di memoria.
Rilevamento dell'attività vocale
Saltare i silenzi evita di far lavorare il modello a vuoto — nelle registrazioni delle riunioni, non è affatto trascurabile.

#Il miglioramento, quantificato dallo sviluppatore

SYSTRAN pubblica il proprio banco di prova anziché lasciare che il lettore debba indovinare: la trascrizione di 13 minuti di audio viene confrontata tra diverse implementazioni sullo stesso hardware, riportando i tempi e la memoria utilizzata per ciascuna. Due serie di misurazioni sono particolarmente rilevanti per un utilizzo senza scheda grafica dedicata, che riguarda la maggior parte delle postazioni di lavoro in azienda.

Modello small su CPU (Intel Core i7-12700K, 8 thread) — fonte: benchmark ufficiale del repository
ImplementazionePrecisioneTempoMemoria RAM
openai/whisperfp326 min 58 s2 335 MB
faster-whisperfp322 min 37 s2 257 MB
faster-whisperint81 min 42 s1 477 MB
faster-whisper (batch di 8)int851 s3 608 MB

Su CPU, la versione int8 di Faster-Whisper trascrive quindi 4,1 volte più velocemente di openai/whisper, utilizzando meno memoria (1 477 MB contro 2 335 MB) — un risultato coerente con l'annuncio generale del progetto, «fino a 4 volte più veloce … utilizzando meno memoria». Su GPU, lo stesso benchmark con il modello large-v2 (RTX 3070 Ti) dà 1 minuto e 03 secondi in fp16 e 59 secondi in int8, contro 2 minuti e 23 secondi per openai/whisper — la quantizzazione offre qui un miglioramento più modesto rispetto alla CPU, ma la memoria video utilizzata scende da 4 708 MB a 2 926 MB.

Il repository pubblica anche un confronto con la variante distil-whisper-large-v3, un modello alleggerito tramite distillazione anziché quantizzazione. Su GPU, con la libreria transformers in fp16 e un'elaborazione in batch da 16, questo modello impiega 46 minuti e 12 secondi per trascrivere il corpus di test con un tasso di errore sulle parole di 14,801; la stessa configurazione con Faster-Whisper impiega 25 minuti e 50 secondi con un tasso di errore sulle parole di 13,527 — più veloce E più preciso in questo specifico test, il che mostra che il vantaggio di CTranslate2 non si limita alla quantizzazione: conta anche il motore di esecuzione, indipendentemente dal modello esatto che si esegue.

Il banco di prova confronta anche Faster-Whisper con whisper.cpp, un'altra reimplementazione molto utilizzata, in particolare su Mac e su hardware embedded. Con il modello large-v2 in fp16, whisper.cpp con Flash Attention impiega 1 minuto e 05 secondi utilizzando 4.127 MB di memoria video, quasi alla pari con Faster-Whisper (1 minuto e 03 secondi, 4.525 MB) — un utile promemoria del fatto che Faster-Whisper non è l'unica opzione veloce, ma semplicemente quella che questa guida documenta più in dettaglio, perché il suo ecosistema Python si integra più facilmente in una pipeline RAG o nella generazione automatizzata di un resoconto.

→
Il trattamento in batch cambia l'equazione
Con batch_size=8, il modello small in int8 passa da 1 minuto e 42 secondi a 51 secondi sullo stesso processore, al prezzo di un consumo di memoria che sale a 3.608 MB. Su una macchina con RAM disponibile, questa è spesso l'impostazione più conveniente, ancora prima di pensare a una GPU.

#Installarlo e trascrivere un primo file

Per l'installazione basta una riga, senza dipendenze di sistema da gestire per la decodifica audio grazie a PyAV, integrata direttamente nel pacchetto Python. Il codice minimo include tre parametri che fanno tutta la differenza rispetto a un uso ingenuo del modello: la scelta esplicita del device (cpu o cuda), il tipo di calcolo (compute_type, dove int8 è il punto di partenza ragionevole su CPU) e l'attivazione del filtro di rilevamento dell'attività vocale.

Installare Faster-Whisper
pip install faster-whisper
Trascrivere un file in francese usando la CPU
from faster_whisper import WhisperModel

model = WhisperModel("small", device="cpu", compute_type="int8")
segments, info = model.transcribe("reunion.wav", language="fr", vad_filter=True)

for segment in segments:
    print(f"[{segment.start:.1f}s -> {segment.end:.1f}s] {segment.text}")

Tre righe di codice bastano per applicare le due impostazioni che spiegano la maggior parte della differenza misurata nel benchmark ufficiale: compute_type="int8" per la quantizzazione e vad_filter=True per il rilevamento dell'attività vocale. Il parametro language="fr" disattiva invece il rilevamento automatico della lingua, che commette errori più spesso nei primissimi secondi di una registrazione.

#Quale modello, quale precisione

Scegliere la dimensione in base all'uso
DimensioneMemoria indicativa in 8 bitPer cosa
Piccolo (small)Circa 1,5 GB in int8 su CPU, misurato sul banco di prova ufficialePrendere appunti rapidamente, audio pulito, una sola lingua
MedioCirca 1–2 GBIl compromesso abituale per registrazioni lunghe
Grande (large-v2)Circa 2,9 GB in int8 su GPU, misurato sul banco di prova ufficialeFrancese curato, lessico specializzato, audio difficile

Per il francese, la differenza tra un modello intermedio e un grande modello si nota soprattutto sui nomi propri, sulle sigle e nei passaggi in cui più persone parlano contemporaneamente. Se la trascrizione viene poi fornita a un modello linguistico che redige un resoconto strutturato, un errore isolato su una parola rara conta meno di quanto si creda intuitivamente; se invece deve essere letta così com'è da una persona, l'uso del grande modello è giustificato, al costo del tempo e della memoria indicati sopra in questa guida.

#I parametri che contano davvero

  1. 01
    Forzare la lingua
    Il rilevamento automatico sbaglia nei primi secondi, soprattutto se la registrazione inizia con un silenzio o un breve saluto. Indicare la lingua elimina un'intera categoria di errori.
  2. 02
    Attivare la rilevazione dell'attività vocale
    Evita di trascrivere i silenzi e riduce le allucinazioni a fine file, in cui il modello inventa testo in assenza di audio.
  3. 03
    Scegliere la quantizzazione int8
    È questo il parametro che spiega la maggior parte della differenza misurata sul banco di prova ufficiale: sulla CPU, riduce il tempo da 2 min 37 a 1 min 42 sul modello small, con meno memoria.
  4. 04
    Attivare l'elaborazione in batch se la memoria lo permette
    batch_size=8 dimezza ulteriormente il tempo nel benchmark ufficiale, al prezzo di un maggiore consumo di memoria: da riservare alle macchine che hanno memoria disponibile a sufficienza.
i
Le allucinazioni nei passaggi di silenzio
Whisper ha un comportamento noto: nei passaggi senza parlato, gli capita di produrre una frase ricorrente — una formula di cortesia, una sigla. Il rilevamento dell'attività vocale è il rimedio principale; un rapido controllo dei passaggi ripetuti lo completa.

#Tre utilizzi concreti su un computer comune

I risultati del benchmark ufficiale acquistano pieno significato se rapportati a casi reali, su una postazione di lavoro senza scheda grafica dedicata — la situazione più comune in azienda.

Resoconto della riunione
Trascrivere in int8 una riunione di un'ora su un processore desktop richiede, estrapolando i risultati misurati su 13 minuti, all'incirca sette-otto minuti: un tempo ampiamente compatibile con una trascrizione avviata durante la pausa caffè subito dopo la riunione.
Archiviazione di podcast o webinar
Un'elaborazione in batch avviata di notte su un insieme di file lunghi beneficia direttamente del guadagno misurato con batch_size=8, senza che sia necessario monitorare l'esecuzione fino al mattino.
Sottotitolazione a posteriori di un video
Faster-Whisper produce il testo grezzo del video; un allineamento parola per parola con WhisperX aggiunge poi i timestamp precisi necessari per un file di sottotitoli realmente utilizzabile nel montaggio.

In tutti e tre i casi, il punto comune è l'assenza di una scheda grafica nell'equazione: le misurazioni su CPU del benchmark ufficiale mostrano che un processore desktop recente è ampiamente sufficiente per un uso corrente, spostando così la vera questione sulla dimensione del modello e sulla quantizzazione, anziché sull'acquisto di hardware aggiuntivo per una semplice esigenza di trascrizione.

#Faster-Whisper o altro

Lo strumento in base alle esigenze
EsigenzaScelta
Testo, velocemente, localmente, anche senza GPUFaster-Whisper
Timestamp parola per parola per la sottotitolazioneUna pipeline con allineamento forzato (WhisperX)
Saper chi ha parlatoUna pipeline con separazione dei parlanti
Trascrizione in tempo reale, flusso continuoUn motore orientato allo streaming, come Vosk
Una macchina molto poco potente, senza GPUFaster-Whisper in int8, modello small o medium

#FAQ

Faster-Whisper è meno preciso di Whisper?+
No, a parità di dimensioni del modello la qualità è equivalente: si tratta esattamente degli stessi pesi eseguiti da CTranslate2, un motore diverso da quello di openai/whisper. Il progetto stesso dichiara una precisione identica, e la quantizzazione a 8 bit ha in generale un effetto del tutto impercettibile sulla trascrizione ottenuta.
Serve una GPU?+
No, ed è proprio questo il suo vantaggio, dimostrato dai numeri: su un Intel Core i7-12700K, il modello small in int8 trascrive 13 minuti di audio in 1 minuto e 42 secondi, contro 6 minuti e 58 secondi per openai/whisper sullo stesso processore. Una GPU accelera ulteriormente il processo, ma non è necessaria per un uso ragionevole.
Perché il modello inventa frasi durante i silenzi?+
È un comportamento noto di Whisper nei passaggi senza parlato, ereditato dal modello originale e quindi presente anche in Faster-Whisper poiché i pesi sono gli stessi. Attivare il rilevamento dell'attività vocale è il rimedio principale, prima di una rilettura mirata dei passaggi ripetuti che rivelano il problema in una registrazione lunga.
Quale dimensione del modello scegliere per il francese?+
Il modello intermedio è sufficiente se il testo viene poi usato per generare un riassunto automatico, in cui un errore isolato su una parola rara conta poco. Per una trascrizione destinata a essere letta così com'è, il modello grande (large-v2) è giustificato per i nomi propri e le sigle, al costo di circa 2,9 GB di memoria in int8 secondo il benchmark ufficiale.
Può funzionare in tempo reale?+
È progettato per elaborare file già registrati, non per un flusso continuo in tempo reale. La sottotitolazione in diretta richiede un motore orientato allo streaming come Vosk, con un diverso compromesso tra latenza e precisione — i due strumenti si combinano bene nella stessa catena di elaborazione, uno per il riscontro immediato, l'altro per la versione definitiva.
Qual è il vero vantaggio della quantizzazione int8?+
Nel benchmark ufficiale, riduce il tempo di trascrizione del modello small da 2 min 37 (fp32) a 1 min 42 (int8) sulla CPU, con un utilizzo di memoria che passa da 2 257 MB a 1 477 MB. È la singola impostazione che ha il maggiore effetto prima di prendere in considerazione una GPU o l'elaborazione in batch.
Faster-Whisper è sempre più veloce delle altre implementazioni?+
Non sistematicamente: sul modello large-v2 in fp16 con beam size 5, whisper.cpp con Flash Attention scende a 1 min 05 contro 1 min 03 per Faster-Whisper, con tempi quasi identici. Il divario aumenta soprattutto rispetto all'implementazione ufficiale openai/whisper e a transformers, nei cui confronti Faster-Whisper resta nettamente in vantaggio nel benchmark pubblicato.
Questa guida ti è stata utile?

Un feedback, un errore, una precisazione? Facci sapere, così la guida migliora per tutti.