Downloads · 30 days
4
7% of all-time downloads
nitikeshd/odia-en-literary-translator
odia-en-literary-translator is a translation model from nitikeshd. Use it when you need text moved from one language to another. It is set up for peft. The card lists the license as cc-by-sa-4.0.
A QLoRA adapter on facebook/nllb-200-distilled-600M for English → Odia (ଓଡ଼ିଆ).
Downloads · 30 days
4
7% of all-time downloads
All-time downloads
55
Public
Repo size
70.1 MB
Likes
0
Public
Click a slice to open those files.
.json32.2 MB · 63%
From the Hugging Face model README
A QLoRA adapter on facebook/nllb-200-distilled-600M for English → Odia (ଓଡ଼ିଆ).
Honest status: v4 measurably improves general-domain English→Odia translation over the NLLB baseline (+1.46 chrF++), but does not improve literary/poetic Odia (−0.08). Released with transparent metrics — not a literary SOTA claim.
| Test set | Baseline (NLLB) | v4 | Δ |
|---|---|---|---|
| General (Samanantar) | 35.81 | 37.28 | +1.46 ✅ |
| Literary (held-out) | 23.21 | 23.13 | −0.08 |
Interpretation: more in-domain data + longer training yields a genuine general-domain gain. Literary stays flat because its training/test English is synthetic (back-translated) — limited literary signal. Improving literary translation requires human-curated literary parallel data.
from transformers import AutoModelForSeq2SeqLM, AutoTokenizer
from peft import PeftModel
tok = AutoTokenizer.from_pretrained("facebook/nllb-200-distilled-600M", src_lang="eng_Latn")
base = AutoModelForSeq2SeqLM.from_pretrained("facebook/nllb-200-distilled-600M")
model = PeftModel.from_pretrained(base, "nitikeshd/odia-en-literary-translator")
enc = tok("The train leaves at six in the morning.", return_tensors="pt")
out = model.generate(**enc, forced_bos_token_id=tok.convert_tokens_to_ids("ory_Orya"), num_beams=4)
print(tok.batch_decode(out, skip_special_tokens=True)[0])
Live demo (text + Odia speech): https://huggingface.co/spaces/nitikeshd/odia-translator-demo
(audio via facebook/mms-tts-ory).