Update README.md
Browse files
README.md
CHANGED
@@ -40,11 +40,11 @@ license: cc-by-nc-sa-4.0
|
|
40 |
|
41 |
# MALIBA-AI Bambara TTS: Revolutionary Speech Synthesis for Bambara Language 🇲🇱
|
42 |
|
43 |
-
MALIBA-AI Bambara TTS represents a groundbreaking advancement in African language technology, offering
|
44 |
|
45 |
## Bridging the Digital Language Divide
|
46 |
|
47 |
-
Bambara (Bamanankan) is the most widely spoken language in Mali and serves as a lingua franca across West Africa. Despite its significance, Bambara has been severely underrepresented in speech technology. MALIBA-AI Bambara TTS directly addresses this critical gap, making digital speech interfaces accessible to Bambara speakers for the first time and advancing digital inclusion across the region.
|
48 |
|
49 |
## Table of Contents
|
50 |
- [Technical Specifications](#technical-specifications)
|
@@ -84,50 +84,19 @@ Bambara (Bamanankan) is the most widely spoken language in Mali and serves as a
|
|
84 |
MALIBA-AI Bambara TTS features **10 distinct authentic Bambara speakers**, each with unique characteristics:
|
85 |
|
86 |
### Available Speakers
|
87 |
-
- **Adama
|
88 |
-
- **Moussa
|
89 |
-
- **Bourama
|
90 |
-
- **Modibo
|
91 |
-
- **Seydou
|
92 |
-
- **Amadou
|
93 |
-
- **Bakary
|
94 |
-
- **Ngolo
|
95 |
-
- **Ibrahima
|
96 |
-
- **Amara
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
- **Regional Representation**: Voices represent different Bambara-speaking regions
|
101 |
-
- **Cultural Authenticity**: Native speaker recordings ensure authentic pronunciation
|
102 |
-
- **Consistent Quality**: Standardized training process across all speakers
|
103 |
-
|
104 |
-
## Transforming Access to Technology
|
105 |
-
|
106 |
-
MALIBA-AI Bambara TTS enables numerous applications previously unavailable to Bambara speakers:
|
107 |
-
|
108 |
-
### Educational Applications
|
109 |
-
- **Language Learning**: Pronunciation guides and interactive lessons
|
110 |
-
- **Literacy Programs**: Audio support for reading and writing instruction
|
111 |
-
- **Digital Textbooks**: Voice narration of educational content
|
112 |
-
- **Assessment Tools**: Audio-based testing and evaluation
|
113 |
-
|
114 |
-
### Accessibility & Inclusion
|
115 |
-
- **Screen Readers**: Making digital content accessible to visually impaired users
|
116 |
-
- **Communication Aids**: Assistive technology for speech impairments
|
117 |
-
- **Mobile Accessibility**: Voice interfaces for users with limited literacy
|
118 |
-
- **Elderly Support**: Audio interfaces for older adults less familiar with text
|
119 |
-
|
120 |
-
### Cultural & Community Applications
|
121 |
-
- **Oral Tradition Preservation**: Digital narration of stories and cultural heritage
|
122 |
-
- **Religious Content**: Audio versions of religious texts and prayers
|
123 |
-
- **Local Media**: Voice-over for radio, podcasts, and digital content
|
124 |
-
- **Public Services**: Automated announcements and information systems
|
125 |
-
|
126 |
-
### Technology Integration
|
127 |
-
- **Voice Assistants**: Bambara-speaking AI assistants and chatbots
|
128 |
-
- **Mobile Apps**: Voice responses and audio feedback in native language
|
129 |
-
- **Smart Devices**: IoT devices with Bambara voice interfaces
|
130 |
-
- **Gaming**: Character voices and narration in Bambara
|
131 |
|
132 |
## Installation
|
133 |
|
@@ -162,7 +131,7 @@ import soundfile as sf
|
|
162 |
tts = BambaraTTSInference()
|
163 |
|
164 |
# Generate speech from Bambara text
|
165 |
-
text = "Aw ni ce. I ka kɛnɛ wa?"
|
166 |
audio = tts.generate_speech(text, speaker_id=Speakers.Bourama)
|
167 |
|
168 |
# Save the audio
|
@@ -188,16 +157,33 @@ audio = tts.generate_speech(
|
|
188 |
### Multi-Speaker Examples
|
189 |
|
190 |
```python
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
```
|
202 |
|
203 |
## Performance & Quality
|
@@ -208,19 +194,8 @@ for lesson, speaker in lessons:
|
|
208 |
- **Intelligibility**: 95%+ word recognition accuracy
|
209 |
- **Pronunciation Accuracy**: Native-level Bambara pronunciation
|
210 |
|
211 |
-
### Performance Characteristics
|
212 |
-
- **Real-time Factor**: 0.3x (generates 1 second of audio in 0.3 seconds on GPU)
|
213 |
-
- **Memory Usage**: ~4GB RAM recommended, 2GB minimum
|
214 |
-
- **GPU Acceleration**: 10x faster generation with CUDA
|
215 |
-
- **Inference Speed**: ~2-5 seconds for typical sentences
|
216 |
-
- **Audio Quality**: Professional broadcast quality (16kHz, 16-bit)
|
217 |
|
218 |
-
|
219 |
-
- **GPU**: NVIDIA GPUs with CUDA support (recommended)
|
220 |
-
- **CPU**: Intel/AMD processors (functional but slower)
|
221 |
-
- **Memory**: 4GB+ RAM recommended
|
222 |
-
- **Storage**: ~2GB for model files
|
223 |
-
- **OS**: Linux, Windows, macOS
|
224 |
|
225 |
## Limitations
|
226 |
|
@@ -229,43 +204,13 @@ for lesson, speaker in lessons:
|
|
229 |
#### Language Mixing (Code-Switching)
|
230 |
- **French-Bambara Mixing**: The model performs poorly when French words or phrases are mixed within Bambara text
|
231 |
- **Recommendation**: Use pure Bambara text for optimal results
|
232 |
-
- **Workaround**: Separate French and Bambara content into different synthesis calls
|
233 |
-
|
234 |
-
```python
|
235 |
-
# ❌ Poor results - mixed languages
|
236 |
-
mixed_text = "I ni ce, comment allez-vous?"
|
237 |
|
238 |
-
# ✅ Better approach - separate languages
|
239 |
-
bambara_text = "I ni ce" # "Hello"
|
240 |
-
# Use separate French TTS for French parts
|
241 |
-
```
|
242 |
|
243 |
#### Numeric Content
|
244 |
- **Digital Numbers**: Poor performance with Arabic numerals (1, 2, 3, etc.)
|
245 |
- **Written Numbers**: Good performance with Bambara number words
|
246 |
- **Recommendation**: Convert digits to written Bambara number words
|
247 |
|
248 |
-
```python
|
249 |
-
# ❌ Poor results - digital numbers
|
250 |
-
poor_text = "N ye bagan 25 san" # "I bought 25 bags"
|
251 |
-
|
252 |
-
# ✅ Better results - written numbers
|
253 |
-
good_text = "N ye bagan mugan ni duuru ye san" # "I bought twenty-five bags"
|
254 |
-
```
|
255 |
-
|
256 |
-
#### Other Limitations
|
257 |
-
- **Punctuation Sensitivity**: Complex punctuation may affect prosody
|
258 |
-
- **Very Long Texts**: Best results with sentences under 100 words
|
259 |
-
- **Technical Terms**: Limited vocabulary for highly technical or modern terms
|
260 |
-
- **Regional Dialects**: Optimized for standard Bambara; dialectal variations may vary in quality
|
261 |
-
|
262 |
-
### Optimization Tips
|
263 |
-
- Use standard Bambara orthography as defined by the Academy of African Languages
|
264 |
-
- Write out numbers and dates in Bambara words
|
265 |
-
- Keep sentences to reasonable lengths (10-50 words)
|
266 |
-
- Use proper Bambara punctuation conventions
|
267 |
-
- Test different speakers for your specific content type
|
268 |
-
|
269 |
## The MALIBA-AI Impact
|
270 |
|
271 |
MALIBA-AI Bambara TTS is part of MALIBA-AI's broader mission: **"No Malian Left Behind by Technological Advances."** This initiative is actively transforming Mali's digital landscape by:
|
@@ -273,8 +218,7 @@ MALIBA-AI Bambara TTS is part of MALIBA-AI's broader mission: **"No Malian Left
|
|
273 |
### Digital Inclusion
|
274 |
1. **Breaking Language Barriers**: Providing technology in languages that Malians actually speak
|
275 |
2. **Literacy Support**: Audio interfaces for users with varying literacy levels
|
276 |
-
3. **
|
277 |
-
4. **Cultural Preservation**: Digitizing and preserving Mali's rich oral traditions in Bambara
|
278 |
|
279 |
### Technological Empowerment
|
280 |
1. **Local Innovation**: Enabling Malian developers to build voice-based applications
|
@@ -299,23 +243,14 @@ MALIBA-AI is committed to continuous improvement with planned developments:
|
|
299 |
- **Voice Cloning**: Zero-shot voice cloning capabilities for new speakers
|
300 |
- **Streaming Audio**: Real-time streaming synthesis for interactive applications
|
301 |
|
302 |
-
### Language Expansion
|
303 |
-
- **Additional Malian Languages**: Integration with MALIBA-AI's multi-language TTS
|
304 |
-
- **Dialect Support**: Specialized models for regional Bambara variants
|
305 |
-
- **Cross-Lingual Features**: Better support for multilingual content
|
306 |
|
307 |
-
### Community Integration
|
308 |
-
- **Speaker Expansion**: Additional authentic Bambara speakers
|
309 |
-
- **Quality Improvements**: Continuous model refinement based on community feedback
|
310 |
-
- **Application Development**: Reference implementations for common use cases
|
311 |
-
- **Training Resources**: Educational materials for developers and researchers
|
312 |
|
313 |
## References
|
314 |
|
315 |
```bibtex
|
316 |
@software{maliba_ai_bambara_tts_2025,
|
317 |
-
title={MALIBA-AI Bambara Text-to-Speech:
|
318 |
-
author={
|
319 |
year={2025},
|
320 |
publisher={HuggingFace},
|
321 |
url={https://huggingface.co/MALIBA-AI/bambara-tts},
|
@@ -332,13 +267,6 @@ MALIBA-AI is committed to continuous improvement with planned developments:
|
|
332 |
url={https://arxiv.org/abs/2503.01710}
|
333 |
}
|
334 |
|
335 |
-
@article{bamana_language_2024,
|
336 |
-
title={Bambara Language and Digital Inclusion in Mali},
|
337 |
-
author={MALIBA-AI Research Team},
|
338 |
-
journal={African Language Technology Review},
|
339 |
-
year={2024},
|
340 |
-
note={In preparation}
|
341 |
-
}
|
342 |
```
|
343 |
|
344 |
## License
|
@@ -353,7 +281,7 @@ This project is licensed under **Creative Commons Attribution-NonCommercial-Shar
|
|
353 |
- **Attribution Required**: Must credit MALIBA-AI and Spark-TTS
|
354 |
|
355 |
### Commercial Usage
|
356 |
-
For commercial licensing options, contact:
|
357 |
|
358 |
### Attribution Requirements
|
359 |
```
|
@@ -377,7 +305,7 @@ MALIBA-AI Bambara TTS is part of the broader MALIBA-AI initiative with the missi
|
|
377 |
### How to Contribute
|
378 |
- **GitHub**: [MALIBA-AI/bambara-tts](https://github.com/MALIBA-AI/bambara-tts)
|
379 |
- **HuggingFace**: [MALIBA-AI](https://huggingface.co/MALIBA-AI)
|
380 |
-
- **Email**:
|
381 |
- **Community**: Join discussions on model improvements and applications
|
382 |
|
383 |
### Contribution Guidelines
|
@@ -390,13 +318,11 @@ MALIBA-AI Bambara TTS is part of the broader MALIBA-AI initiative with the missi
|
|
390 |
|
391 |
**MALIBA-AI: Empowering Mali's Future Through Community-Driven AI Innovation**
|
392 |
|
393 |
-
*"
|
394 |
-
*(MALIBA-AI works to preserve Bambara language in the world!)*
|
395 |
-
|
396 |
---
|
397 |
|
398 |
**Contact Information:**
|
399 |
-
- Website: [maliba-ai.
|
400 |
-
- Email:
|
401 |
- GitHub: [MALIBA-AI](https://github.com/MALIBA-AI)
|
402 |
- HuggingFace: [MALIBA-AI](https://huggingface.co/MALIBA-AI)
|
|
|
40 |
|
41 |
# MALIBA-AI Bambara TTS: Revolutionary Speech Synthesis for Bambara Language 🇲🇱
|
42 |
|
43 |
+
MALIBA-AI Bambara TTS represents a groundbreaking advancement in African language technology, offering **open-source, high-quality text-to-speech synthesis** specifically designed for the Bambara language. Built on cutting-edge Spark-TTS architecture, this model brings professional-grade voice synthesis to a language spoken by over 14 million people across West Africa.
|
44 |
|
45 |
## Bridging the Digital Language Divide
|
46 |
|
47 |
+
Bambara (Bamanankan) is the most widely spoken language in Mali and serves as a lingua franca across West Africa. Despite its significance, Bambara has been severely underrepresented in speech technology. MALIBA-AI Bambara TTS directly addresses this critical gap, making digital speech interfaces accessible to Bambara speakers for the first time open-source and advancing digital inclusion across the region.
|
48 |
|
49 |
## Table of Contents
|
50 |
- [Technical Specifications](#technical-specifications)
|
|
|
84 |
MALIBA-AI Bambara TTS features **10 distinct authentic Bambara speakers**, each with unique characteristics:
|
85 |
|
86 |
### Available Speakers
|
87 |
+
- **Adama**
|
88 |
+
- **Moussa**
|
89 |
+
- **Bourama**
|
90 |
+
- **Modibo**
|
91 |
+
- **Seydou**
|
92 |
+
- **Amadou**
|
93 |
+
- **Bakary**
|
94 |
+
- **Ngolo**
|
95 |
+
- **Ibrahima**
|
96 |
+
- **Amara**
|
97 |
+
|
98 |
+
**Note**: try them and choose your preference for your use case.
|
99 |
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
|
101 |
## Installation
|
102 |
|
|
|
131 |
tts = BambaraTTSInference()
|
132 |
|
133 |
# Generate speech from Bambara text
|
134 |
+
text = "Aw ni ce. I ka kɛnɛ wa?"
|
135 |
audio = tts.generate_speech(text, speaker_id=Speakers.Bourama)
|
136 |
|
137 |
# Save the audio
|
|
|
157 |
### Multi-Speaker Examples
|
158 |
|
159 |
```python
|
160 |
+
from maliba_ai.config.settings import Speakers
|
161 |
+
|
162 |
+
text = "Aw ni ce. Ne tɔgɔ ye Adama. Awɔ, ne ye maliden de ye. Aw Sanbɛ Sanbɛ. San min tɛ ɲinan ye, an bɛɛ ka jɛ ka o seli ɲɔgɔn fɛ, hɛɛrɛ ni lafiya la. Ala ka Mali suma. Ala ka Mali yiriwa. Ala ka Mali taa ɲɛ. Ala ka an ka seliw caya. Ala ka yafa an bɛɛ ma."
|
163 |
+
|
164 |
+
#let's try Adama
|
165 |
+
tts.generate_speech(
|
166 |
+
text = text,
|
167 |
+
speaker_id = Speakers.Adama,
|
168 |
+
output_filename = "adama.wav"
|
169 |
+
)
|
170 |
+
|
171 |
+
|
172 |
+
#let's try Seydou
|
173 |
+
tts.generate_speech(
|
174 |
+
text = text,
|
175 |
+
speaker_id = Speakers.Seydou,
|
176 |
+
output_filename = "seydou.wav"
|
177 |
+
)
|
178 |
+
|
179 |
+
|
180 |
+
# let's try Bourama
|
181 |
+
tts.generate_speech(
|
182 |
+
text = text,
|
183 |
+
speaker_id = Speakers.Bourama,
|
184 |
+
output_filename = "bourama.wav"
|
185 |
+
)
|
186 |
+
|
187 |
```
|
188 |
|
189 |
## Performance & Quality
|
|
|
194 |
- **Intelligibility**: 95%+ word recognition accuracy
|
195 |
- **Pronunciation Accuracy**: Native-level Bambara pronunciation
|
196 |
|
|
|
|
|
|
|
|
|
|
|
|
|
197 |
|
198 |
+
|
|
|
|
|
|
|
|
|
|
|
199 |
|
200 |
## Limitations
|
201 |
|
|
|
204 |
#### Language Mixing (Code-Switching)
|
205 |
- **French-Bambara Mixing**: The model performs poorly when French words or phrases are mixed within Bambara text
|
206 |
- **Recommendation**: Use pure Bambara text for optimal results
|
|
|
|
|
|
|
|
|
|
|
207 |
|
|
|
|
|
|
|
|
|
208 |
|
209 |
#### Numeric Content
|
210 |
- **Digital Numbers**: Poor performance with Arabic numerals (1, 2, 3, etc.)
|
211 |
- **Written Numbers**: Good performance with Bambara number words
|
212 |
- **Recommendation**: Convert digits to written Bambara number words
|
213 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
214 |
## The MALIBA-AI Impact
|
215 |
|
216 |
MALIBA-AI Bambara TTS is part of MALIBA-AI's broader mission: **"No Malian Left Behind by Technological Advances."** This initiative is actively transforming Mali's digital landscape by:
|
|
|
218 |
### Digital Inclusion
|
219 |
1. **Breaking Language Barriers**: Providing technology in languages that Malians actually speak
|
220 |
2. **Literacy Support**: Audio interfaces for users with varying literacy levels
|
221 |
+
3. **Cultural Preservation**: Digitizing and preserving Mali's rich oral traditions
|
|
|
222 |
|
223 |
### Technological Empowerment
|
224 |
1. **Local Innovation**: Enabling Malian developers to build voice-based applications
|
|
|
243 |
- **Voice Cloning**: Zero-shot voice cloning capabilities for new speakers
|
244 |
- **Streaming Audio**: Real-time streaming synthesis for interactive applications
|
245 |
|
|
|
|
|
|
|
|
|
246 |
|
|
|
|
|
|
|
|
|
|
|
247 |
|
248 |
## References
|
249 |
|
250 |
```bibtex
|
251 |
@software{maliba_ai_bambara_tts_2025,
|
252 |
+
title={MALIBA-AI Bambara Text-to-Speech: Open-Source Hight Quality TTS for Bambara Language},
|
253 |
+
author={Seydou DIALLO},
|
254 |
year={2025},
|
255 |
publisher={HuggingFace},
|
256 |
url={https://huggingface.co/MALIBA-AI/bambara-tts},
|
|
|
267 |
url={https://arxiv.org/abs/2503.01710}
|
268 |
}
|
269 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
270 |
```
|
271 |
|
272 |
## License
|
|
|
281 |
- **Attribution Required**: Must credit MALIBA-AI and Spark-TTS
|
282 |
|
283 |
### Commercial Usage
|
284 |
+
For commercial licensing options, contact: ml.maliba.ai@gmail.com
|
285 |
|
286 |
### Attribution Requirements
|
287 |
```
|
|
|
305 |
### How to Contribute
|
306 |
- **GitHub**: [MALIBA-AI/bambara-tts](https://github.com/MALIBA-AI/bambara-tts)
|
307 |
- **HuggingFace**: [MALIBA-AI](https://huggingface.co/MALIBA-AI)
|
308 |
+
- **Email**: ml.maliba.ai@gmail.com
|
309 |
- **Community**: Join discussions on model improvements and applications
|
310 |
|
311 |
### Contribution Guidelines
|
|
|
318 |
|
319 |
**MALIBA-AI: Empowering Mali's Future Through Community-Driven AI Innovation**
|
320 |
|
321 |
+
*"No Malian Language Left Behind"*
|
|
|
|
|
322 |
---
|
323 |
|
324 |
**Contact Information:**
|
325 |
+
- Website: [maliba-ai.org](https://maliba-ai.org)
|
326 |
+
- Email: ml.maliba.ai@gmail.com
|
327 |
- GitHub: [MALIBA-AI](https://github.com/MALIBA-AI)
|
328 |
- HuggingFace: [MALIBA-AI](https://huggingface.co/MALIBA-AI)
|