File size: 1,389 Bytes
bfadcb1
33c8ccf
 
 
 
 
 
c27e90c
 
33c8ccf
 
36c571c
75d6c8e
0b3461a
36c571c
736f9af
 
c27e90c
36c571c
75d6c8e
 
0106d1b
2dd6b21
9ba3db4
 
75d6c8e
c27e90c
9ba3db4
75d6c8e
30d4d06
75d6c8e
30d4d06
c27e90c
30d4d06
75d6c8e
30d4d06
 
d69a484
c27e90c
75d6c8e
 
2dd6b21
 
 
75d6c8e
 
2dd6b21
75d6c8e
 
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

import subprocess

# Install transformers package
subprocess.run(['pip', 'install', 'transformers'])

# Import transformers module
from transformers import pipeline

import streamlit as st


# Summarization
def summarization(text):
    text_model = pipeline("text-generation", model="ainize/bart-base-cnn")
    summary = text_model(text, max_length=100, temperature=1.0)[0]["generated_text"]
    return summary

    
# Sentiment Classification
def sentiment_classification(summary):
    sentiment_model = pipeline("text-classification", model="wxrrrrrrr/finetunde_sentiment_analysis")
    result = sentiment_model(summary, max_length=100, truncation=True)[0]['label']
    if result != 'negative':
        result = 'positive'
    return result


def main():
    st.set_page_config(page_title="Your Text Analysis", page_icon="🦜")
    st.header("Tell me your comments!")
    text_input = st.text_input("Enter your text here:")

    if text_input:
        # Stage 1: Summarization
        st.text('Processing text...')
        summary = summarization(text_input)
        # st.write(summary)

        # Stage 2: Sentiment Classification
        st.text('Analyzing sentiment...')
        sentiment = sentiment_classification(summary)
        st.write(sentiment)

        # Display the classification result
        st.write("Sentiment:", sentiment)
    
if __name__ == '__main__':
    main()