File size: 1,169 Bytes
728ef57
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# -*- coding: utf-8 -*-
"""app.py"""

import streamlit as st
from transformers import pipeline, GPT2LMHeadModel, GPT2Tokenizer

# Load pre-trained GPT-2 model and tokenizer
model_name = "gpt2"
model = GPT2LMHeadModel.from_pretrained(model_name)
tokenizer = GPT2Tokenizer.from_pretrained(model_name)

# Define function to generate blog post
def generate_blogpost(topic):
    input_text = f"Blog post about {topic}:"
    input_ids = tokenizer.encode(input_text, return_tensors="pt")

    # Generate text
    output = model.generate(input_ids, max_length=500, num_return_sequences=1, no_repeat_ngram_size=2)

    # Decode and return text
    generated_text = tokenizer.decode(output[0], skip_special_tokens=True)
    return generated_text

# Streamlit app
def main():
    st.title("Blog Post Generator")

    # Sidebar input for topic
    topic = st.sidebar.text_input("Enter topic for the blog post", "a crazy person driving a car")

    # Generate button
    if st.sidebar.button("Generate Blog Post"):
        blogpost = generate_blogpost(topic)
        st.subheader(f"Generated Blog Post on {topic}:")
        st.write(blogpost)

if __name__ == "__main__":
    main()