# Sukuma Voices ποΈ
**The first publicly available speech corpus for Sukuma (Kisukuma)**, a Bantu language spoken by approximately 10 million people in northern Tanzania.
---
## π Dataset Overview
| Metric | Value |
|--------|-------|
| Total Samples | 6,871 |
| Total Duration | 19.56 hours |
| Average Duration | 10.25 Β± 4.15 seconds |
| Duration Range | 1.40 - 30.36 seconds |
| Total Words | 140,325 |
| Unique Vocabulary | 21,366 |
| Average Words/Sample | 20.4 |
| Speaking Rate | 121.6 WPM |
## π― Supported Tasks
- **Automatic Speech Recognition (ASR)** β Converting Sukuma speech to text
- **Text-to-Speech (TTS)** β Synthesizing natural-sounding Sukuma speech
- **Cross-lingual Speech Processing** β Research between Swahili and Sukuma
## π Quick Start
### Installation
```bash
pip install datasets transformers librosa
```
### Load the Dataset
```python
from datasets import load_dataset
# Load the dataset from HuggingFace
dataset = load_dataset("sartifyllc/Sukuma-Voices", split='train')
# View a sample
print(dataset[0])
```
### ASR Inference Example
```python
from transformers import WhisperProcessor, WhisperForConditionalGeneration
import torch
# Load model and processor
model = WhisperForConditionalGeneration.from_pretrained("sartifyllc/sukuma-voices-asr")
processor = WhisperProcessor.from_pretrained("sartifyllc/sukuma-voices-asr")
# Load and preprocess audio
audio_array = ... # Your audio as numpy array at 16kHz
input_features = processor(
audio_array,
sampling_rate=16000,
return_tensors="pt"
).input_features
# Generate transcription
with torch.no_grad():
predicted_ids = model.generate(input_features)
# Decode
transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)[0]
print(transcription)
```
## π Repository Structure
```
sukuma-voices/
βββ README.md
βββ LICENSE
βββ scripts/
βββ train_asr.py
βββ train_tts.py
```
## π Baseline Results
### ASR Performance (Whisper Large V3)
| Metric | Original Speech | Synthetic β¦