# Synthetic Data for Low-Resource Swahili Language Sentiment Analysis
This repository contains the code and dataset for our paper on **"Synthetic Data for Low-Resource Swahili Language Sentiment Analysis: A Controllable Pipeline with LLM Judging"**.
## Abstract
Swahili, a vital African lingua franca, is under-resourced in Natural Language Processing (NLP), hindering technological progress for its over 100 million speakers. To help close this gap, we introduce a controllable synthetic data pipeline that generates culturally grounded Swahili text and scores it with LLM-as-a-judge across linguistic quality, cultural relevance, sentiment alignment, and instruction adherence. The pipeline defines fine-grained generation criteria, produces diverse candidates with multiple LLMs, and filters aggressively to retain only high-quality samples. Using the resulting corpus, we continue fine-tuning multilingual sentiment classifiers and observe consistent macro–F1 improvements on AfriSenti–Swahili over zero-shot baselines. This demonstrates that quality-controlled synthetic supervision can reliably transfer sentiment capability to a low-resource language.
## Authors
**Samuel Gyamfi, Alfred Kondoro, Yankı Öztürk, Richard H. Schreiber, Vadim Borisov**
*tabularis.ai*
## Resources
- **Dataset**: tabularisai/swahili-sentime…
- **Model**: huggingface.co
## Repository Contents
- `src/proposed_pipeline/pipeline.py` - The synthetic data generation script with LLM-as-a-judge pipeline
- `requirements.txt` - Python dependencies
## Installation
### Prerequisites
- Python 3.8 or higher
- OpenRouter API key (get one at openrouter.ai)
### Setup
1. Clone this repository:
```bash
git clone github.com
cd Synthetic-Data-Generation-Pipeline-for-Low-Resource-Swahili-Sentiment-Analysis
` …