Spaces:
Runtime error
Runtime error
| import os, spacy | |
| from transformers import AutoTokenizer, AutoModelForSequenceClassification, TextClassificationPipeline | |
| import torch.nn.functional as F | |
| import torch | |
| from lime.lime_text import LimeTextExplainer | |
| # Load spaCy once | |
| try: | |
| nlp = spacy.load("en_core_web_lg") | |
| except OSError: | |
| os.system("python -m spacy download en_core_web_lg") | |
| nlp = spacy.load("en_core_web_lg") | |
| # Load the transformer model once | |
| MODEL_NAME = "distilbert-base-uncased-finetuned-sst-2-english" | |
| tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME) | |
| model = AutoModelForSequenceClassification.from_pretrained(MODEL_NAME) | |
| pipe = TextClassificationPipeline(model=model, tokenizer=tokenizer, top_k=None) | |
| # LIME explainer | |
| explainer = LimeTextExplainer(class_names=['negative', 'positive']) | |
| # Predictor function used by LIME | |
| def predictor(texts): | |
| outputs = model(**tokenizer(texts, return_tensors="pt", padding=True)) | |
| probas = F.softmax(outputs.logits, dim=1).detach().numpy() | |
| return probas | |