I ported NVIDIA Parakeet (speech-to-text) to ggml: same output as NeMo, faster, GGUF-quantized, no Python
En 3 lignesPort de Parakeet (speech-to-text NVIDIA) en C++/ggml sans Python ni PyTorch. Sortie byte-for-byte identique à NeMo, 5x plus rapide sur GPU pour les gros modèles, 600x realtime sur clips audio. GGUF quantifiés (f16, q8_0, q6_k, q5_k, q4_k), API C plate, intégré dans LocalAI avec endpoint OpenAI-compatible.
## Parakeet.cpp : la STT NVIDIA sans Python, sans PyTorch, sans compromis
### Ce qui a été fait
mudler (mainteneur de LocalAI) a porté les modèles Parakeet de NVIDIA — FastConformer TDT, CTC, RNNT et hybride — en C++ pur via ggml, le même runtime qui fait tourner llama.cpp et whisper.cpp. Le résultat : une sortie byte-for-byte identique à NeMo sur les chemins f32/f16 (WER 0 mesuré), avec des gains de vitesse substantiels et une empreinte mémoire réduite de moitié.
Chiffres concrets : - **~5x plus rapide** que le runtime PyTorch/NeMo sur les grands modèles TDT/hybride en GPU - **~1,86x plus rapide** sur CPU avec quantification - **~2x moins de mémoire** dans tous les cas - **~600x realtime** sur GPU sur un clip de 23 secondes — soit une heure d'audio transcrite en environ 6 secondes
Les GGUF couvrent cinq niveaux de précision : f16, q8_0, q6_k, q5_k, q4_k. Le fichier est auto-suffisant : tokenizer et vocabulaire sont intégrés dans le modèle, aucun fichier externe requis.
### Pourquoi c'est significatif
Avant ce port, déployer Parakeet impliquait obligatoirement NeMo, donc Python, PyTorch, et une pile de dépendances NVIDIA qui rend l'intégration dans des environnements de production non-Python quasi-impossible. Whisper.cpp a montré en 2022 que ce pattern fonctionne pour Whisper ; parakeet.cpp applique la même logique à une architecture différente et plus récente (FastConformer), avec des modèles qui surpassent Whisper large-v3 sur plusieurs benchmarks anglais selon les évaluations NVIDIA.
La flat C-API est le détail d'ingénierie le plus important : elle permet d'embarquer la STT dans n'importe quel langage avec FFI (Rust, Go, C#, Swift), dans des applications mobiles ou des firmwares, sans runtime Python. C'est précisément ce que l'écosystème ggml a apporté aux LLM depuis 18 mois, et c'est maintenant disponible pour la transcription audio.
L'intégration dans LocalAI ajoute un endpoint `/v1/audio/transcriptions` compatible OpenAI, ce qui signifie que tout code existant ciblant l'API Whisper d'OpenAI peut basculer sur Parakeet local sans modification. Le streaming cache-aware avec détection de fin d'énoncé en temps réel et les timestamps mot-par-mot avec scores de confiance sont des fonctionnalités que whisper.cpp n'expose pas nativement de façon aussi propre.
### Les perdants potentiels
**AssemblyAI, Deepgram, Rev.ai** : leur proposition de valeur repose en partie sur la friction d'auto-hébergement des modèles STT performants. Un pipeline Parakeet quantifié q4_k qui tourne à 600x realtime sur un GPU grand public érode directement cet argument. Pour les cas d'usage à fort volume (call centers, transcription médicale, sous-titrage), le coût marginal par heure d'audio transcrite en local devient négligeable.
**whisper.cpp lui-même** : Parakeet TDT 1.1B affiche des WER inférieurs à Whisper large-v3 (2x plus grand) sur l'anglais selon les benchmarks NVIDIA. Si parakeet.cpp atteint la même maturité d'écosystème que whisper.cpp — bindings, intégrations, documentation — il devient le choix rationnel pour l'anglais en production locale.
**NeMo comme runtime de déploiement** : NeMo reste pertinent pour l'entraînement et le fine-tuning, mais son rôle d'inférence en production est directement contesté. La surcharge PyTorch (5x sur GPU) est difficile à justifier quand une alternative MIT existe.
### Ce qu'il reste à surveiller
Le port couvre les modèles Parakeet anglais. Les modèles multilingues de NVIDIA (Canary, notamment) ne sont pas encore portés. La question de la qualité de quantification sur q4_k mérite une évaluation indépendante sur des corpus bruités — les benchmarks actuels sont sur des clips propres.
La licence MIT du code (pas des modèles, qui restent sous licence NVIDIA) est un point à vérifier selon les cas d'usage commerciaux. Les poids Parakeet sont disponibles sous CC-BY-4.0, ce qui est permissif mais distinct du MIT.
L'intégration CUDA/HIP/Vulkan/Metal est annoncée mais les benchmarks publiés concernent principalement CUDA. Les performances sur Metal (Apple Silicon) et Vulkan (AMD, Intel Arc) restent à valider par la communauté. C'est précisément là que l'écosystème open-source va produire des données dans les prochaines semaines.
Résumé généré par Claude — vérifié par l'humain