Downloads · 30 days
159
17% of all-time downloads
gentleman101/bhojpuri-f5-tts
bhojpuri-f5-tts is a text-to-speech model from gentleman101. Use it when you need text read aloud. It is set up for f5-tts. The card lists the license as cc-by-4.0.
<p align="center" <img src="logo.gif" width="96" alt="Bhojpuri-F5-TTS mascot, speaking" </p
Downloads · 30 days
159
17% of all-time downloads
All-time downloads
938
Public
Repo size
2.6 GB
Likes
3
Public
Click a slice to open those files.
.pt1.1 GB · 49%
From the Hugging Face model README
A rank-32 LoRA adapter (10.1M / 347M trainable params, 2.9%) fine-tuned on top of AI4Bharat's IndicF5 (F5-TTS architecture) using 9.4 hours of the SYSPIN Bhojpuri corpus (2 studio speakers, male + female). Zero-shot voice cloning: give it a short reference clip + its transcript, and target text, and it synthesizes that text in the reference voice/style.
This is a personal, self-funded learning project — not a production system. Read the caveats below before using it for anything beyond experimentation.
Measured against stock IndicF5 on a 32-sentence held-out diagnostic set built specifically to probe Bhojpuri-vs-Hindi pronunciation contrasts (व→ब, श/ष→स, ण→न, avagraha, verb endings, retained final vowels), using pitch-contour correlation against real recordings of the same sentences (DTW-aligned):
| Measure | Stock IndicF5 | This LoRA | Change |
|---|---|---|---|
| Pitch-contour correlation (↑ better) | 0.502 | 0.601 | +0.099 |
| Pitch RMSE, semitones (↓ better) | 3.759 | 3.207 | −0.552 |
| Pitch range ratio vs. real speech (→1.0 ideal) | 1.457 | 1.157 | closer to 1.0 |
| Spectral (MFCC) distance (↓ better) | 49.355 | 47.079 | −2.276 |
Improved on all 8 pronunciation categories tested, biggest gains on avagraha (0.628→0.785) and retroflex_n (0.549→0.696).

Left: training/validation loss over the 8,000-update run — note it plateaus hard after ~update 2,500-3,000; most of the gain happens early. Right: per-category pitch-correlation vs. stock on the 32-sentence diagnostic set.
Read the numbers honestly, not as a guarantee:
This is a LoRA adapter on IndicF5's custom F5-TTS architecture (not a transformers model), so it's loaded through this project's own code rather than AutoModel. Verified working end-to-end:
git clone https://github.com/gentleman101/bhojpuri-f5-tts.git
cd bhojpuri-f5-tts
./scripts/bootstrap.sh # sets up the venv, downloads IndicF5 base weights
python scripts/pull_run.py lora_10h_r32 # downloads this checkpoint from this repo
python scripts/infer.py \
--ref-audio your_reference.wav --ref-text "transcript of your reference clip" \
--text "अरे भाई, ई त बहुते बढ़िया बा!" \
--adapter runs/lora_10h_r32/checkpoints/step_0008000 \
--out out.wav
--ref-audio is a 3-10s clip of any voice you want to clone (any language/speaker — zero-shot), with --ref-text as its exact transcript. Full training/inference code, configs, and the diagnostic set: github.com/gentleman101/bhojpuri-f5-tts
Fine-tuned on the SYSPIN_S1.0 Bhojpuri corpus, © Indian Institute of Science (IISc) Bengaluru, SPIRE Lab, released under CC-BY-4.0. Please cite:
Abhayjeet et al., "SYSPIN_S1.0 Corpus — A TTS Corpus of 900+ hours in nine Indian Languages", 2025.
Base model: ai4bharat/IndicF5 (MIT license).
syspin_10h split, 5,462 training clips / 100 validation clips.torch.compile enabled (~1.8x speedup over eager).