s2049's picture
Create app.py
1ae33d2 verified
raw
history blame
1.35 kB
import gradio as gr
from transformers import pipeline
def summarize_text(text, min_length, max_length):
summarizer = pipeline("summarization", model="facebook/bart-large-cnn")
summary = summarizer(
text,
min_length=min_length,
max_length=max_length,
do_sample=False
)
return summary[0]['summary_text']
with gr.Blocks() as demo:
gr.Markdown("## Adjustable Text Summarization")
with gr.Row():
input_text = gr.Textbox(
label="Enter your text here",
placeholder="Paste your text here...",
lines=5
)
with gr.Row():
min_length = gr.Slider(
label="Minimum Length (Tokens)",
minimum=10,
maximum=50,
value=10
)
max_length = gr.Slider(
label="Maximum Length (Tokens)",
minimum=50,
maximum=150,
value=100
)
with gr.Row():
summarize_button = gr.Button("Generate Summary", variant="primary")
with gr.Row():
output_text = gr.Textbox(
label="Generated Summary",
lines=4
)
summarize_button.click(
fn=summarize_text,
inputs=[input_text, min_length, max_length],
outputs=output_text
)
if __name__ == "__main__":
demo.launch()