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"
)
|