ghost7's picture
Update app.py
af37519 verified
raw
history blame
1 kB
from transformers import DistilBertTokenizer, DistilBertForSequenceClassification
import torch
import gradio as gr
# Load your saved model and tokenizer
model_path = "fine_tuned_distilbert"
tokenizer = DistilBertTokenizer.from_pretrained(model_path)
model = DistilBertForSequenceClassification.from_pretrained(model_path)
# Prediction function
def predict_sentiment(text):
inputs = tokenizer(text, return_tensors="pt", padding=True, truncation=True, max_length=512)
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
inputs = {key: val.to(device) for key, val in inputs.items()}
model.to(device)
with torch.no_grad():
outputs = model(**inputs)
logits = outputs.logits
predicted_class = torch.argmax(logits, dim=1).item()
return "Positive" if predicted_class == 1 else "Negative"
# Create Gradio interface
interface = gr.Interface(fn=predict_sentiment, inputs="text", outputs="text", title="Amazon Sentiment Analysis Demo")
interface.launch()