Spaces:
Running
Running
import streamlit as st | |
from transformers import pipeline | |
import numpy as np | |
print ("Load model...") | |
# Load the pre-trained emotion classification pipeline | |
model_name = "bhadresh-savani/distilbert-base-uncased-emotion" | |
emotion_classifier = pipeline("text-classification", model=model_name) | |
# Title and Description | |
st.title("Emotion Classifier") | |
st.write("""write down how your day went or what your mood is.""") | |
st.write("""On this space used model "bhadresh-savani/distilbert-base-uncased-emotion". | |
""") | |
# Input text box | |
input_text = st.text_area("Enter text to analyze emotions:", "") | |
if st.button("Classify Emotion"): | |
if input_text.strip() == "": | |
st.write("Please enter some text to classify.") | |
else: | |
# Get classification results | |
results = emotion_classifier(input_text, top_k=None) | |
# Extract scores and normalize to sum to 1 | |
scores = np.array([result["score"] for result in results]) | |
normalized_scores = scores / scores.sum() | |
# Display normalized results | |
st.subheader("Emotions:") | |
for i, result in enumerate(results): | |
st.write(f"**{result['label']}**: {normalized_scores[i]:.4f}") |