Views
No views yet
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
import numpy as np
tokenizer = AutoTokenizer.from_pretrained("Lundsfryd/BlameBERT")
model = AutoModelForMaskedLM.from_pretrained("Lundsfryd/BlameBERT")
def predict(text):
inputs = tokenizer(
text,
padding=True,
truncation=True,
max_length=512, #mmBERT accepts up to 8,192 tokens. For our purposes input was capped at 512.
return_tensors='pt'
)
inputs = {k: v.to(model.device) for k, v in inputs.items()}
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
probabilities = torch.softmax(logits, dim=1)
predicted_class = torch.argmax(probabilities, dim=1).item()
confidence = probabilities[0][predicted_class].item()
return predicted_class, confidence, probabilities[0].cpu().numpy()
texts = [
"Jeg er opmærksom på fængselspersonalets vilkår.",
"Det kommer både de studerende og erhvervslivet til gode.",
"Jeg er enig i, at der er kommet for mange hertil, som ikke vil Danmark, som ikke opfører sig ordentligt, som begår kriminalitet, og som i øvrigt med deres ideologiske tilgang til både religion og politik er med til at undergrave vores demokrati."
]