File size: 2,544 Bytes
695d63f
2d0356a
7901fc5
 
94c0eb7
7901fc5
c34d627
7901fc5
f1275c9
 
 
 
 
83caf2e
 
fd1ddbe
5c4d554
 
83caf2e
 
 
4aec7a1
b492c2a
 
83caf2e
 
fd1ddbe
83caf2e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6f6882a
648492d
665760e
f37ced0
08ea8eb
 
 
 
d848e1a
 
 
 
847cbae
7901fc5
4f574b7
2bb3a11
ed041a7
94c0eb7
f37ced0
ffea153
0a568e5
7901fc5
f37ced0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
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

#@st.cache_data
#def get_img_as_base64(file):
#    with open(file, "rb") as f:
#        data = f.read()
#    return base64.b64encode(data).decode()


#img = get_img_as_base64("image.jpg")background-image: url("data:image/png;base64,{img}");


page_bg_img = f"""
<style>
[data-testid="stAppViewContainer"] > .main {{
background-image: url("https://i.pinimg.com/originals/6f/6c/15/6f6c1538b050072b002dbc06bedaaf90.jpg");
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}}

[data-testid="stSidebar"] > div:first-child {{
background-position: center; 
background-repeat: no-repeat;
background-attachment: fixed;
}}

[data-testid="stHeader"] {{
background: rgba(0,0,0,0);
}}

[data-testid="stToolbar"] {{
right: 2rem;
}}
</style>
"""
st.markdown(page_bg_img, unsafe_allow_html=True)
# st.image("logo.png", width=200, height=200)
st.image("logo.png", width=100)
st.subheader(':violet[NLP HUB®]')
st.markdown("")
st.markdown("")
st.markdown("")
st.markdown("")
st.markdown("")
st.markdown("")
st.markdown("")
st.markdown("")
st.subheader('Amazon Sentiment Analysis using FineTuned :red[GPT-2] Pre-Trained Model')

sentiment_model = pipeline(model="ashok2216/gpt2-amazon-sentiment-classifier")
# Example usage:-
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(sentiment_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')