Downloads · 30 days
22
9% of all-time downloads
vediumsameer/paperguard-ai-detector
paperguard-ai-detector is a text classification model from vediumsameer. Use it when you need a label for a piece of text. It is set up for transformers. The card lists the license as mit.
Fine-tuned DistilBERT (distilbert-base-cased) sequence classifier that detects AI-generated text in academic papers, essays, and reports. It is the core AI-detection engine of the PaperGuard multi-agent academic-integ…
Downloads · 30 days
22
9% of all-time downloads
All-time downloads
247
Public
Parameters
65.8M
789 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors263 MB · 100%
From the Hugging Face model README
Fine-tuned DistilBERT (distilbert-base-cased) sequence classifier that
detects AI-generated text in academic papers, essays, and reports. It is the
core AI-detection engine of the PaperGuard
multi-agent academic-integrity system.
0 = ai, 1 = human (see config.json id2label).
v2.0 ("mega") continues from the v1.5 checkpoint and adds a larger, more diverse mix so the model sees many modern LLM writing styles:
On easy/separable data the model becomes overconfident — its softmax
saturates (it can report ~0% AI even on genuine AI text). The discriminative
signal lives in the logit margin (human_logit − ai_logit). PaperGuard
therefore scores AI-likelihood from a logistic calibration of the margin,
not the raw softmax. After calibration it flags clean/academic AI at ~70–90%
while keeping human text low (~10%).
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
tok = AutoTokenizer.from_pretrained("vediumsameer/paperguard-ai-detector")
model = AutoModelForSequenceClassification.from_pretrained("vediumsameer/paperguard-ai-detector")
text = "The rapid advancement of artificial intelligence has transformed modern education..."
inputs = tok(text, return_tensors="pt", truncation=True, max_length=512)
with torch.no_grad():
logits = model(**inputs).logits[0]
# Recommended: score off the margin (softmax is saturated)
margin = float(logits[model.config.label2id["human"]] - logits[model.config.label2id["ai"]])
# lower margin -> more AI-like ; higher margin -> more human-like
print("logit margin (human - ai):", margin)
This model powers the AI-detection layer of PaperGuard, which also does citation claim verification, plagiarism, and writing-quality analysis. See the project repo.