Inflect-Nano-v2 compressé pour ESP32
ttsesp32edge-ai
Le principal atout n’est pas le modèle, mais ce qui en a été retiré
La nouvelle clé est simple : un participant à la discussion a rapporté que le modèle TTS complet Inflect-Nano-v2 a été compressé avec succès sur une petite carte ESP32, atteignant près de 2x le temps réel. Au 11 août 2026, cela ne ressemble pas à une version officielle de firmware, mais plutôt à un cas d’ingénierie très intéressant issu du terrain.
La fiche Hugging Face pour owensong/Inflect-Nano-v2 indique qu’il s’agit d’un TTS local complet de texte vers forme d’onde en anglais : 3 966 721 paramètres déployables, sortie mono cible de 24 kHz, générateur de bout en bout de la famille VITS. Pour un microcontrôleur, ce n’est pas rien. L’ESP32 n’est pas synonyme de luxe : chaque bloc supplémentaire devient vite une source de douleur.
D’après la description de la fiche, il contient un frontend de phonèmes anglais, un alignement monotone, une synthèse latente stochastique, un flux de couplage résiduel et un décodeur de forme d’onde neuronal à alias réduit. Des paramètres compacts sont également listés : 128 canaux latents, 72 canaux cachés de texte, 3 couches d’encodeur, 2 têtes, 384 canaux feed-forward, 4 blocs de couplage de flux, 192 canaux initiaux de décodeur et des taux de suréchantillonnage de 8, 8, 2, 2.
Et ici, la mention de la rétro-ingénierie est plus importante que le simple fait de l’exécuter. L’auteur de la discussion a explicitement écrit qu’en le démontant, on s’est rendu compte qu’on pouvait jeter beaucoup de choses. Les composants exacts supprimés ne sont pas divulgués dans les données sources, il est donc plus honnête de ne pas spéculer sur une liste précise de couches.
Mais la direction d’ingénierie est claire. Un tel modèle comporte une partie acoustique, un alignement, une génération latente et un décodeur de forme d’onde. Si l’objectif est étroit – par exemple une seule voix anglaise et la vocalisation locale de phrases courtes – une partie de la flexibilité globale peut être une taxe superflue.
Pourquoi près de 2x le temps réel sur ESP32 est important
Une marge de presque le double du temps réel sur ESP32 change la donne : ce n’est plus juste un truc qui fonctionne à peine, mais un circuit TTS local potentiellement viable. Pour l’IoT et les appareils portables, la différence est énorme, car la parole peut être générée sans serveur et sans latence réseau.
Le packaging ONNX officiel d’Inflect-Nano-v2 suggère également un point de coupe pratique : duration.onnx gère les tokens vers la distribution acoustique alignée, decode.onnx la distribution acoustique plus le bruit initial vers la forme d’onde. Une telle division ne prouve pas la compatibilité avec ESP32, mais montre où le modèle peut être découpé, quantifié ou remplacé par parties.
Je regarderais d’abord non pas le joli nombre de paramètres, mais la mémoire, les types de calcul et le coût du décodeur. En TTS, on peut souvent compresser la partie texte de manière relativement sûre, mais une attaque trop brutale sur le décodeur de forme d’onde transforme vite la parole en bouillie.
Ce cas est intéressant justement par son aspect terre-à-terre. Pas un énième énorme générateur dans le cloud, mais un petit modèle que quelqu’un a commencé à démonter au tournevis jusqu’au niveau du microcontrôleur. La question la plus intéressante n’est plus le lancement, mais combien de qualité il reste après toute cette chirurgie.