Accueil / Factory / Algos ML / Speech-to-text (Whisper) — factory / algos ML / reconnaissance de la parole

SPEECH-TO-TEXT WHISPER.

Whisper, publié en open source par OpenAI en 2022, transcrit la parole en texte. Entraîné sur 680 000 heures d'audio collectées sur le web, il reconnaît près de 100 langues et résiste bien aux accents et au bruit de fond. Il sert à transcrire appels, réunions ou vidéos, y compris sur vos propres serveurs.

AudioTranscriptionMultilingueModèle pré-entraînéNiveau : intermédiaire

FICHE D'IDENTITÉ

notes sur 5 · usage entreprise
PerformanceTranscription fiable en français, plus fragile sur les noms rares
InterprétabilitéHorodatage par segment, erreurs difficiles à expliquer
VitesseRapide sur GPU, lent sur CPU avec les grands modèles
Facilité de réglageFonctionne tel quel : on choisit surtout la taille du modèle
Tolérance aux données brutesFormats audio courants et bruit de fond acceptés
EN 30 SECONDES

Un sténographe qui a écouté des centaines de milliers d'heures de radio, de podcasts et de vidéos dans toutes les langues, et qui tape ce qu'il entend, tranche de 30 secondes après tranche de 30 secondes.

1. Le son devient une image

L'audio est découpé en tranches de 30 secondes, chacune convertie en spectrogramme : une image des fréquences au fil du temps.

2. Un encodeur lit le spectrogramme

Un Transformer transforme ce spectrogramme en une suite de vecteurs qui résument ce qui est dit.

3. Un décodeur écrit le texte

Comme un LLM, un second Transformer produit le texte token par token. Des tokens spéciaux lui indiquent la langue, la tâche (transcrire, ou traduire en anglais) et l'horodatage.

LE CAS MÉTIER

centre de contacts · banque / assurance / énergie
EN ENTRÉE

Des enregistrements d'appels

Les appels du service client, dans les formats audio courants. Le code transcrit un extrait public en anglais ; pour des appels en français, on fixe la langue à « french ».

EN SORTIE

Un texte horodaté par appel

Chaque appel devient un texte découpé en segments, avec leur début et leur fin. On peut ensuite chercher un mot, résumer avec un LLM ou classer les motifs d'appel.

CE QU'ON MESURE

Le taux d'erreur sur les mots (WER)

On transcrit à la main quelques dizaines d'appels et on compte les mots remplacés, oubliés ou ajoutés, rapportés au nombre total de mots. On contrôle en priorité les termes métier : noms d'offres, montants, références.

QUAND LE SORTIR, QUAND L'ÉVITER

OUI

  • Transcrire appels, réunions, entretiens ou vidéos à grande échelle
  • Audio multilingue ou accents variés
  • Enregistrements sensibles à garder en interne : le modèle tourne sur vos serveurs
  • Préparer des sous-titres grâce à l'horodatage

NON

  • Savoir qui parle : Whisper ne sépare pas les voix, ajouter un outil de diarisation comme pyannote
  • Temps réel à très faible latence : le découpage en tranches s'y prête mal, préférer un modèle de streaming
  • Longs silences ou musique : le modèle peut inventer des phrases, filtrer d'abord les passages sans voix
  • Vocabulaire très spécialisé (codes produits, noms rares) sans relecture
LES 4 RÉGLAGES QUI COMPTENT

Noms donnés pour le pipeline de transformers (Hugging Face).

Taille du modèle

De tiny (39 millions de paramètres) à large (1,55 milliard). small ou medium offrent un bon compromis en français ; large-v3-turbo approche la qualité de large pour bien moins de calcul.

language

Fixer la langue évite les erreurs de détection, fréquentes quand un appel commence par de la musique d'attente ou un silence.

task

« transcribe » garde la langue d'origine ; « translate » produit directement une traduction en anglais.

chunk_length_s / return_timestamps

Au-delà de 30 secondes, l'audio est découpé en tranches. Les horodatages permettent de retrouver chaque phrase dans l'enregistrement.

LE CODE MINIMAL

données simulées dans le code
# Appels du service client : Whisper en Python
from transformers import pipeline

# Modèle public d'OpenAI, taille small (244 millions de paramètres) ; ffmpeg requis pour lire l'audio
transcripteur = pipeline("automatic-speech-recognition", model="openai/whisper-small", chunk_length_s=30)

# Extrait public en anglais ; pour vos appels : "appel_0001.mp3" et "language": "french"
audio = "https://huggingface.co/datasets/Narsil/asr_dummy/resolve/main/mlk.flac"
resultat = transcripteur(audio, return_timestamps=True,
                         generate_kwargs={"language": "english", "task": "transcribe"})
print(resultat["text"])

# Un segment par passage de parole, avec son début et sa fin en secondes
for segment in resultat["chunks"]:
    debut, fin = segment["timestamp"]
    print(debut, "-", fin, ":", segment["text"])

# Recherche d'un mot dans la transcription
mot = "dream"
print("Le mot", mot, "apparaît", resultat["text"].lower().count(mot), "fois")

Whisper se pratique en Python (transformers, openai-whisper) : pas de package CRAN de référence en R.

QUESTIONS FRÉQUENTES

Whisper est-il gratuit ?

Le modèle et son code sont publiés sous licence MIT : on peut les installer et les utiliser gratuitement, y compris à des fins commerciales, sur ses propres machines. OpenAI propose aussi une API de transcription, facturée à la minute d'audio.

Whisper est-il précis en français ?

Le français fait partie des langues les mieux reconnues par Whisper, sur de l'audio propre. Sur des appels téléphoniques bruités ou avec beaucoup de vocabulaire métier, l'erreur augmente : il faut la mesurer sur vos propres enregistrements.

Whisper peut-il identifier qui parle ?

Non. Whisper transcrit sans distinguer les voix. Pour séparer conseiller et client, on lui associe un outil de diarisation, comme pyannote, qui découpe l'audio par locuteur.

LES ALGOS VOISINS

à comparer avant de choisir
l'architecture

Transformer

Whisper est un Transformer encodeur-décodeur, le même schéma que les premiers modèles de traduction.

Voir la fiche →
pour exploiter les transcriptions

GPT et LLM

Un LLM résume l'appel, en extrait le motif ou rédige la note de suivi.

Voir la fiche →
l'étape suivante

Analyse de sentiment

Une fois l'appel transcrit, on mesure la satisfaction ou la tension exprimée par le client.

Voir la fiche →
— formation

Passer de la fiche à la pratique

Dataistudio forme les équipes au machine learning et à l'IA, sur des cas concrets.

Voir les formations →