Contexte
ASR.lab est une plateforme d’évaluation systématique des moteurs de reconnaissance automatique de la parole (ASR). Elle permet de comparer des modèles issus de différentes architectures et organisations — OpenAI, Meta, NVIDIA, Alibaba — dans des conditions acoustiques contrôlées et reproductibles, via une interface de configuration entièrement déclarative (YAML).
Architecture
Le pipeline de benchmark enchaîne des étapes configurables en produit cartésien :
- Dégradation audio : application de conditions acoustiques réalistes (réverbération, bruit, compression) via plugins VST3, avec gestion de presets nommés
- Enhancement audio (optionnel) : débruitage par
DemucsouDeepFilterNet, appliqué sur l’audio dégradé - Normalisation de sonie : grid search sur différents niveaux LUFS conformes à la norme EBU R128
- Transcription ASR : passage sur l’ensemble des moteurs activés (Whisper, Wav2Vec2, NeMo, Vosk, SeamlessM4T, Moonshine, SenseVoice)
- Calcul de métriques : WER, CER, MER, WIL, WIP — calculés en double pour chaque transcription (texte brut et texte normalisé), constituant ainsi une dimension supplémentaire du grid search
Chaque combinaison dégradation × enhancement × normalisation × moteur génère une entrée distincte dans les résultats, permettant une analyse exhaustive des facteurs influençant les performances.
Caractéristiques
- Multi-moteurs : 7 frameworks supportés et testés — Whisper, Wav2Vec2, NeMo, Vosk, SeamlessM4T, Moonshine, SenseVoice
- Grid search automatique : produit cartésien de tous les paramètres de test, configuré en YAML
- Rapports interactifs : HTML auto-suffisant avec filtres multi-critères, scatter plots, heatmaps, diff mot-à-mot et tableau exportable en CSV — sans dépendance Pandas/Plotly côté client
- Demo en ligne sur Hugging Face Spaces
- Extensible : architecture en plugins pour ajouter de nouveaux moteurs ou métriques
- Open source sous licence MIT, Python 3.12+, gestion des dépendances via
uv
Impact
ASR.lab permet de répondre concrètement à la question “quel moteur ASR, dans quelles conditions, pour quelle langue ?” — un choix structurant pour tout projet de transcription à grande échelle. En rendant l’évaluation reproductible et exhaustive, il apporte une base factuelle solide pour comparer des solutions open source et orienter des décisions techniques.