Spaces:
Sleeping
Sleeping
File size: 5,178 Bytes
941b080 077b226 941b080 b2105a3 941b080 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 | ---
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-all` pour l'ASR
- `facebook/mms-tts-*` pour le TTS
## 🌐 Déploiement en ligne
**Accès direct:** [Hugging Face Spaces](https://huggingface.co/spaces)
## 🚀 Installation locale
### Prérequis
- Python 3.10+
- (Optionnel) CUDA 11.8+ pour GPU
### Installation
```bash
# 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
```bash
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
1. Clique sur le micro ou "Upload file"
2. Enregistre ou uploader ton audio
3. Sélectionne la langue
4. Clique "Transcrire"
### Exemple TTS
1. Écris "Àbọ̀ wa" (hello en Yoruba)
2. Sélectionne "Yoruba (yor)"
3. Clique "Générer l'audio"
4. Écoute le résultat!
## 🔧 Développement
### Installer les dépendances dev
```bash
pip install -r requirements-dev.txt
```
### Tests
```bash
pytest test_api.py -v
```
### Linting
```bash
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
```bash
git clone https://huggingface.co/spaces/<username>/<space-name>
cd <space-name>
```
### 3. Copier les fichiers
```bash
cp app.py requirements.txt README.md .
```
### 4. Push vers Hugging Face
```bash
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
```python
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
- [Meta MMS Paper](https://arxiv.org/abs/2305.13516)
- [facebook/mms-1b-all](https://huggingface.co/facebook/mms-1b-all)
- [facebook/mms-tts](https://huggingface.co/facebook/mms-tts)
- [Gradio Documentation](https://www.gradio.app/)
- [Hugging Face Spaces](https://huggingface.co/spaces)
## ⚖️ 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! 🎙️**
|