Logo Lanfrica

goobolabs/SomNLP-Corpus

Domaine:

natural language processing

Type de record:

dataset
Créateur:
goo
Hôte:
SomNLP-Corpus is an open, high-quality Somali text corpus designed to support research and development in Natural Language Processing (NLP), Large Language Models (LLMs), and other AI applications for the Somali language. SomNLP-Corpus A high-quality, scalable, reproducible Somali text corpus for NLP, LLMs, and AI research. Qoraal Soomaali nadiif ah oo loogu talagalay cilmi-baarista AI iyo NLP-ga. Rust-first data pipeline · streaming · config-driven · full provenance Status · What we built · Corpus results · Pipeline · Tokenizer · Quick start · Sources · Docs --- ## Status | Phase | Scope | Status | |-------|-------|--------| | 1 — Foundation | Workspace, shared types | ✅ Done | | 2 — Public datasets | Six downloaders + merge | ✅ Done | | 3 — Processing pipeline | Clean → LID → deep clean → near-dedup | ✅ Done | | 4 — Collection | Wikipedia, web scraping | 🔜 Next | | 5 — Release | Hugging Face packaging | Planned | **Track A is live:** download six public Somali datasets, merge, clean, verify language, and deduplicate into a training-ready corpus. **Track B next:** Wikipedia and targeted Somali web collection. See ROADMAP.md and PLAN.md. ## What we built - **Six downloaders** — HPLT, CC100, mC4, OPUS, MADLAD, MT560 - **Five processing stages** — merge + exact dedup, clean, LID (`lingua`), deep clean (v0.2), near-dedup (MinHash + LSH) - **`CorpusRecord` metadata** — provenance, content hash, dedup info, quality flags on every kept line - **Reject sidecars** — full text + reason for every dropped record; inspect with `reports/inspect_drops.sh` - **Single config** — `configs/pipeline.toml` ``` SomNLP ── SomNLP-Corpus (this repo) → Translate · NER · QA · Instruct · Sentiment · Bench ``` ## Corpus results Full 6-source run (HPLT, CC100, mC4, OPUS, MADLAD, MT560) through the **v0.2 pipeline** (merge → clean → LID → deep clean → near-dedup). Document counts are from per-stage stats; **final word count is measured** on `data/final/final_so.jsonl`. Intermediate word/token figures use the final corpus average (~317 words/doc) and are marked with ~. v0.1 baseline (without deep clean): 1.77M docs · 591M words — see docs/CLEANING_STRATEGY.md. | Stage | Documents | Word …