
Whisper voor gesprekstranscriptie: nauwkeurige spraak-naar-tekst voor telefoongesprekken
Eric King
Author
Transcriptie van telefoongesprekken is een van de meest voorkomende en waardevolle toepassingen van spraak-naar-tekst. OpenAI Whisper past hier uitstekend bij dankzij de robuustheid tegen ruis, accenten en imperfecte audiokwaliteit.
Dit artikel legt uit hoe je Whisper voor gesprekstranscriptie gebruikt, inclusief audioformaten, sprekersscheiding, nauwkeurigheidsoptimalisatie en praktische deploymentpatronen.
Waarom Whisper voor gesprekstranscriptie?
Vergeleken met traditionele ASR-engines presteert Whisper goed bij:
- Telefoonaudio van lage kwaliteit (8 kHz)
- Accenten en niet-moedertaalsprekers
- Achtergrondgeluid
- Lange gesprekken (10–120 minuten)
- Meertalige gesprekken en code-switching
Typische use cases:
- Logboeken van klantenservicegesprekken
- Analyse van salesgesprekken
- QA en compliance
- Samenvattingen en inzichten uit gesprekken
- CRM-automatisering
Typische pipeline voor gesprekstranscriptie
Call (PSTN / VoIP)
↓
Call Recording (WAV / MP3)
↓
Preprocessing (resample, channel split)
↓
Whisper Transcription
↓
Speaker Diarization (optional)
↓
Post-processing (punctuation, timestamps, summaries)
Audioformaten: wat werkt het best?
Aanbevolen instellingen
| Parameter | Waarde |
|---|---|
| Samplefrequentie | 8 kHz of 16 kHz |
| Kanalen | Mono of stereo |
| Formaat | WAV (voorkeur), FLAC |
| Bitdiepte | 16-bit PCM |
Whisper resampled intern, maar schone invoer verbetert de nauwkeurigheid.
Mono versus stereo bij gesprekken
Mono (meest gebruikelijk)
- Beide sprekers gemengd op één kanaal
- Eenvoudigere pipeline
- Moeilijker om sprekers te scheiden
Het beste voor:
- Eenvoudige transcriptie
- Zoeken en archiveren
Stereo (best practice)
- Agent op het linkerkanaal
- Klant op het rechterkanaal
Voordelen:
- Duidelijke sprekersscheiding
- Geen diarisatie nodig
- Hogere nauwkeurigheid downstream
# Split stereo call into two mono tracks
import torchaudio
audio, sr = torchaudio.load("call.wav")
agent = audio[0]
customer = audio[1]
Transcribeer daarna elk kanaal apart.
Sprekersdiarisatie met Whisper
Whisper ondersteunt diarisatie niet native, maar je kunt het combineren met:
- Pyannote.audio
- WebRTC VAD + clustering
- Scheiding op basis van kanalen (voorkeur)
Typische aanpak:
- Diarisatiemodel draaien
- Audio splitsen per sprekerssegment
- Elk segment met Whisper transcriberen
- Resultaten samenvoegen met sprekerslabels
Beste Whisper-modellen voor gesprekken
| Model | Nauwkeurigheid | Snelheid | Aanbevolen |
|---|---|---|---|
| base | Gemiddeld | Snel | ❌ Korte gesprekken |
| small | Hoog | Gemiddeld | ✅ Meeste gevallen |
| medium | Zeer hoog | Langzamer | ✅ Compliance |
| large-v3 | Uitstekend | Langzaam | ✅ Legal / QA |
Aanbeveling: small of medium voor callcenters
Lange gesprekken (30–120 minuten)
Voor lange gesprekken: voer niet de volledige audio in één keer in.
Best practice
- Verdeel audio in segmenten van 2–5 minuten
- Gebruik kleine overlappingen (5–10 seconden)
- Behoud tijdstempels
result = model.transcribe(
audio_chunk,
condition_on_previous_text=True
)
Zo blijft de context tussen segmenten behouden.
Nauwkeurigheid bij telefoongesprekken verbeteren
1. Audio normaliseren
- Stilte verwijderen
- Volume normaliseren
- Zo nodig ruisonderdrukking toepassen
2. Taalhints gebruiken
model.transcribe(audio, language="en")
3. FP16 op GPU inschakelen
Snellere en stabielere inferentie.
4. Over-chunking vermijden
Te kleine stukjes verminderen context en nauwkeurigheid.
Realtime versus batch voor gesprekstranscriptie
| Modus | Use case |
|---|---|
| Realtime | Live monitoring, alerts |
| Bijna realtime | QA-dashboards |
| Batch | Analytics, archivering |
De meeste callcenters gebruiken bijna realtime of batch voor stabiliteit en kosten.
Whisper schalen voor callcenters
Kleine schaal (≤ 100 gesprekken/dag)
- Één GPU-server
- Whisper small
Middelgrote schaal (1k–10k gesprekken/dag)
- GPU-pool
- Asynchrone jobqueue (RabbitMQ / Kafka)
- Chunk-gebaseerde verwerking
Grote schaal (enterprise)
- Meerdere GPU-knooppunten
- Audiovoorverwerkingsservice
- Transcriptie- en samenvattingspipelines
Nabewerking en waarde-extractie
Na transcriptie zijn veelvoorkomende stappen:
- Zinsinterpunctie
- Sprekerstagging
- Trefwoordextractie
- Sentimentanalyse
- Gesprekssamenvattingen (LLM’s)
- CRM-integratie
Whisper versus cloud-API’s voor gesprekstranscriptie
| Kenmerk | Whisper | Cloud-API’s |
|---|---|---|
| Kosten | Laag (self-hosted) | Hoog |
| Gegevensprivacy | Volledige controle | Leverancierafhankelijk |
| Nauwkeurigheid | Zeer hoog | Hoog |
| Maatwerk | Volledig | Beperkt |
Whisper is ideaal voor teams die privacy, kostenbeheersing en maatwerk nodig hebben.
Conclusie
Whisper is een krachtige keuze voor gesprekstranscriptie, vooral voor:
- Klantenservice
- Sales en QA
- Sectoren met zware compliance-eisen
Met goede audio-afhandeling, chunking en optionele diarisatie kan Whisper productiewaardige gesprekstranscriptie op schaal leveren.
