Project_Test / app.py
ZephyruSalsify's picture
Rename app (1).py to app.py
f0bcc47 verified
import streamlit as st
from transformers import pipeline
def analyze_financial_news():
access = "hf_"
token = "hhbFNpjKohezoexWMlyPUpvJQLWlaFhJaa"
# Load the text classification model and finetuned model pipeline
classification = pipeline("text-classification", model="nickmuchi/finbert-tone-finetuned-finance-topic-classification", token=access+token)
sentiment_analysis = pipeline("text-classification", model="ZephyruSalsify/FinNews_SentimentAnalysis_v3")
st.set_page_config(page_title="Energy/Oil-Related Financial News Sentiment Analysis", page_icon="♕")
# Streamlit application layout
st.title("Energy/Oil-Related Financial News Sentiment Analysis")
st.write("Conduct Sentiment Analysis for Energy/Oil-Related Financial News to Find Out the Trend In Energy/Oil Industry and Make Wise Decisions!")
st.image("./Fin.jpg", use_column_width=True)
# Text input for user to enter the text
text = st.text_area("Enter the Financial News Content", "")
analyze_clicked = st.button("Analyze")
if analyze_clicked:
# Perform text classification on the input text
results = classification(text)[0]
# Check if the classification is "Energy | Oil"
if results["label"] == "Energy | Oil":
# If the news is related to Energy | Oil, perform sentiment analysis
sentiment_results = sentiment_analysis(text)[0]
# Display the sentiment analysis result
st.write("This financial news belongs to the 'Energy | Oil' category.")
st.write("Sentiment:", sentiment_results["label"])
st.write("Sentiment Score:", sentiment_results["score"])
else:
st.write("This financial news does not belong to the 'Energy | Oil' category. Please enter a relevant news article.")
def main():
analyze_financial_news()
if __name__ == "__main__":
main()