File size: 1,296 Bytes
813c809
 
b306bba
 
 
 
813c809
 
 
 
 
 
 
 
0688734
813c809
 
 
 
 
 
 
 
9f1e9e2
b306bba
813c809
 
 
 
 
0688734
813c809
 
 
 
 
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
import streamlit as st
from transformers import pipeline
def text_summarize(text):
    pipe=pipeline("summarization", model="nickmuchi/fb-bart-large-finetuned-trade-the-event-finance-summarizer")
    summary = text_summarize(text)[0]['summary_text']
    return summary

def sentiment(summary):
    pipe = pipeline("text-classification", model="WillWEI0103/CustomModel_finance_sentiment_analytics")
    label = pipe(summary)[0]['label']
    return label


def main():
    dicts={"bullish":'Positive',"bearish":'Negative','neutral':"Neutral"}
    st.set_page_config(page_title="Your Finance news", page_icon="📰")
    st.header("Summarize Your Finance News and Analyze Sentiment")
    text=st.text_input('Input your Finance news(Max lenth<=3000): ',max_chars=3000)
    if isinstance(text,str):
        st.text('Your Finance news: ')
        st.write(str(text))
    
        #Stage 1: Text Summarization
        st.text('Processing Finance News Summarization...')
        summary=text_summarize(text)
        st.write(summary)

        #Stage 2: Sentiment Analytics
        st.text('Processing Sentiment Analytics...')
        label = sentiment(summary)
        label=dicts[label]
        st.text('The sentiment of finance news is: ')
        st.write(label)

if __name__ == "__main__":
    main()