Spaces:
Sleeping
Sleeping
Download streamlit_app.py from Mustafa90d/Textsummrizer: direct link, hf CLI and curl.
- Browser
- Download file 1.33 kB
-
https://huggingface.co/spaces/Mustafa90d/Textsummrizer/resolve/main/streamlit_app.py
- Command line
-
hf download hf://spaces/Mustafa90d/Textsummrizer/streamlit_app.py
-
curl -L -o streamlit_app.py https://huggingface.co/spaces/Mustafa90d/Textsummrizer/resolve/main/streamlit_app.py
1.33 kB
| # streamlit_app.py | |
| import streamlit as st | |
| from transformers import AutoTokenizer, AutoModelForSeq2SeqLM | |
| st.set_page_config(page_title="Text Summarizer", layout="centered") | |
| st.title("📝 Text Summarization App") | |
| input_text = st.text_area("Enter text to summarize", height=200) | |
| def load_model(): | |
| model = AutoModelForSeq2SeqLM.from_pretrained("google/pegasus-cnn_dailymail") | |
| tokenizer = AutoTokenizer.from_pretrained("google/pegasus-cnn_dailymail") | |
| return model, tokenizer | |
| if st.button("Summarize"): | |
| if input_text.strip() == "": | |
| st.warning("Please enter some text.") | |
| else: | |
| try: | |
| with st.spinner("Summarizing..."): | |
| model, tokenizer = load_model() | |
| inputs = tokenizer(input_text, return_tensors="pt", truncation=True) | |
| summary_ids = model.generate( | |
| inputs["input_ids"], | |
| max_length=100, | |
| min_length=30, | |
| length_penalty=2.0, | |
| num_beams=4, | |
| early_stopping=True | |
| ) | |
| summary = tokenizer.decode(summary_ids[0], skip_special_tokens=True) | |
| st.subheader("Summary") | |
| st.success(summary) | |
| except Exception as e: | |
| st.error(f"Error: {e}") | |