Logo Lanfrica

GhanaNLP/ghana-speech-datagen

Domain:

natural language processing

Record type:

software
Creator:
Gha
Host:
Turn text into TTS/ASR training audio for 41 ghanaian languages. # Ghana Speech Datagen Generate synthetic speech training data against a **vLLM-Omni TTS server**. The tool itself is a lightweight HTTP client (no PyTorch, no local model) — deploy a TTS model once on a GPU (see `deploy/`), then generate as many datasets as you want against its API, voice-cloning from reference audio. **Two backends are supported:** | Backend | Model | Languages | Default port | |---|---|---|---| | **OmniVoice** (default) | `k2-fsa/OmniVoice` | 646 (auto-detect for non-listed) | 8001 | | **VoxCPM2** | `ghananlpcommunity/VoxCPM2-Ghana` | 40+ Ghanaian | 8000 | ## Sample Generated Dataset We've used ghana-speech-datagen to generate a synthetic dataset for training Twi ASR and TTS models. Find it on Hugging Face: **`ghananlpcommunity/twi-tts-asr`** ## Quickstart ```bash # Generate from a language's built-in text + default reference audio pool ghana-speech-datagen generate --lang ewe --hours 5 # Generate from your own text file + reference audio directory ghana-speech-datagen generate --text-file sentences.txt \ --ref-audio-dir my_refs/ --ref-metadata refs.csv --hours 5 # Generate from two HF datasets (text + reference audio) ghana-speech-datagen generate --dataset org/text-ds --text text \ --ref-dataset org/ref-audio-ds --ref-text-column text --hours 5 ``` The tool always requires reference audio for voice cloning. Provide it via: - `--ref-dataset` — HF dataset with audio + transcript columns - `--ref-audio-dir` + `--ref-metadata` — local dir of WAVs + CSV/JSONL mapping - `--lang` — falls back to the in-language reference pool from `ghananlpcommunity/ghana-speech` ## Supported languages 42 Ghanaian languages (plus English). List them: ```bash ghana-speech-datagen generate --list-langs ``` Codes: `ewe`, `fat`, `dag`, `twi-asante`, `twi-akuapem`, `en`, etc. `--lang` also accepts a full config name (`Ewe_ewe`) or display name (`Asante Twi`). ### OmniVoice language mapping | Language | OmniVoice `language` param | |---|---| | Akuapem Twi, …