Projects/ Multilingual and educational AI
AfroXLMR NER
Named entity recognition for 21 African languages
- Year
- 2023
- Role
- Co-author — application development and evaluation
- Team
- Alain Ogou
- Domain
- Low-resource NLP · Named entity recognition
A Python application for extracting named entities from text and PDF documents across 21 African languages using a Masakhane AfroXLMR NER model. The repository credits two authors, Alain Ogou and myself. The underlying model is the Masakhane research group's; the contribution here is the application, the document handling, and the evaluation work around it.
Problem
Named entity recognition is well served for major languages and largely unavailable as usable tooling for African ones.
My contribution
A Python application that runs entity extraction over text and PDF input for 21 African languages, built on the Masakhane AfroXLMR NER model.
Role: Co-author — application development and evaluation — with Alain Ogou.
Method
The application wraps masakhane/afroxlmr-large-ner-masakhaner-1.0_2.0, a model pre-trained by the Masakhane research group on MasakhaNER data. Input is accepted as plain text or PDF, extracted and segmented before inference, and returned as structured entity spans with per-entity type highlighting for inspection. Coverage spans Amharic, Bambara, Ghomálá', Ewe, Fon, Hausa, Igbo, Kinyarwanda, Luganda, Dholuo, Mossi, Chichewa, Nigerian Pidgin, Shona, Kiswahili, Setswana, Twi, Wolof, isiXhosa, Yorùbá, and isiZulu.
Evaluation
No independent evaluation of the underlying model was performed for this application; its quality is that of the published Masakhane model and varies substantially by language according to how much annotated data each has. Application-level checking covered input handling, language selection, and output structure. Related shared-task work on Wolof named entity recognition is recorded under Recognition below.
Outcomes
- Working application covering 21 African languages
- Text and PDF input handling with structured entity output
- Public source code
Limitations
Performance varies widely across the supported languages and tracks the size of each language's training data. The application does not train or fine-tune the model it uses. There is no per-language error analysis, which is the main thing that would make the tool trustworthy for real use.
Wrapping a model is the easy part. What the tool actually needs — and does not have — is documentation of where each language fails and why, because an averaged score across 21 languages hides exactly the information a user needs.
Screenshots

Recognition
Second place — final leaderboard
PAS Challenge 2023 — MasakhaNER appliqué au Wolof · 2023
Team BYLYAI placed second on the final private leaderboard with a score of 0.67389 across 45 entries.

Related work
- GandaLab / SymLab
An interactive mathematics and science learning environment
- Hakili
A French-language digital literacy platform
- PremiseGuard
Detecting Unsupported Load-Bearing Claims in Mathematical Proofs