[M1] Moteur VoskEngine : transcription locale légère (Vosk) #77

Closed
opened 2026-04-06 01:41:57 +00:00 by charles · 1 comment
Owner

Contexte

Moteur STT local léger basé sur Vosk. Idéal pour les machines modestes (pas de GPU nécessaire, faible empreinte mémoire). Alternative à Whisper.cpp pour les Raspberry Pi ou machines entrée de gamme.

Critères d'acceptation

  • VoskEngine implémente SttEngine
  • Intégration via bindings Rust de la lib Vosk (vosk crate) ou appel subprocess
  • Téléchargement automatique du modèle Vosk si absent :
    • Chemin : ~/.local/share/fractal-plus/models/vosk-<lang>/
    • Modèles disponibles listés dans la config (URLs configurables)
    • Langue par défaut : fr ou détectée depuis les paramètres système
  • health_check() : vérifie que le modèle pour la langue configurée est présent
  • supported_languages() : liste des langues dont le modèle est téléchargé localement
  • Transcription en streaming possible (segment par segment) pour de l'audio long

Notes techniques

  • Dépend de #73 (SttEngine trait)
  • Vosk ne produit pas de timestamps de confiance aussi précis que Whisper ; adapter Confidence en conséquence
  • Les modèles Vosk sont des dossiers (pas de fichier unique) — gérer le téléchargement + extraction d'archive
## Contexte Moteur STT local léger basé sur Vosk. Idéal pour les machines modestes (pas de GPU nécessaire, faible empreinte mémoire). Alternative à Whisper.cpp pour les Raspberry Pi ou machines entrée de gamme. ## Critères d'acceptation - [ ] `VoskEngine` implémente `SttEngine` - [ ] Intégration via bindings Rust de la lib Vosk (`vosk` crate) ou appel subprocess - [ ] Téléchargement automatique du modèle Vosk si absent : - Chemin : `~/.local/share/fractal-plus/models/vosk-<lang>/` - Modèles disponibles listés dans la config (URLs configurables) - Langue par défaut : `fr` ou détectée depuis les paramètres système - [ ] `health_check()` : vérifie que le modèle pour la langue configurée est présent - [ ] `supported_languages()` : liste des langues dont le modèle est téléchargé localement - [ ] Transcription en streaming possible (segment par segment) pour de l'audio long ## Notes techniques - Dépend de #73 (SttEngine trait) - Vosk ne produit pas de timestamps de confiance aussi précis que Whisper ; adapter `Confidence` en conséquence - Les modèles Vosk sont des dossiers (pas de fichier unique) — gérer le téléchargement + extraction d'archive
Author
Owner

Doublon de #6 (VoskEngine implémenté via vosk.rs sur main). Fermeture.

Doublon de #6 (VoskEngine implémenté via `vosk.rs` sur main). Fermeture.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/my-fractal#77
No description provided.