import streamlit as st from transformers import pipeline import time 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.header("Summarize Your Finance News and Analyze Sentiment📰") text=st.text_input('Input your Finance news(Max lenth<=3000): ',None,max_chars=3000) if text is not None: st.text('Your Finance news: ') st.write(text) st.slider(min_value=0, max_value=100,value=[0,100]) st.divider() # Draws a horizontal rule #Stage 1: Text Summarization st.text('Processing Finance News Summarization...') text_summarize=pipeline("summarization", model="nickmuchi/fb-bart-large-finetuned-trade-the-event-finance-summarizer") summary=text_summarize(text)[0]['summary_text'] st.write(summary) st.slider(min_value=0, max_value=100,value=[0,100]) st.divider() # Draws a horizontal rule #Stage 2: Sentiment Analytics st.text('Processing Sentiment Analytics...') label = sentiment(summary) label=dicts[label] st.slider(min_value=0, max_value=100,value=[0,100]) st.divider() # Draws a horizontal rule st.text('The sentiment of finance news is: ') st.write(label) if __name__ == "__main__": main()