Modern English ↔ Maasai translation and speech transcription showcase for language preservation, accessibility, and low-resource AI research.
# Maasai Language Showcase
## English ↔ Maasai Translation + Maasai Speech Transcription
A modern English ↔ Maasai translation and Maasai speech transcription showcase built for language preservation, accessibility, and low-resource AI research.
---
## Features
- **English → Maasai translation** — powered by a QLoRA fine-tuned model
- **Maasai → English translation** — bidirectional support
- **Maasai speech transcription** — via Microsoft Paza ASR
- **Speech → Translation pipeline** — transcribe then translate
- **Cultural terminology preservation** — 90+ term glossary with protected terms
- **Sub-tribe awareness** — covers Ldikiri, Laikipiak, Samburu (Lmomonyot), Ilkisongo, Ilpurko, and more
## Architecture
| Component | Model | Purpose |
|-----------|-------|---------|
| Translation | `Qwen/Qwen2.5-3B-Instruct` (QLoRA) | English ↔ Maasai text translation and Maa composition |
| Speech | `microsoft/paza-whisper-large-v3-turbo` | Maasai speech transcription |
| UI | Gradio | Interactive Hugging Face Space |
## Quick Start
```bash
# Setup
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# Generate training data
python scripts/generate_cultural_pairs.py
python scripts/prepare_data.py
# Train
bash training/run_train.sh
# Evaluate
python scripts/evaluate_mt.py
# Run Space locally
python space/app.py
```
## Publish to Hugging Face
```bash
# Optional: set token explicitly (recommended)
export HF_TOKEN=hf_xxx
# Preview publish plan (no uploads)
python scripts/publish_to_hf.py
# Export refreshed publish bundles locally
python scripts/publish_to_hf.py --export-dir dist/hf_publish --create-model-repo
# Execute publish for Space + dataset + model repo scaffold
python scripts/publish_to_hf.py --execute --create-model-repo
```
The publisher uploads:
- Space bundle from `space/` + glossary data
- Dataset bundle from `data/final_v3/` + dataset card
- Model artifacts from `outputs/maasai-en-mt-qlora` when real …