Downloads · 30 days
5
7% of all-time downloads
abnuel/yoruba_sent_boundary
yoruba_sent_boundary is a token classification model from abnuel. Use it when you need labels on individual words, such as names. The card lists the license as apache-2.0.
A BERT-based token classification model for sentence boundary detection in Yoruba text. This model identifies where sentences begin and end in continuous Yoruba text — a foundational step for tokenization, translation…
Downloads · 30 days
5
7% of all-time downloads
All-time downloads
71
Public
Parameters
177M
2.1 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors709 MB · 99%
From the Hugging Face model README
A BERT-based token classification model for sentence boundary detection in Yoruba text. This model identifies where sentences begin and end in continuous Yoruba text — a foundational step for tokenization, translation, summarization, and other NLP pipelines.
📄 Dataset: abnuel/yor_punctuation (1M–10M tokens) 🔗 Related: abnuel/yoruba_sent_boundary_2 — improved iteration
Sentence boundary detection (SBD) in Yoruba presents unique challenges: the language uses tonal diacritics, has complex morphology, and real-world Yoruba text is frequently unpunctuated or inconsistently punctuated. Standard rule-based SBD approaches designed for English fail to capture these linguistic patterns.
This model takes a sequence labeling approach, tagging each token as a sentence boundary or continuation token, fine-tuned on a large Yoruba corpus.
yo)| Label | Description |
|---|---|
O | Not a sentence boundary |
B-SENT | Beginning / end of sentence boundary |
(Check config.json for the exact id2label mapping.)
from transformers import AutoTokenizer, AutoModelForTokenClassification
from transformers import pipeline
model_id = "abnuel/yoruba_sent_boundary"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForTokenClassification.from_pretrained(model_id)
nlp = pipeline("token-classification", model=model, tokenizer=tokenizer)
# Example: continuous Yoruba text without explicit sentence markers
text = "Mo jókòó sí ilé Èmi yóò padà wá ní àárọ ọjọ́ kejì àwọn ará ilé mi dúpẹ́"
result = nlp(text)
print(result)
This is the first version. For improved performance, see:
Yoruba is spoken by ~45 million people but has minimal NLP infrastructure compared to European languages. Sentence boundary detection is foundational — without it, downstream tasks like machine translation, summarization, and speech-to-text post-processing are significantly impaired. This model is part of a broader effort to build the NLP toolchain for Yoruba and other low-resource African languages.
@misc{adegunlehin2025yoruba-sbd,
author = {Abayomi Adegunlehin},
title = {Yoruba Sentence Boundary Detection Model},
year = {2025},
url = {https://huggingface.co/abnuel/yoruba_sent_boundary}
}