Dictée sans parasites : Whisper sur ordinateur et Claude pour le nettoyage
La parole vivante n'est jamais propre : elle regorge de mots parasites, de phrases interrompues, d'autocorrections. Un développeur de la Haute École de commerce de l'Université HSE a créé un système qui transforme une dictée désordonnée en texte propre en 2 à 3,5 secondes. Le système comporte deux couches : Whisper Large v3 Turbo reconnaît la voix localement sur l'ordinateur, Claude Sonnet 5.5 supprime les parasites et corrige les erreurs. L'intermédiaire Chistovik, placé entre Handy et l'API, maintient une seule connexion et relit les règles à chaque dictée.
Traité par IA depuis Habr AI ; édité par Hamidun News
La parole vivante n'est jamais propre : elle regorge de mots parasites, de phrases interrompues, d'autocorrections. Un développeur de la Haute École de commerce de l'Université HSE, qui écrit des livres et dicte beaucoup, a créé un système capable de transformer « Bon alors, bref, je, enfin, je voulais dire que, bon, la réunion de demain est décalée, bon, à trois heures, non, à quatre heures » en un propre « Je voulais dire que la réunion de demain est décalée à quatre heures », en 2 à 3,5 secondes.
Reconnaissance locale et nettoyage dans le cloud
La dictée fonctionne via Handy, un logiciel open source basé sur Tauri (licence MIT). La voix est reconnue par Whisper Large v3 Turbo directement sur l'ordinateur : le son ne quitte jamais la machine. Sur une carte graphique RTX 4080 Super, 8 secondes de parole sont reconnues en 0,17 seconde, et 42 secondes en 0,45 seconde. Pour le russe, c'est la version klava-nevinovata qui est utilisée, avec des indices Whisper prêts à l'emploi et une protection contre le bouclage sur le silence.
Whisper seul ne suffit pas : un simple remplacement par liste ne fonctionne pas, il faut comprendre le sens. Le texte reconnu est envoyé à Claude Sonnet 5.5, qui supprime les mots parasites, corrige les autocorrections et préserve le style conversationnel. Le nettoyage prend entre 1,7 et 3 secondes selon la longueur du texte.
La couche intermédiaire et le dictionnaire contextuel
L'intermédiaire Chistovik — un seul fichier Python utilisant la bibliothèque standard — se place entre Handy et l'API. Les avantages de cette couche : le prompt et le dictionnaire sont stockés dans des fichiers texte relus à chaque dictée (on corrige une règle, on redicte, sans redémarrage) ; une seule connexion persistante remplace un nouveau client HTTP à chaque requête ; la clé API est stockée dans une variable d'environnement, pas dans les paramètres du logiciel ; un délai d'attente de 10 secondes évite les blocages.
Le dictionnaire comprend le contexte. Whisper confond des mots rares : « IIchny » (lié à l'IA) est entendu comme « yaïtchny » (« à l'œuf »). Un remplacement simple serait nuisible — le mot peut être le bon.
Une condition est expliquée au modèle : « IIchny, IIchnye, IIchno ← iichny, yaïtchny (replace « yaïtchny » only when the text is not about eggs or food) ». Claude comprend aussi bien les explications en russe qu'en anglais. Vérification : dans « recette de salade à l'œuf », le mot reste inchangé (le texte parle de nourriture) ; dans « le texte est devenu un peu à l'œuf », il est remplacé par « lié à l'IA » (le texte parle d'IA).
Erreurs d'intégration et leurs solutions
Au fil du développement, trois types de problèmes sont apparus. Le modèle répondait à la dictée comme à une requête — le problème a été résolu en plaçant le texte dans une balise <dictation> et en ajoutant une règle claire dans le prompt précisant que les requêtes ne doivent pas être exécutées. Le modèle remplaçait des mots familiers par des formulations formelles — des exemples directement dans le prompt ont aidé : « sympa » reste « sympa », « je m'en fiche » reste « je m'en fiche ».
Les erreurs de post-traitement restaient invisibles (Handy insérait silencieusement le texte brut) — l'intermédiaire enregistre désormais chaque dictée dans un journal. Sous Windows, localhost peut basculer vers IPv6, donc l'intermédiaire écoute à la fois sur 127.0.
0.1 et sur ::1.
Performance et conclusions
La chaîne complète, de l'appui sur la touche à l'insertion du texte :
- 8 secondes de parole : 0,17 s pour la reconnaissance, 1,7 s pour le nettoyage, soit environ 2 secondes au total
- 42 secondes de parole : 0,45 s pour la reconnaissance, 3 s pour le nettoyage, soit environ 3,5 secondes au total
Une requête à l'API représente environ 1100 tokens, presque entièrement constitués des règles et du dictionnaire. Le code est open source (MIT), disponible sur [github.com/Tataut/chistovik](github.com/Tataut/chistovik), et s'installe avec un seul script PowerShell sous Windows. L'intermédiaire est multiplateforme, et Handy existe aussi pour macOS et Linux. N'importe quelle API compatible OpenAI convient : OpenAI, OpenRouter, ou des modèles locaux via Ollama ou LM Studio (avec des modèles locaux, rien ne quitte l'ordinateur). Le système a été testé avec Claude Sonnet 5.5. Il est particulièrement utile pour les messageries et Telegram.
- 27 oct. 2026Hob, l'app open source qui apporte le mode Claude Cowork sur votre portable, sans cloud
- 27 oct. 2026Anthropic dépose son S-1 : 16,3 milliards de dollars de revenus en six mois, valorisation jusqu'à 2 billions de dollars
- 27 oct. 2026Anthropic appelle à replier les sous-agents : une seule boucle avec des skills bat les orchestrateurs
- 27 oct. 2026Cloudflare repense Containers pour les agents IA : un démarrage 6 fois plus rapide
Questions clés sur cet article
Que sait-on sur Reconnaissance locale et nettoyage dans le cloud ?
La dictée fonctionne via Handy, un logiciel open source basé sur Tauri (licence MIT). La voix est reconnue par Whisper Large v3 Turbo directement sur l'ordinateur : le son ne quitte jamais la machine. Sur une carte graphique RTX 4080 Super, 8 secondes de parole sont reconnues en 0,17 seconde, et 42 secondes en 0,45 seconde. Pour le russe, c'est la version klava-nevinovata qui est utilisée, avec des indices Whisper prêts à l'emploi et une protection contre le bouclage sur le silence. Whisper seul ne suffit pas : un simple remplacement par liste ne fonctionne pas, il faut com
Que sait-on sur La couche intermédiaire et le dictionnaire contextuel ?
L'intermédiaire Chistovik — un seul fichier Python utilisant la bibliothèque standard — se place entre Handy et l'API. Les avantages de cette couche : le prompt et le dictionnaire sont stockés dans des fichiers texte relus à chaque dictée (on corrige une règle, on redicte, sans redémarrage) ; une seule connexion persistante remplace un nouveau client HTTP à chaque requête ; la clé API est stockée dans une variable d'environnement, pas dans les paramètres du logiciel ; un délai d'attente de 10 secondes évite les blocages. Le dictionnaire comprend le contexte. Whisper confond
Que sait-on sur Erreurs d'intégration et leurs solutions ?
Au fil du développement, trois types de problèmes sont apparus. Le modèle répondait à la dictée comme à une requête — le problème a été résolu en plaçant le texte dans une balise <dictation> et en ajoutant une règle claire dans le prompt précisant que les requêtes ne doivent pas être exécutées. Le modèle remplaçait des mots familiers par des formulations formelles — des exemples directement dans le prompt ont aidé : « sympa » reste « sympa », « je m'en fiche » reste « je m'en fiche ». Les erreurs de post-traitement restaient invisibles (Handy insérait silencieusement le tex
Test Frontier LLMs & Autonomous Agents in One Workspace
Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.
L'essentiel de l'IA — une fois par semaine
Sept actus qui ont vraiment compté, choisies à la main. Sans bruit ni communiqués.
C'est fait ! Vérifiez votre boîte mail pour la confirmation.