sebtick's picture
Update app.py
8085a83 verified
raw
history blame
2.08 kB
import streamlit as st
from transformers import pipeline
# Configuration de la page
st.set_page_config(
page_title="🌍 Analyse de Sentiment Multilingue",
page_icon="🧠",
layout="centered",
)
# Titre principal
st.title("🧠 Analyseur de Sentiment Multilingue")
st.write("Détectez automatiquement les émotions dans vos textes en plusieurs langues grâce à l'intelligence artificielle 🤖.")
# Barre latérale
with st.sidebar:
st.header("À propos 📚")
st.write("Cette application utilise un modèle pré-entraîné hébergé sur Hugging Face pour analyser le sentiment de vos textes.")
st.markdown("---")
st.write("Projet réalisé avec **Streamlit** et **Transformers**.")
# Chargement du modèle
@st.cache_resource
def load_model():
return pipeline("text-classification", model="tabularisai/multilingual-sentiment-analysis")
classifier = load_model()
# Zone de saisie de texte
st.subheader("✍️ Entrez votre texte ci-dessous :")
user_input = st.text_area("Tapez votre message ici...", height=200)
# Bouton d'analyse
if st.button("🔎 Analyser le Sentiment"):
if user_input.strip() == "":
st.warning("⚠️ Merci d'entrer un texte avant de lancer l'analyse.")
else:
with st.spinner("Analyse en cours..."):
result = classifier(user_input)[0]
sentiment = result['label']
score = result['score']
# Affichage des résultats
st.success(f"**Sentiment détecté :** {sentiment}")
st.info(f"**Confiance du modèle :** {score:.2%}")
# Ajout d'un petit message en fonction du résultat
if "positive" in sentiment.lower():
st.balloons()
elif "negative" in sentiment.lower():
st.error("😞 Le sentiment semble négatif.")
else:
st.warning("😐 Sentiment plutôt neutre.")
# Footer
st.markdown("---")
st.markdown("🔗 [Voir le modèle sur Hugging Face](https://huggingface.co/tabularisai/multilingual-sentiment-analysis) | Réalisé avec ❤️ par un passionné d'IA.")