Downloads · 30 days
5
7% of all-time downloads
resume-summerization-classification
resume-summerization-classification/bangla_resume_summarizerMT5
bangla_resume_summarizerMT5 is a summarization model from resume-summerization-classification. Use it when you need a shorter version of a longer text. The card lists the license as mit.
Fine-tuned mT5multilingualXLSum for abstractive summarization of Bangla-language resumes, section by section. Developed as part of the Onneshon thesis project at Bangladesh University of Professionals (BUP).
Downloads · 30 days
5
7% of all-time downloads
All-time downloads
75
Public
Parameters
582M
2.3 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors2.3 GB · 99%
From the Hugging Face model README
Fine-tuned mT5_multilingual_XLSum for abstractive summarization of Bangla-language resumes, section by section. Developed as part of the Onneshon thesis project at Bangladesh University of Professionals (BUP).
Given the raw sentences of a resume section (Objective, Experience, Education, or Skill), the model generates a fluent 2–3 sentence Bangla summary with strong semantic alignment to human-verified references.
| Property | Value |
|---|---|
| Base model | csebuetnlp/mT5_multilingual_XLSum |
| Architecture | MT5ForConditionalGeneration (encoder-decoder) |
| Parameters | 12 encoder layers, 12 decoder layers, 768 hidden dim, vocab 250,112 |
| Language | Bengali (bn) |
| Task | Abstractive summarization (per section) |
| Language token | <2bn> prepended to all inputs (required by mT5_multilingual_XLSum) |
| Training data | 317 resume-summary pairs (80% of Onneshon dataset) |
| Validation data | 79 resume-summary pairs (20% of Onneshon dataset) |
| Epochs | 5 (with early stopping, patience=2) |
| Learning rate | 5e-4 |
| Batch size | 4 |
| Max input tokens | 512 |
| Max output tokens | 128 |
Trained on Onneshon — an original Bangla resume dataset of 100 annotated resumes spanning 20+ professions.
Published on Mendeley Data: DOI: 10.17632/4md7bx6fd7.1
Reference summaries were generated using GPT-OSS-120B (via OpenRouter) and human-verified, producing 396 section-level summary pairs across 4 categories: Objective, Experience, Education, Skill.
Evaluated against human-verified abstractive reference summaries using a Bengali-aware ROUGE tokenizer and semantic similarity:
| Metric | Score |
|---|---|
| ROUGE-1 | 0.6171 |
| ROUGE-2 | 0.4361 |
| ROUGE-L | 0.5384 |
| Semantic Similarity (paraphrase-multilingual-MiniLM-L12-v2) | 0.8184 |
Note on ROUGE scores: ROUGE measures exact word overlap. Since references are abstractive paraphrases and Bangla has rich morphology, ROUGE can still underestimate quality relative to semantic similarity. Semantic similarity of 0.818 — the highest among all 4 methods evaluated — confirms this model produces summaries most aligned in meaning with human-verified references.
Per-section ROUGE-1 and Semantic Similarity:
| Section | ROUGE-1 | Semantic Sim |
|---|---|---|
| Objective | 0.6697 | 0.9120 |
| Experience | 0.4892 | 0.7209 |
| Education | 0.7557 | 0.8585 |
| Skill | 0.5487 | 0.7782 |
| Metric | BanglaT5 | mT5 | Better for |
|---|---|---|---|
| ROUGE-1 | 0.620 | 0.617 | BanglaT5 (marginal) |
| Semantic Sim | 0.808 | 0.818 | mT5 |
| Objective Sem | 0.848 | 0.912 | mT5 |
| Experience R1 | 0.504 | 0.489 | BanglaT5 |
mT5 produces more fluent, semantically natural summaries (higher semantic sim overall). BanglaT5 has higher word-level fidelity (higher ROUGE) for factual sections. Use mT5 when fluency and meaning alignment are priorities.
⚠️ Important: This model requires the Bengali language token
<2bn>prepended to every input. Without it, the model defaults to non-Bengali output.
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
LANG_TOKEN = "<2bn>"
tokenizer = AutoTokenizer.from_pretrained("your-username/bangla-resume-summarizer-mt5", use_fast=False)
model = AutoModelForSeq2SeqLM.from_pretrained("your-username/bangla-resume-summarizer-mt5")
model.eval()
def summarize(text):
# Prepend Bengali language token — required for this model
input_text = LANG_TOKEN + " " + text.strip()
inputs = tokenizer(input_text, return_tensors="pt", truncation=True, max_length=512)
outputs = model.generate(
inputs["input_ids"],
max_length=128,
min_length=20,
num_beams=4,
length_penalty=1.2,
repetition_penalty=2.0,
no_repeat_ngram_size=3,
early_stopping=True
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
# Example — Objective section
text = "অভিজ্ঞতা সম্পন্ন সফ্টওয়্যার ইঞ্জিনিয়ার হিসেবে একটি ডায়নামিক টিমে যোগদান করা যেখানে আমার জাভা এবং স্প্রিং ফ্রেমওয়ার্কের দক্ষতা কাজে লাগিয়ে প্রতিষ্ঠানের সাফল্যে অবদান রাখতে পারি"
print(summarize(text))
Feed one section at a time. Join multiple sentences with । (Bengali danda). The <2bn> token is added automatically in the usage example above:
<2bn> sentence_1 । sentence_2 । sentence_3
<2bn> language token is mandatory — omitting it will cause incorrect (non-Bengali) output.If you use this model, please cite the Onneshon dataset and XL-Sum:
@misc{onneshon2026,
title = {Onneshon: A Bangla Resume NLP Dataset},
author = {Tanvir and Shruti Khisa and Shaira Akther Diba and Fazli Rabbi Noor},
year = {2026},
doi = {10.17632/4md7bx6fd7.1},
publisher = {Mendeley Data}
}
@inproceedings{hasan-etal-2021-xl,
title = {XL-Sum: Large-Scale Multilingual Abstractive Summarization for 44 Languages},
author = {Hasan, Tahmid and Bhattacharjee, Abhik and Islam, Md. Saiful and Mubasshir, Kazi and Li, Yuan-Fang and Kang, Yong-Bin and Rahman, M. Sohel and Shahriyar, Rifat},
booktitle = {Findings of the Association for Computational Linguistics: ACL-IJCNLP 2021},
year = {2021},
pages = {4693--4703}
}
Part of the Onneshon thesis project — a Bangla NLP pipeline for resume processing.