Logo Lanfrica

SelmahT/psa-dholuo-mt

Domaine:

natural language processing

Type de record:

modelsoftware
Créateur:
Sel
Hôte:
# Sauti — Kenyan Low-Resource Language Translator A neural machine translation system for three underrepresented Kenyan languages — **Ekegusii**, **Dholuo**, and **Somali** — built by fine-tuning multilingual base models (NLLB-200 and mT5) on a cleaned corpus of public service announcements (PSAs). Get our live deployed app here. ## Table of Contents - Project Overview - Team - Week 1 — Data Sourcing & Collection - Scope Decisions - Sources - Collection & Early Cleaning Challenges - Documentation, Dataset & Pipeline Access - Week 2 — Preprocessing & EDA - Dataset Architecture Decision - Ekegusii Reintroduced - Preprocessing Pipeline - EDA - Documentation, Notebooks & Report Access - Week 2 Outcome - Week 3 — Model Training - Model Assignments - Training Requirements - Model Adaptation Approaches - Training Documentation & Results Access - Training Notebooks - Final Trained Models - Week 4 — Evaluation & Deployment - Model Performance - Native-Speaker Validation - Known Issues & Limitations - Institutional Glossary - Project Structure - Running Locally - Deployment - Deployment Architecture - Deployment Workflow - Alternative Deployment Options - Hugging Face Spaces - Modal GPU Deployment - Docker Deployment - Tech Stack - Deployment Challenges & Solutions - Data Pipeline Summary (End-to-End) - Closing Remarks - Future Work ## Project Overview Most large multilingual translation models have little or no prior exposure to Ekegusii, Dholuo, or Somali — three languages spoken across Kenya that are underrepresented in NLP training data. This project fine-tunes NLLB-200 and mT5 checkpoints on parallel PSA text (health, civic, education, agriculture, and security announcements) to produce usable translation between these languages, English, and Kiswahili. The end product is an interactive Streamlit app (`app.py`) that lets a user: - Translate text in either direction for each language - Auto-detect input language (heuristic, not a trained classifier) - Batch- …