Downloads · 30 days
79
68% of all-time downloads
squadgoals404/XLM-Prohori-v2
XLM-Prohori-v2 is a machine learning model from squadgoals404. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
🌐 XLM-Prohori-v2: Bangla/English SMS Smishing Classifier
Downloads · 30 days
79
68% of all-time downloads
All-time downloads
117
Public
Parameters
278M
3.4 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors1.1 GB · 98%
From the Hugging Face model README
🌐 XLM-Prohori-v2: Bangla/English SMS Smishing Classifier
Repository: squadgoals404/XLM-Prohori-v2
Base Model: xlm-roberta-base
XLM-Prohori-v2 is a fine-tuned XLM-RoBERTa-base model for detecting smishing (SMS phishing) in Bangla and English.
It classifies SMS into three categories:
normal, promo, smish[LINK]; duplicates removed; stratified train/val/test splitThe raw dataset is not publicly released for privacy reasons. Some synthetic smish examples were included to balance classes.
Confusion matrices indicate generally balanced performance, with minor confusion between promo and smish in link-heavy texts.
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch.nn.functional as F
import torch
model_id = "squadgoals404/XLM-Prohori-v2"
tok = AutoTokenizer.from_pretrained(model_id)
mdl = AutoModelForSequenceClassification.from_pretrained(model_id)
# Force semantic class names in-memory
CLASS_NAMES = ["normal", "promo", "smish"] # make sure the order matches 0,1,2
mdl.config.id2label = {i: c for i, c in enumerate(CLASS_NAMES)}
mdl.config.label2id = {c: i for i, c in enumerate(CLASS_NAMES)}
text = "Bank Account temporarily locked—identity verify করতে জরুরি কল 017XX-XXXXXX"
inputs = tok(text, return_tensors="pt")
with torch.no_grad():
probs = F.softmax(mdl(**inputs).logits, dim=-1).squeeze().tolist()
print({CLASS_NAMES[i]: round(p, 4) for i, p in enumerate(probs)})