notes73
Initial commit with app.py and requirements.txt
844a982
import streamlit as st
from transformers import pipeline
from newspaper import Article
# Load Summarization Model
@st.cache_resource
def load_summarizer():
return pipeline("summarization", model="facebook/bart-large-cnn")
summarizer = load_summarizer()
# Streamlit UI
st.title("📰 Real-Time Content Summarizer")
st.write("Paste a URL or enter text to get a summary!")
# Input option
option = st.radio("Choose input type:", ("URL", "Manual Text"))
if option == "URL":
url = st.text_input("Enter the article URL:")
if st.button("Summarize") and url:
try:
article = Article(url)
article.download()
article.parse()
text = article.text
summary = summarizer(text, max_length=150, min_length=50, do_sample=False)[0]['summary_text']
st.subheader("Summary:")
st.write(summary)
except Exception as e:
st.error("Error fetching the article. Please check the URL.")
elif option == "Manual Text":
text_input = st.text_area("Enter text to summarize:")
if st.button("Summarize") and text_input:
summary = summarizer(text_input, max_length=150, min_length=50, do_sample=False)[0]['summary_text']
st.subheader("Summary:")
st.write(summary)
st.write("Made with ❤️ using Streamlit & Hugging Face Transformers")