Whisper per la trascrizione delle chiamate: speech-to-text accurato per le telefonate

Whisper per la trascrizione delle chiamate: speech-to-text accurato per le telefonate

Eric King

Eric King

Author


La trascrizione delle chiamate telefoniche è uno dei casi d’uso più comuni e di maggior valore per lo speech-to-text. OpenAI Whisper si adatta particolarmente bene grazie alla robustezza verso rumore, accenti e qualità audio non ideale.
Questo articolo spiega come usare Whisper per trascrivere chiamate, inclusi formati audio, separazione degli speaker, ottimizzazione della precisione e pattern di deployment reali.

Perché Whisper per la trascrizione delle chiamate?

Rispetto ai motori ASR tradizionali, Whisper ottiene buoni risultati su:
  • Audio telefonico di bassa qualità (8 kHz)
  • Accenti e parlanti non nativi
  • Rumore di fondo
  • Conversazioni lunghe (10–120 minuti)
  • Chiamate multilingue e code-switching
Casi d’uso tipici:
  • Log delle chiamate di assistenza clienti
  • Analisi delle chiamate di vendita
  • QA e conformità
  • Riassunti e insight sulle chiamate
  • Automazione CRM

Pipeline tipica per la trascrizione delle chiamate

Call (PSTN / VoIP)
↓
Call Recording (WAV / MP3)
↓
Preprocessing (resample, channel split)
↓
Whisper Transcription
↓
Speaker Diarization (optional)
↓
Post-processing (punctuation, timestamps, summaries)

Formati audio: cosa funziona meglio

Impostazioni consigliate

ParametroValore
Frequenza di campionamento8 kHz o 16 kHz
CanaliMono o stereo
FormatoWAV (preferito), FLAC
Profondità di bitPCM a 16 bit
Whisper ricampiona internamente, ma un ingresso pulito migliora la precisione.

Chiamate mono vs stereo

Mono (più comune)

  • Entrambi gli interlocutori miscelati su un solo canale
  • Pipeline più semplice
  • Separazione degli speaker più difficile
Ideale per:
  • Trascrizione semplice
  • Ricerca e archiviazione

Stereo (best practice)

  • Agente sul canale sinistro
  • Cliente sul canale destro
Vantaggi:
  • Separazione chiara degli speaker
  • Nessuna diarizzazione necessaria
  • Maggiore precisione nei passaggi successivi
# Split stereo call into two mono tracks
import torchaudio

audio, sr = torchaudio.load("call.wav")
agent = audio[0]
customer = audio[1]
Poi trascrivi ogni canale separatamente.

Diarizzazione degli speaker con Whisper

Whisper non include la diarizzazione in modo nativo, ma puoi combinarla con:
  • Pyannote.audio
  • WebRTC VAD + clustering
  • Separazione basata sul canale (preferita)
Approccio tipico:
  1. Eseguire il modello di diarizzazione
  2. Suddividere l’audio per segmenti di speaker
  3. Trascrivi ogni segmento con Whisper
  4. Unisci i risultati con etichette speaker

Migliori modelli Whisper per le chiamate

ModelloPrecisioneVelocitàConsigliato
baseMediaVeloce❌ Chiamate brevi
smallAltaMedia✅ La maggior parte dei casi
mediumMolto altaPiù lenta✅ Conformità
large-v3EccellenteLenta✅ Legale / QA
Raccomandazione: small o medium per i contact center

Chiamate lunghe (30–120 minuti)

Per le chiamate lunghe, evita di passare tutto l’audio in un’unica volta.

Best practice

  • Suddividi l’audio in segmenti da 2–5 minuti
  • Usa piccole sovrapposizioni (5–10 secondi)
  • Conserva i timestamp
result = model.transcribe(
  audio_chunk,
  condition_on_previous_text=True
)
In questo modo si preserva il contesto tra i segmenti.

Migliorare la precisione sulle chiamate telefoniche

1. Normalizza l’audio

  • Rimuovi i silenzi
  • Normalizza il volume
  • Applica riduzione del rumore se serve

2. Usa hint sulla lingua

model.transcribe(audio, language="en")

3. Abilita FP16 sulla GPU

Inferenza più veloce e stabile.

4. Evita chunk troppo piccoli

Segmenti troppo corti riducono contesto e precisione.

Trascrizione delle chiamate in tempo reale vs batch

ModalitàCaso d’uso
Tempo realeMonitoraggio live, avvisi
Quasi tempo realeDashboard QA
BatchAnalisi, archiviazione
La maggior parte dei contact center usa quasi tempo reale o batch per stabilità e costi.

Scalare Whisper nei contact center

Piccola scala (≤ 100 chiamate/giorno)

  • Un server GPU
  • Whisper small

Scala media (1k–10k chiamate/giorno)

  • Pool di GPU
  • Coda di job asincrona (RabbitMQ / Kafka)
  • Elaborazione a chunk

Grande scala (enterprise)

  • Più nodi GPU
  • Servizio di pre-elaborazione audio
  • Pipeline di trascrizione e riassunto

Post-elaborazione ed estrazione di valore

Dopo la trascrizione, i passi comuni includono:
  • Punteggiatura delle frasi
  • Tag degli speaker
  • Estrazione di parole chiave
  • Analisi del sentiment
  • Riassunti delle chiamate (LLM)
  • Integrazione CRM

Whisper vs API cloud per la trascrizione delle chiamate

AspettoWhisperAPI cloud
CostoBasso (self-hosted)Alto
Privacy dei datiControllo completoDipende dal fornitore
PrecisioneMolto altaAlta
PersonalizzazioneTotaleLimitata
Whisper è ideale per team che necessitano privacy, controllo dei costi e personalizzazione.

Conclusione

Whisper è una scelta solida per la trascrizione delle chiamate, soprattutto per:
  • Assistenza clienti
  • Vendite e QA
  • Settori con forte focus sulla conformità
Con una gestione audio adeguata, chunking e diarizzazione opzionale, Whisper può offrire trascrizione delle chiamate di livello produzione su larga scala.

Provalo gratis ora

Prova subito il nostro servizio basato su IA per voce, audio e video! Non solo ottieni una trascrizione voce‑testo ad alta precisione, traduzione multilingue e identificazione intelligente dei parlanti, ma puoi anche generare automaticamente sottotitoli per i video, modificare in modo intelligente i contenuti audio‑video ed effettuare analisi sincronizzate di audio e immagine. Copri tutti gli scenari: verbali di riunioni, creazione di video brevi, produzione di podcast e molto altro. Inizia ora la tua prova gratuita!