text_summarizer / app.py
nit454's picture
Create app.py
6730add verified
# app.py
from transformers import pipeline
import gradio as gr
# Load the summarization pipeline
summarizer = pipeline("summarization", model="facebook/bart-large-cnn")
# Define summarization function
def summarize_text(text):
if not text or len(text.strip()) == 0:
return "⚠️ Please enter some text to summarize."
summary = summarizer(
text,
max_length=130,
min_length=30,
do_sample=False
)
return summary[0]['summary_text']
# Gradio Interface
demo = gr.Interface(
fn=summarize_text,
inputs=gr.Textbox(
lines=12,
placeholder="✍️ Paste your article, paragraph, or research text here..."
),
outputs=gr.Textbox(label="🧠 Generated Summary"),
title="Text Summarizer using Hugging Face 🤗",
description="Enter any paragraph or document, and get a concise summary using the BART model.",
examples=[
["The Hugging Face Transformers library provides general-purpose architectures for NLP tasks such as text classification, information extraction, question answering, summarization, translation, and text generation. It allows easy use of pre-trained models and fine-tuning for custom datasets."]
]
)
# Launch app
if __name__ == "__main__":
demo.launch()