ayushsinha's picture
Upload 2 files
aacb8b7 verified
import gradio as gr
from transformers import pipeline
# Load the GPT-2 News Generation Model
model_name = "AventIQ-AI/gpt2-news-article-generation"
generator = pipeline("text-generation", model=model_name)
# Predefined headline suggestions
headline_suggestions = [
"Breaking: Stock Market Hits Record High",
"Scientists Discover New Treatment for Alzheimer's",
"Tech Giants Compete in AI Race",
"Severe Weather Warnings Issued Across the Country",
"New Law Passed to Improve Cybersecurity Standards"
]
def generate_news_article(headline, max_length=250):
"""Generate a news article based on the given headline."""
response = generator(headline, max_length=max_length, num_return_sequences=1)
return response[0]["generated_text"]
# Create Gradio UI
with gr.Blocks(theme="default") as demo:
gr.Markdown("## πŸ“° GPT-2 News Article Generator")
gr.Markdown("πŸ” Enter a **news headline**, and the model will generate a news article based on it.")
headline_input = gr.Textbox(placeholder="Enter a news headline...", label="News Headline")
suggestion_dropdown = gr.Dropdown(choices=headline_suggestions, label="πŸ’‘ Select a Sample Headline (Optional)")
generate_button = gr.Button("πŸ“ Generate Article")
output_box = gr.Textbox(label="Generated News Article", interactive=False)
# Function to update input field with selected suggestion
def update_headline(suggestion):
return suggestion
suggestion_dropdown.change(update_headline, inputs=[suggestion_dropdown], outputs=[headline_input])
generate_button.click(generate_news_article, inputs=[headline_input], outputs=[output_box])
demo.launch()