File size: 3,299 Bytes
bf70abc
0a480c8
0f64b20
 
c1fbddd
757b271
 
bf70abc
71eee80
f23c1ac
ed5f436
71eee80
 
 
 
c48ce42
 
71eee80
0f64b20
71eee80
11b09e1
 
 
71eee80
 
 
 
c48ce42
71eee80
 
757b271
a2b71e3
0f64b20
 
 
 
757b271
 
 
 
85e1e8f
757b271
71eee80
757b271
 
 
f11a5bd
757b271
71eee80
a2b71e3
71eee80
 
 
0f64b20
 
 
 
 
 
 
 
 
 
 
 
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
import streamlit as st
import openai
import pdfkit
import os

# Access the OpenAI API key from Hugging Face Spaces secrets
openai.api_key = st.secrets["OPENAI_API_KEY"]

st.title("2024 Video Marketing Plan Generator")

# User inputs for the marketing plan
st.subheader("Define Your Business and Audience")
business_type = st.text_input("Your Business Type", placeholder="e.g., Cafe, Yoga Studio")
target_audience = st.text_area("Describe Your Target Audience", placeholder="e.g., demographics, interests")

st.subheader("Current Marketing Efforts")
current_marketing = st.text_area("Current Marketing Strategies", placeholder="Describe your ongoing marketing activities.")

# Test data button for ease of testing
if st.button('Load Test Data'):
    st.session_state['business_type'] = "Real Estate Agency"
    st.session_state['target_audience'] = "Families and individuals looking to buy homes in suburban areas, focusing on first-time homebuyers and those seeking to upgrade to larger properties."
    st.session_state['current_marketing'] = "Monthly newsletter, weekly social media posts on property listings and home buying tips, participation in local community events, and occasional paid ads on local online forums."

# Use session state for input fields
business_type = st.text_input("Your Business Type", value=st.session_state.get('business_type', ''), placeholder="e.g., Cafe, Yoga Studio")
target_audience = st.text_area("Describe Your Target Audience", value=st.session_state.get('target_audience', ''), placeholder="e.g., demographics, interests")
current_marketing = st.text_area("Current Marketing Strategies", value=st.session_state.get('current_marketing', ''), placeholder="What are your ongoing marketing activities?")

if st.button('Generate My Video Marketing Plan'):
    # Construct the prompt for text generation
    prompt_text = (
        f"Generate a 2024 video marketing plan for a {business_type} targeting an audience characterized as: {target_audience}. "
        f"Include up to four video ideas for each month and 10 specific distribution strategies to maximize video views, "
        f"based on current marketing efforts: {current_marketing}."
    )

    # Call the OpenAI API for text generation
    try:
        response_text = openai.ChatCompletion.create(
            model="gpt-4",
            messages=[
                {"role": "system", "content": "You are an AI specializing in marketing strategy."},
                {"role": "user", "content": prompt_text}
            ]
        )
        marketing_plan = response_text.choices[0].message['content']
    except Exception as e:
        marketing_plan = f"Error in generating marketing plan: {e}"

    # Display the marketing plan
    st.markdown("### Your Customized Video Marketing Plan")
    st.write(marketing_plan)

    # Convert the marketing plan to a PDF and provide a download button
    if marketing_plan:
        html = f"<html><body><h2>Your Customized Video Marketing Plan</h2><p>{marketing_plan.replace('\n', '<br>')}</p></body></html>"
        pdf = pdfkit.from_string(html, False)
        
        st.download_button(
            label="Download your plan as PDF",
            data=pdf,
            file_name="video_marketing_plan.pdf",
            mime="application/octet-stream"
        )