tanquangduong's picture
:tada: add application files
b93e9c1
"""
@author: Tan Quang Duong
"""
import streamlit as st
import pandas as pd
from transformers import AutoTokenizer, AutoModelForSequenceClassification
from datasets import load_dataset
from PIL import Image
# setting logos in the page
app_logo = Image.open("./figs/AI-driven-Solutions.png")
# set page config
st.set_page_config(page_title="Review Sentiment Analysis", page_icon="πŸš€", layout="wide")
st.sidebar.image(app_logo, use_column_width=True)
st.sidebar.markdown(
"<h1 style='text-align: center; color: grey;'> Quang Duong </h1>",
unsafe_allow_html=True,
)
# model name
model_name = "tanquangduong/distilbert-imdb"
# Load tokenizer, model and imdb dataset from hugging face hub and add them to st.session_state
if "tokenizer" not in st.session_state:
tokenizer = AutoTokenizer.from_pretrained(model_name)
st.session_state["tokenizer"] = tokenizer
if "model" not in st.session_state:
model = AutoModelForSequenceClassification.from_pretrained(model_name)
st.session_state["model"] = model
if "df_imdb_test" not in st.session_state:
imdb = load_dataset("imdb")
df_test = pd.DataFrame(imdb["test"])
df_test = df_test.sample(frac=1)
st.session_state["df_imdb_test"] = df_test
st.write("# Welcome to LLM-based sentiment analysis app!πŸ‘‹")
# st.sidebar.success("Select a demo above.")
st.markdown(
"""
# Objective
This app leverages LLM to perform **:green[sentiment analysis]** for **:green[user reviews]**. Some potential use-cases are as bellow, but not limitted to:
- User reviews for drug efficiency on drug/medicin forums
- User reviews for mobile applications on app stores, e.g. Google Play, App Store
- User reviews for food quality on food delivery app
- User reviews for product quality on e-commerce websites
- etc.
"""
)