JoshuaZywoo's picture
Update app.py
efa60b3 verified
raw
history blame
1.38 kB
import streamlit as st
from transformers import pipeline
# loarding pipeline
sentiment_analyzer = pipeline("sentiment-analysis", model="distilbert-base-uncased-finetuned-sst-2-english")
ner_tagger = pipeline("ner", model="dslim/bert-base-NER", grouped_entities=True)
st.set_page_config(page_title="Customer Support Analyzer", layout="centered")
st.title("📞 AI Customer service Dialogue Analysis")
# Customer type
user_input = st.text_area("Please enter the question or conversation:", height=150)
if st.button("Analyse"):
if user_input.strip() == "":
st.warning("Please enter content")
else:
with st.spinner("Analysing..."):
# Emotion
sentiment_result = sentiment_analyzer(user_input)[0]
st.subheader("📌 Sentiment analysis results")
st.write(f"**Emotional type**: {sentiment_result['label']}")
st.write(f"**Confidence degree**: {sentiment_result['score']:.2f}")
# Command
ner_results = ner_tagger(user_input)
extracted_entities = [ent['word'] for ent in ner_results if ent['score'] > 0.5]
st.subheader("🔍Problem keyword recognition")
if extracted_entities:
st.write(", ".join(set(extracted_entities)))
else:
st.write("The specific problem keywords were not identified")