Spaces:
Runtime error
Runtime error
File size: 1,809 Bytes
397ed79 d66b74a 397ed79 8a02fed 397ed79 8a02fed 4a21f8f d66b74a 8a02fed d66b74a 397ed79 defc0a9 8a02fed 397ed79 8a02fed 397ed79 8a02fed 397ed79 8a02fed 397ed79 8a02fed 397ed79 d66b74a 397ed79 8a02fed d66b74a 397ed79 8a02fed 397ed79 d66b74a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
import os
import gradio as gr
from transformers import AutoTokenizer, AutoModel
from scipy.special import softmax
from huggingface_hub import login
# Load environment variables
from dotenv import load_dotenv
load_dotenv()
# Get the token from the environment variable
access_token = os.getenv("access_token")
# Log in to Hugging Face (commented out for now)
# login(access_token)
# Requirements
model_path = "imalexianne/distilbert-base-uncased"
# tokenizer = AutoTokenizer.from_pretrained(model_path)
tokenizer = AutoTokenizer.from_pretrained(model_path, revision="main", use_auth_token=os.getenv("access_token"))
model = AutoModel.from_pretrained(model_path)
# Preprocessing function
def preprocess(text):
new_text = []
for x in text.split(" "):
x = "@user" if x.startswith("@") and len(x) > 1 else x
x = "http" if x.startswith("http") else x
new_text.append(x)
return " ".join(new_text)
# Function to process the input and return prediction
def sentiment_analysis(text):
text = preprocess(text)
encoded_input = tokenizer(text, return_tensors="pt")
output = model(**encoded_input)
scores_ = output.logits[0].detach().numpy()
scores_ = softmax(scores_)
# Format output dict of scores
labels = ["Negative", "Neutral", "Positive"]
scores = {l: float(s) for (l, s) in zip(labels, scores_)}
return scores
# Gradio app interface
app = gr.Interface(
fn=sentiment_analysis,
inputs=gr.Textbox("Write your text here..."),
outputs="label",
title="Sentiment Analysis of Tweets on COVID-19 Vaccines",
description="Sentiment Analysis of text based on tweets about COVID-19 Vaccines using a fine-tuned 'distilbert-base-uncased' model",
examples=[["Covid vaccination has no positive impact"]]
)
app.launch()
|