Spaces:
Sleeping
Sleeping
| import pybase64 as base64 | |
| import pandas as pd | |
| import streamlit as st | |
| import seaborn as sns | |
| from data_cleaning import preprocess | |
| from transformers import pipeline | |
| from data_integration import scrape_all_pages | |
| page_bg_img = """ | |
| <style> | |
| .stApp > header { background-color: transparent;} | |
| .stApp { | |
| background: rgb(80,255,235); | |
| background: linear-gradient(90deg, rgba(80,255,235,1) 0%, | |
| rgba(0,0,255,1) 50%, rgba(188,0,255,1) 92%); | |
| background-size: 150% 150%; | |
| animation: my_animation 30s ease infinite; | |
| } | |
| @keyframes my_animation { | |
| 0% {background-position: 0% 0%;} | |
| 25% { background-position: 0% 0%;} | |
| 50% {background-position: 100% 100%;} | |
| 75% {background-position: 100% 100%;} | |
| 100% {background-position: 0% 0%;} | |
| } | |
| </style> | |
| """ | |
| st.markdown(page_bg_img, unsafe_allow_html=True) | |
| #st.image("logo.png", width=200, height=200) | |
| st.image("logo.png", width=80) | |
| st.subheader(':violet[NLP HUB®]') | |
| st.markdown("") | |
| st.markdown("") | |
| st.markdown("") | |
| st.markdown("") | |
| st.subheader('Amazon Sentiment Analysis using FineTuned :red[GPT-2] Pre-Trained Model') | |
| def load_model(): | |
| sentiment_model = pipeline(model="ashok2216/gpt2-amazon-sentiment-classifier") | |
| return sentiment_model | |
| model = load_model() | |
| sample_url = 'https://www.amazon.in/Dell-Inspiron-i7-1255U-Processor-Platinum/product-reviews/B0C9F142V6/ref=cm_cr_dp_d_show_all_btm?ie=UTF8&reviewerType=all_reviews' | |
| url = st.text_input("Amazon product link", sample_url) | |
| st.button("Re-run") | |
| st.write("Done") | |
| st.subheader('', divider='rainbow') | |
| try: | |
| all_reviews = scrape_all_pages(url) | |
| # Convert to DataFrame for further analysis | |
| reviews = pd.DataFrame(all_reviews) | |
| reviews['processed_text'] = reviews['content'].apply(preprocess) | |
| # st.dataframe(reviews, use_container_width=True) | |
| # st.markdown(sentiment_model(['It is Super!'])) | |
| sentiments = [] | |
| for text in reviews['processed_text']: | |
| if list(model(text)[0].values())[0] == 'LABEL_1': | |
| output = 'Positive' | |
| else: | |
| output = 'Negative' | |
| sentiments.append(output) | |
| reviews['sentiments'] = sentiments | |
| st.markdown(':white[Output]') | |
| st.dataframe(reviews, use_container_width=True) | |
| # sns.countplot(reviews['sentiments']) | |
| except KeyError: | |
| st.markdown('Please :red[Re-run] the app') | |