Spaces:
Runtime error
Runtime error
import streamlit as st | |
import transformers | |
import torch | |
import altair as alt | |
# Load the model and tokenizer | |
model = transformers.AutoModelForSequenceClassification.from_pretrained("RICHARDMENSAH/twitter_xlm_roberta_base") | |
tokenizer = transformers.AutoTokenizer.from_pretrained("RICHARDMENSAH/twitter_xlm_roberta_base") | |
# Define the function for sentiment analysis | |
def predict_sentiment(text): | |
result = model([text]) | |
labell = result[0]['label'] | |
if labell == 'label_0': | |
sentiment = 'Negative' | |
elif labell == 'label_1': | |
sentiment = 'Neutral' | |
elif labell == 'label_2': | |
sentiment = 'Positive' | |
else: | |
sentiment = labell | |
score = result[0]['score'] | |
return sentiment, score | |
# Setting the page configurations | |
st.set_page_config( | |
page_title="Sentiment Analysis App", | |
page_icon=":smile:", | |
layout="wide", | |
initial_sidebar_state="auto", | |
) | |
# Add description and title | |
st.write(""" | |
# How Positive or Negative is your Text? | |
Enter some text and we'll tell you if it has a positive, negative, or neutral sentiment! | |
""" ) | |
# Add image | |
image = st.image("https://i0.wp.com/thedatascientist.com/wp-content/uploads/2018/10/sentiment-analysis.png", width=400) | |
# Get user input | |
text = st.text_input("Enter some text here:") | |
# Define the CSS style for the app | |
st.markdown( | |
""" | |
<style> | |
body { | |
background-color: #f5f5f5; | |
} | |
h1 { | |
color: #4e79a7; | |
} | |
</style> | |
""", | |
unsafe_allow_html=True | |
) | |
# Show sentiment output | |
if text: | |
sentiment, score = predict_sentiment(text) | |
if sentiment == "Positive": | |
st.success(f"The sentiment is {sentiment} with a score of {score*100:.2f}%!") | |
elif sentiment == "Negative": | |
st.error(f"The sentiment is {sentiment} with a score of {score*100:.2f}%!") | |
else: | |
st.warning(f"The sentiment is {sentiment} with a score of {score*100:. | |