resume-summerization-classification/bangla_resume_summarizer_banglat5
Bangla Resume Summarizer — BanglaT5
Fine-tuned BanglaT5 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.
Model Details
Dataset
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.
Evaluation Results
Evaluated against human-verified abstractive reference summaries using a Bengali-aware ROUGE tokenizer and semantic similarity:
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.808 confirms strong meaning alignment with human-verified references.
Per-section ROUGE-1:
Usage
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("your-username/bangla-resume-summarizer-banglat5", use_fast=False)
model = AutoModelForSeq2SeqLM.from_pretrained("your-username/bangla-resume-summarizer-banglat5")
model.eval()
def summarize(text):
inputs = tokenizer(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 — Experience section sentences joined by ' । '
text = "সিনিয়র সফ্টওয়্যার ইঞ্জিনিয়ার । টেকনোলজি সলিউশনস লিমিটেড । জুলাই ২০২০ - বর্তমান । মাইক্রোসার্ভিস আর্কিটেকচার ব্যবহার করে স্কেলেবল ব্যাকএন্ড সিস্টেম ডিজাইন ও উন্নয়ন"
print(summarize(text))Input Format
Feed one section at a time. Join multiple sentences with । (Bengali danda):
sentence_1 । sentence_2 । sentence_3The model works best when given 2–6 sentences per section. For Skill sections, list skills separated by । .
Limitations
- Trained on only 317 pairs — a small dataset by deep learning standards. Outputs may be generic for unusual professions.
- Optimized for resume text. Performance on other Bangla document types is untested.
- Not suitable for very long inputs (>512 tokens); truncation will occur.
- Compared to mT5, this model has a marginally higher overall ROUGE-1 (0.620 vs 0.617) but slightly lower semantic similarity (0.808 vs 0.818) — its edge is clearest on the Experience section (0.504 vs 0.489); on Skill, mT5 is actually marginally ahead (0.548 vs 0.538).
Citation
If you use this model, please cite the Onneshon dataset:
@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}
}Project
Part of the Onneshon thesis project — a Bangla NLP pipeline for resume processing including section classification, extractive summarization (TF-IDF & TextRank), abstractive summarization (BanglaT5 & mT5), and AI vs human writing detection (BanglaBERT).
- Dataset: Mendeley Data DOI: 10.17632/4md7bx6fd7.1
- Institution: Bangladesh University of Professionals (BUP), Dhaka, Bangladesh
- Supervisor: Rumana Yasmin, Lecturer, CSE Department, BUP
