Spaces:
Sleeping
Sleeping
import streamlit as st | |
from transformers import pipeline | |
model_path = "citizenlab/twitter-xlm-roberta-base-sentiment-finetunned" | |
st.set_page_config(page_title="Sentiment Analysis App", layout="wide") | |
# Set the background color of the Streamlit app using CSS | |
st.markdown( | |
""" | |
<style> | |
body { | |
background-color: #FFA500; /* Orange color */ | |
} | |
</style> | |
""", | |
unsafe_allow_html=True, | |
) | |
sentiment_classifier = pipeline("text-classification", model=model_path) | |
st.title("Sentiment Analysis App") | |
user_input = st.text_area("Enter a message:", height=150) | |
if st.button( | |
"Analyze Sentiment π", key="analyze_button", help="Click to analyze sentiment", | |
background_color="black", text_color="white", border_radius=5 | |
): | |
if user_input: | |
# Perform sentiment analysis | |
st.markdown("---") | |
with st.spinner('Analyzing...'): | |
results = sentiment_classifier(user_input) | |
sentiment_label = results[0]["label"] | |
sentiment_score = results[0]["score"] | |
st.success("Analysis Complete! π") | |
st.write("") | |
st.subheader("Sentiment Analysis Result") | |
st.write(f"**Sentiment:** {sentiment_label}") | |
st.write(f"**Confidence Score:** {sentiment_score:.2f}") | |
# Set button colors based on sentiment | |
if sentiment_label == "positive": | |
button_color = "#3399ff" # blue color for positive sentiment | |
elif sentiment_label == "negative": | |
button_color = "#ff3333" # red color for negative sentiment | |
else: | |
button_color = "#ff66cc" # pink color for neutral sentiment | |
st.markdown( | |
f'<a style="background-color:{button_color};color:white;text-decoration:none;padding:8px 12px;' | |
f"border-radius:5px;display:inline-block;margin-top:15px;" | |
f'font-weight:bold;" href="https://www.streamlit.io/">' | |
f'Share Analysis on Streamlit <span style="font-size:20px;">π</span></a>', | |
unsafe_allow_html=True, | |
) | |