Table des matières
Créé le: 2025-11-04 ; Révisé le: 2025-11-04
Whisper - Reconnaissance automatique de la parole
Vidéo (16 minutes)
Introduction (00:00)
Whisper est un logiciel créé par OpenAI qui permet de reconnaître automatiquement la parole dans des fichiers audio et vidéo. Il génère plusieurs fichiers de sortie :
- Un fichier texte complet qui peut être utilisé pour faire des sommaires avec un AI
- Un fichier SRT pour les sous-titres (compatible avec VLC et autres lecteurs vidéo)
- D’autres formats de sortie pour différents usages
Bien que quelques mots puissent nécessiter des corrections, la qualité est généralement excellente selon le modèle utilisé. Le modèle medium est particulièrement bon pour le français.
Whisper peut être utilisé de deux façons :
- Via l’API OpenAI (payante)
- En installation locale (Open Source)
Liens officiels :
Utiliser sans installation avec Docker (02:15)
L’utilisation avec Docker est la façon la plus simple d’utiliser Whisper sans avoir à l’installer localement. Une image Docker pré-configurée est disponible sur GitHub.
Choix du modèle
Le modèle medium est suggéré pour le français. Les modèles plus petits (Small, Base, Tiny) donnent des résultats moins satisfaisants en français, même s’ils peuvent être acceptables pour l’anglais.
Le modèle large est plus performant, mais nécessite idéalement un GPU pour être utilisé efficacement.
Avec GPU (Nvidia recommandé)
Note: La configuration GPU avec Docker peut être complexe, surtout dans WSL (Windows Subsystem for Linux). Nvidia est plus simple à configurer qu’AMD.
docker run -ti --rm \
--gpus all \
-v $(pwd):/workspace \
-v ~/.cache/whisper:/root/.cache/whisper \
foilen/fdi-openai-whisper:latest \
whisper --model medium audio.mp3
Sans GPU (CPU uniquement)
Le processeur normal fonctionne très bien avec le modèle medium, même si c’est plus lent qu’avec un GPU.
docker run -ti --rm \
-v $(pwd):/workspace \
-v ~/.cache/whisper:/root/.cache/whisper \
foilen/fdi-openai-whisper:latest \
whisper --model medium audio.mp3
Explication des paramètres:
-v $(pwd):/workspace: Monte le répertoire courant dans le conteneur-v ~/.cache/whisper:/root/.cache/whisper: Cache le modèle téléchargé pour éviter de le re-télécharger à chaque utilisation (1.42 GB pour le modèle medium)--model medium: Spécifie le modèle à utiliser- La première exécution sera plus long dû au téléchargement du modèle, mais les utilisations suivantes seront instantanées
Processus d’exécution (05:32)
Lorsque Whisper s’exécute :
- Détection de la langue : Analyse les 30 premières secondes pour détecter automatiquement la langue
- Traitement progressif : Affiche la progression en temps réel
- Génération des fichiers : Tous les fichiers sont créés en même temps à la fin du traitement
- Performance : Utilise le CPU et la mémoire (le GPU si configuré avec
--gpus all)
Note: Sans GPU, vous verrez un message indiquant que FP16 (Floating Point 16) n’est pas disponible, ce qui est normal et n’empêche pas le bon fonctionnement.
Les fichiers de sortie générés (06:51)
Lorsque Whisper traite un fichier audio ou vidéo, il génère plusieurs fichiers de formats différents, chacun ayant un usage spécifique :
Fichier JSON
Contient toutes les informations détaillées de la transcription :
- Le texte complet
- Les segments découpés par temps (début, fin en secondes)
- Les tokens pour chaque segment
- La langue détectée et les paramètres de compression
Utilité: Idéal pour créer des logiciels qui analysent le texte, associent des images à des moments spécifiques ou envoient le contenu à un AI pour analyse.
Fichier SRT
Format de sous-titres standard compatible avec VLC et autres lecteurs vidéo.
Utilité: Permet d’afficher des sous-titres directement dans les lecteurs vidéo. Peut être uploadé sur YouTube pour faciliter la traduction automatique vers d’autres langues.
Fichier TXT
Texte brut avec le contenu transcrit, découpé par phrases complètes (pas par temps).
Utilité: Lecture simple du contenu, copier-coller vers d’autres applications, analyse de texte.
Fichier TSV
Format “Tab-Separated Values” - similaire au CSV mais avec des tabulations au lieu de virgules.
Utilité: Plus facile à traiter que JSON pour certains systèmes et évite les problèmes de virgules dans le texte (si c’était un CSV).
Fichier VTT
Format WebVTT pour les sous-titres web.
Utilité: Sous-titres pour les vidéos web et HTML5.
Installer pour un utilisateur dans un venv Python
Si vous préférez une installation locale sans Docker, vous pouvez installer Whisper dans un environnement virtuel Python (venv). Cette méthode évite les problèmes de permissions et de conflits de dépendances.
Pourquoi un venv? Sur Ubuntu, l’installation avec pip global ne fonctionne pas lorsque Python est installé via
APT. Le système empêche l’installation de dépendances globales. Un environnement virtuel Python (venv) résout ce
problème en créant une installation isolée avec ses propres dépendances et versions.
Installer (10:51)
Créez et activez l’environnement virtuel, puis installez Whisper :
VENV_DIR="$HOME/.whisper-venv"
python3 -m venv "$VENV_DIR"
source "$VENV_DIR/bin/activate"
pip install --upgrade pip
pip install -U openai-whisper
Note importante: L’installation télécharge toutes les dépendances Nvidia (même si vous n’avez pas de GPU Nvidia), ce qui peut prendre beaucoup d’espace disque.
Important: Lorsque vous faites source, vous ajoutez l’environnement à votre bash actuel. Vous ne créez pas un
nouveau bash. Donc si vous faites exit, vous fermez complètement votre terminal, pas seulement le venv.
Utiliser (14:50)
À chaque fois que vous voulez utiliser Whisper, activez d’abord l’environnement virtuel :
source ~/.whisper-venv/bin/activate
whisper --model medium audio.mp3
Avantage: Si vous avez déjà téléchargé le modèle avec Docker (dans ~/.cache/whisper), Whisper utilisera
automatiquement ce cache et ne re-téléchargera pas le modèle.