Spaces:
Sleeping
A newer version of the Gradio SDK is available: 6.14.0
title: Meta MMS Speech AI
emoji: 🎙️
colorFrom: blue
colorTo: green
sdk: gradio
sdk_version: 4.3.0
python_version: '3.10'
app_file: app.py
pinned: false
license: cc-by-nc-4.0
models:
- facebook/mms-1b-all
- facebook/mms-tts-yor
- facebook/mms-tts-eng
- facebook/mms-tts-beh
- facebook/mms-tts-ddn
tags:
- ASR
- TTS
- Speech
- Audio
- Multilingual
- MMS
🎙️ Meta MMS Speech AI - Gradio Interface
Une interface Gradio simple et élégante pour:
- ASR (Automatic Speech Recognition): Convertir l'audio en texte (100+ langues)
- TTS (Text-to-Speech): Convertir le texte en audio (8 langues)
Utilise les modèles Meta MMS:
facebook/mms-1b-allpour l'ASRfacebook/mms-tts-*pour le TTS
🌐 Déploiement en ligne
Accès direct: Hugging Face Spaces
🚀 Installation locale
Prérequis
- Python 3.10+
- (Optionnel) CUDA 11.8+ pour GPU
Installation
# Clone ou télécharge le repo
git clone <url>
cd mms-speech
# Crée un environnement virtuel
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
# Installe les dépendances
pip install -r requirements.txt
Lancement
python app.py
L'interface Gradio s'ouvrira automatiquement sur http://localhost:7860
📱 Interface utilisateur
Onglet 1: 🔊 ASR (Audio → Texte)
- Enregistre ou upload un fichier audio
- Choisis la langue
- Clique "Transcrire"
- Récupère le texte transcrit
Langues supportées:
- English, French, Spanish, German, Portuguese, Arabic, Hindi, Chinese, Japanese, et 90+ autres
Onglet 2: 📢 TTS (Texte → Audio)
- Entre du texte
- Choisis la langue
- Clique "Générer l'audio"
- Écoute ou télécharge l'audio généré
Langues TTS:
- 🇧🇯 Biali (beh)
- 🇧🇯 Baatombu (bba)
- 🇧🇯 Dendi (ddn)
- 🇬🇭 Éwé (ewe)
- 🇧🇯 Mina (gej)
- 🇧🇯 Ditammari (tbz)
- 🇳🇬 Yoruba (yor)
- 🇧🇯 Fon (fon)
- 🇬🇧 English (eng)
Onglet 3: ℹ️ À propos
Informations sur les modèles et ressources
📊 Modèles utilisés
ASR: facebook/mms-1b-all
- Architecture: wav2vec2
- Taille: 964.8M parameters
- Langues: 100+ (ISO 639-3)
- Input: Audio 16kHz mono
- Output: Texte transcrit
TTS: facebook/mms-tts-{lang}
- Architecture: VITS
- Taille: ~5-10M parameters par langue
- Langues: 8
- Input: Texte (max 1000 chars)
- Output: Audio WAV 22050Hz
💡 Utilisation
Exemple ASR
- Clique sur le micro ou "Upload file"
- Enregistre ou uploader ton audio
- Sélectionne la langue
- Clique "Transcrire"
Exemple TTS
- Écris "Àbọ̀ wa" (hello en Yoruba)
- Sélectionne "Yoruba (yor)"
- Clique "Générer l'audio"
- Écoute le résultat!
🔧 Développement
Installer les dépendances dev
pip install -r requirements-dev.txt
Tests
pytest test_api.py -v
Linting
black app.py
flake8 app.py
🌐 Déploiement sur Hugging Face Spaces
1. Créer un Space
- Va sur https://huggingface.co/new-space
- Choisis "Gradio" comme SDK
- Sélectionne "Blank" comme template
2. Cloner le Space
git clone https://huggingface.co/spaces/<username>/<space-name>
cd <space-name>
3. Copier les fichiers
cp app.py requirements.txt README.md .
4. Push vers Hugging Face
git add .
git commit -m "Add MMS Speech AI"
git push
5. Attendre le déploiement
- HF va installer les dépendances (2-5 min)
- Télécharger les modèles (5-15 min)
- Lancer l'app automatiquement
URL du Space: https://huggingface.co/spaces/<username>/<space-name>
⚙️ Configuration
SAMPLE_RATE = 16000 # Taux ASR
MAX_AUDIO_LENGTH = 30 # Max 30 sec
MAX_TEXT_LENGTH = 1000 # Max 1000 chars
📈 Performance
| Action | Temps |
|---|---|
| Première requête ASR | 2-5 min (chargement) |
| Requêtes ASR suivantes | 1-10 sec |
| Première requête TTS | 30-60 sec (chargement) |
| Requêtes TTS suivantes | 1-5 sec |
🐛 Troubleshooting
Q: Les modèles prennent trop de temps à charger A: C'est normal! Les modèles sont volumineux. La première requête charge le modèle (2-5 min), puis ça devient rapide.
Q: "CUDA out of memory"
A: Réduis MAX_AUDIO_LENGTH ou MAX_TEXT_LENGTH, ou utilise CPU.
Q: Je ne vois pas mon audio après avoir enregistré A: Attends que le traitement soit terminé. Gradio affichera le résultat automatiquement.
Q: L'audio généré est muet A: Vérifie que tu as écrit du texte et choisi une langue correcte.
📚 Ressources
⚖️ Licence
CC-BY-NC-4.0 (même que les modèles Meta MMS)
👨💻 Auteur
Créé avec ❤️ pour explorer la synthèse et reconnaissance vocale multilingue.
Happy speaking! 🎙️