[M1] Moteur OpenAiWhisperEngine : transcription cloud (OpenAI API / Groq) #75

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

Contexte

Moteur STT cloud utilisant l'API OpenAI Whisper (compatible avec Groq, etc.). Utile sur machines sans GPU ou pour les modèles large.

Critères d'acceptation

  • OpenAiWhisperEngine implémente SttEngine
  • Appel HTTP vers POST /v1/audio/transcriptions avec le fichier WAV en multipart
  • base_url configurable dans config.toml pour compatibilité Groq (https://api.groq.com/openai/v1) et autres endpoints compatibles
  • Clé API (api_key) lue depuis config.toml [stt] ou variable d'environnement OPENAI_API_KEY
  • Modèle configurable : whisper-1 par défaut
  • health_check() : vérification que la clé API est configurée + ping de l'endpoint
  • Gestion des erreurs HTTP (401, 429 rate-limit, 5xx) avec messages clairs à l'utilisateur

Notes techniques

  • Dépend de #73 (SttEngine trait)
  • Dépendance : reqwest (déjà dans matrix-rust-sdk)
  • La clé API ne doit jamais apparaître dans les logs
  • Timeout configurable (défaut : 30s)
## Contexte Moteur STT cloud utilisant l'API OpenAI Whisper (compatible avec Groq, etc.). Utile sur machines sans GPU ou pour les modèles large. ## Critères d'acceptation - [ ] `OpenAiWhisperEngine` implémente `SttEngine` - [ ] Appel HTTP vers `POST /v1/audio/transcriptions` avec le fichier WAV en multipart - [ ] `base_url` configurable dans `config.toml` pour compatibilité Groq (`https://api.groq.com/openai/v1`) et autres endpoints compatibles - [ ] Clé API (`api_key`) lue depuis `config.toml [stt]` ou variable d'environnement `OPENAI_API_KEY` - [ ] Modèle configurable : `whisper-1` par défaut - [ ] `health_check()` : vérification que la clé API est configurée + ping de l'endpoint - [ ] Gestion des erreurs HTTP (401, 429 rate-limit, 5xx) avec messages clairs à l'utilisateur ## Notes techniques - Dépend de #73 (SttEngine trait) - Dépendance : `reqwest` (déjà dans matrix-rust-sdk) - La clé API ne doit jamais apparaître dans les logs - Timeout configurable (défaut : 30s)
Author
Owner

Doublon de #6 (OpenAiWhisperEngine implémenté via openai_whisper.rs sur main). Fermeture.

Doublon de #6 (OpenAiWhisperEngine implémenté via `openai_whisper.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#75
No description provided.