Linguistic Decolonization Analysis in South African Languages when it comes to LLMs.
# Sawubona
> **Sawubona** — "I see you" (isiZulu). The question this repo asks: does a small edge
> model genuinely *see* each language's speakers and their real politics, or collapse them
> into an English-anchored default?
**Linguistic Decolonization: conditioned political bias of edge LLMs across South Africa's languages.**
Ask a small language model about South African politics in English and in isiZulu, and it
may answer differently. Prompted in English, frontier models tend libertarian-left; in
languages they saw little of during training, the same model drifts toward more
authoritarian framings — plausibly via transfer learning from English-centric data. This
repository **measures that gap**: across South Africa's official languages, how far does a
small edge LLM's elicited political position diverge from its speakers', and is that
divergence explained by the model's per-language **capability** or its **size**?
Companion to the proposal `LinguisticDecolonization.pdf` (Schutera & Dobbelstein, DHBW
Ravensburg). The full design lives in
`docs` / the approved plan. Inference is **local, edge-scale (≤ ~6 GB GPU),
via Ollama (GGUF)** on a single Ubuntu GPU machine.
## Deliverables
1. A **public per-language map** of where edge LLMs' politics diverge from people's.
2. A **capability-informed explanation** of that divergence (AfroBench-scored).
3. **Evidence on whether divergence is explained by model size.**
## Pipeline
Four steps, per language, mirroring the proposal:
| Step | Script | What it does |
|------|--------|--------------|
| 1. Run the survey on the models | `scripts/02_run_survey.py` | Administer the Afrobarometer R9 SA political items to each edge model, prompted in the target language; sample *K* times → model answer distribution. |
| 2. Measure language capability | `scripts/03_run_capability.py` | Score each model's per-language capability with AfroBench (+ isiNdebele/Tshivenda extension). |
| 3. Compare model to people | `scripts/04_compute …