Spaces:
Sleeping
Sleeping
Upload 3 files
Browse files- app.py +26 -3
- formulas.py +84 -0
app.py
CHANGED
@@ -3,6 +3,7 @@ import google.generativeai as genai
|
|
3 |
import os
|
4 |
from dotenv import load_dotenv
|
5 |
from styles import get_custom_css
|
|
|
6 |
|
7 |
# Set page to wide mode to use full width
|
8 |
st.set_page_config(layout="wide")
|
@@ -50,6 +51,23 @@ with col1:
|
|
50 |
with st.expander('⚙️ Configuración Avanzada'):
|
51 |
target_audience = st.text_area('👥 Público Objetivo', height=70,
|
52 |
help='Describe tu cliente o público ideal')
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
53 |
temperature = st.slider('🌡️ Nivel de Creatividad', min_value=0.0, max_value=2.0, value=0.7,
|
54 |
help='Valores más altos hacen que el resultado sea más creativo pero menos enfocado')
|
55 |
|
@@ -65,6 +83,7 @@ with col1:
|
|
65 |
st.session_state.product_service = product_service
|
66 |
st.session_state.target_audience = target_audience
|
67 |
st.session_state.temperature = temperature
|
|
|
68 |
|
69 |
st.button('Generar Oferta 🎉', on_click=generate_offer)
|
70 |
|
@@ -73,13 +92,17 @@ with col2:
|
|
73 |
# Check if form has been submitted
|
74 |
if st.session_state.submitted:
|
75 |
with st.spinner('Creando tu oferta perfecta...'):
|
76 |
-
prompt = f"""Based on the following information, create a compelling offer:
|
77 |
Skills: {st.session_state.skills}
|
78 |
Product/Service: {st.session_state.product_service}
|
79 |
Target Audience: {st.session_state.target_audience if st.session_state.target_audience else 'General audience'}
|
80 |
|
|
|
|
|
|
|
81 |
Please create a professional and engaging offer that highlights the value proposition
|
82 |
-
and appeals to the target audience. Include a clear call to action.
|
|
|
83 |
|
84 |
try:
|
85 |
# Create generation config with temperature
|
@@ -89,7 +112,7 @@ with col2:
|
|
89 |
response = model.generate_content(prompt, generation_config=generation_config)
|
90 |
st.session_state.offer_result = response.text
|
91 |
|
92 |
-
# Display result
|
93 |
st.markdown('### 📝 Oferta Generada')
|
94 |
st.markdown(st.session_state.offer_result)
|
95 |
|
|
|
3 |
import os
|
4 |
from dotenv import load_dotenv
|
5 |
from styles import get_custom_css
|
6 |
+
from formulas import offer_formulas
|
7 |
|
8 |
# Set page to wide mode to use full width
|
9 |
st.set_page_config(layout="wide")
|
|
|
51 |
with st.expander('⚙️ Configuración Avanzada'):
|
52 |
target_audience = st.text_area('👥 Público Objetivo', height=70,
|
53 |
help='Describe tu cliente o público ideal')
|
54 |
+
|
55 |
+
# Selector de fórmula
|
56 |
+
formula_type = st.selectbox(
|
57 |
+
'📋 Tipo de Fórmula',
|
58 |
+
options=list(offer_formulas.keys()),
|
59 |
+
help='Selecciona el tipo de fórmula para tu oferta'
|
60 |
+
)
|
61 |
+
|
62 |
+
# Mostrar descripción de la fórmula seleccionada
|
63 |
+
with st.expander("ℹ️ Ver detalles de la fórmula"):
|
64 |
+
st.markdown(offer_formulas[formula_type]["description"])
|
65 |
+
|
66 |
+
# Mostrar ejemplos
|
67 |
+
st.subheader("Ejemplos:")
|
68 |
+
for example in offer_formulas[formula_type]["examples"][:3]: # Mostrar solo 3 ejemplos
|
69 |
+
st.markdown(f"• {example}")
|
70 |
+
|
71 |
temperature = st.slider('🌡️ Nivel de Creatividad', min_value=0.0, max_value=2.0, value=0.7,
|
72 |
help='Valores más altos hacen que el resultado sea más creativo pero menos enfocado')
|
73 |
|
|
|
83 |
st.session_state.product_service = product_service
|
84 |
st.session_state.target_audience = target_audience
|
85 |
st.session_state.temperature = temperature
|
86 |
+
st.session_state.formula_type = formula_type
|
87 |
|
88 |
st.button('Generar Oferta 🎉', on_click=generate_offer)
|
89 |
|
|
|
92 |
# Check if form has been submitted
|
93 |
if st.session_state.submitted:
|
94 |
with st.spinner('Creando tu oferta perfecta...'):
|
95 |
+
prompt = f"""Based on the following information, create a compelling offer using the {st.session_state.formula_type} formula:
|
96 |
Skills: {st.session_state.skills}
|
97 |
Product/Service: {st.session_state.product_service}
|
98 |
Target Audience: {st.session_state.target_audience if st.session_state.target_audience else 'General audience'}
|
99 |
|
100 |
+
Formula Description:
|
101 |
+
{offer_formulas[st.session_state.formula_type]["description"]}
|
102 |
+
|
103 |
Please create a professional and engaging offer that highlights the value proposition
|
104 |
+
and appeals to the target audience. Include a clear call to action.
|
105 |
+
Use the formula structure provided above to craft the offer."""
|
106 |
|
107 |
try:
|
108 |
# Create generation config with temperature
|
|
|
112 |
response = model.generate_content(prompt, generation_config=generation_config)
|
113 |
st.session_state.offer_result = response.text
|
114 |
|
115 |
+
# Display result
|
116 |
st.markdown('### 📝 Oferta Generada')
|
117 |
st.markdown(st.session_state.offer_result)
|
118 |
|
formulas.py
ADDED
@@ -0,0 +1,84 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Fórmulas con ejemplos y explicaciones
|
2 |
+
# Change from bullet_formulas to offer_formulas
|
3 |
+
offer_formulas = {
|
4 |
+
"La Fórmula 3 en 1": {
|
5 |
+
"description": """
|
6 |
+
Formula: [Feature + Benefit + Meaning]
|
7 |
+
|
8 |
+
This formula creates an instant connection by linking three key elements:
|
9 |
+
|
10 |
+
1. Feature: The main characteristic or aspect of your offer
|
11 |
+
2. Benefit: What it allows the user to achieve or obtain
|
12 |
+
3. Meaning: The deeper impact or transformation in their life
|
13 |
+
|
14 |
+
**Instructions for Creating Connection Bullets:**
|
15 |
+
|
16 |
+
1. Identify Your Core Feature:
|
17 |
+
- What makes your offer unique?
|
18 |
+
- What's the main characteristic?
|
19 |
+
- What's the standout element?
|
20 |
+
|
21 |
+
2. Transform into Benefits:
|
22 |
+
- How does this feature help them?
|
23 |
+
- What can they achieve with it?
|
24 |
+
- What becomes possible?
|
25 |
+
|
26 |
+
3. Add Deeper Meaning:
|
27 |
+
- How does it transform their life?
|
28 |
+
- What's the emotional impact?
|
29 |
+
- What does it mean for their identity?
|
30 |
+
|
31 |
+
**Structure Formats:**
|
32 |
+
|
33 |
+
1. "[Feature] para que puedas [Benefit] con lo que [Meaning]"
|
34 |
+
2. "Con [Feature] podrás [Benefit] permitiéndote [Meaning]"
|
35 |
+
3. "Gracias a [Feature] lograrás [Benefit] haciendo que [Meaning]"
|
36 |
+
4. "Mediante [Feature] conseguirás [Benefit] lo que significa [Meaning]"
|
37 |
+
5. "Usando [Feature] alcanzarás [Benefit] transformando [Meaning]"
|
38 |
+
""",
|
39 |
+
"examples": [
|
40 |
+
# Format 1: Feature + Benefit + Meaning
|
41 |
+
"El Sistema de meditación guiada para que puedas alcanzar la paz mental con lo que por fin dejarás de sentirte abrumado por el caos diario.",
|
42 |
+
"El Método de escritura veloz para que puedas crear contenido sin esfuerzo con lo que te convertirás en una máquina de generar ideas brillantes.",
|
43 |
+
"La Técnica de respiración ancestral para que puedas multiplicar tu energía con lo que te sentirás imparable desde que despiertas.",
|
44 |
+
# Format 2: With + Feature + Benefit + Meaning
|
45 |
+
"Con nuestro algoritmo de enfoque profundo podrás duplicar tu productividad permitiéndote disfrutar más tiempo con quienes amas.",
|
46 |
+
"Con el sistema de aprendizaje acelerado podrás dominar cualquier habilidad permitiéndote reinventar tu carrera cuando quieras.",
|
47 |
+
"Con la metodología de visualización cuántica podrás manifestar tus metas permitiéndote vivir la vida que siempre soñaste.",
|
48 |
+
# Format 3: Thanks to + Feature + Benefit + Meaning
|
49 |
+
"Gracias a nuestra tecnología de reprogramación mental lograrás superar tus miedos haciendo que te sientas invencible ante cualquier reto.",
|
50 |
+
"Gracias al protocolo de optimización del sueño lograrás descansar como un bebé haciendo que tu energía sea legendaria todo el día.",
|
51 |
+
"Gracias al sistema de gestión emocional lograrás mantener la calma en cualquier situación haciendo que los demás te vean como un líder nato.",
|
52 |
+
# Format 4: Through + Feature + Benefit + Meaning
|
53 |
+
"Mediante nuestro framework de creatividad conseguirás ideas brillantes lo que significa que nunca más te quedarás en blanco.",
|
54 |
+
"Mediante el método de networking estratégico conseguirás conexiones poderosas lo que significa que las oportunidades vendrán solas.",
|
55 |
+
"Mediante la técnica de storytelling magnético conseguirás cautivar a tu audiencia lo que significa que tu mensaje será inolvidable.",
|
56 |
+
# Format 5: Using + Feature + Benefit + Meaning
|
57 |
+
"Usando nuestro sistema de automatización mental alcanzarás el estado de flow transformando cada tarea en una experiencia placentera.",
|
58 |
+
"Usando el protocolo de productividad zen alcanzarás más con menos esfuerzo transformando tu relación con el trabajo para siempre.",
|
59 |
+
"Usando la metodología de impacto profundo alcanzarás el corazón de tu audiencia transformando seguidores en fans incondicionales."
|
60 |
+
]
|
61 |
+
},
|
62 |
+
# Puedes añadir más fórmulas aquí
|
63 |
+
"Fórmula Problema-Solución": {
|
64 |
+
"description": """
|
65 |
+
Formula: [Problem + Solution + Result]
|
66 |
+
|
67 |
+
Esta fórmula conecta directamente con el dolor del cliente:
|
68 |
+
|
69 |
+
1. Problem: El problema o dolor que enfrenta tu cliente
|
70 |
+
2. Solution: La solución que ofreces
|
71 |
+
3. Result: El resultado transformador que obtendrán
|
72 |
+
|
73 |
+
**Structure Formats:**
|
74 |
+
1. "¿Cansado de [Problem]? Descubre [Solution] y logra [Result]"
|
75 |
+
2. "Olvídate de [Problem] con [Solution] para conseguir [Result]"
|
76 |
+
3. "Dile adiós a [Problem] gracias a [Solution] y disfruta de [Result]"
|
77 |
+
""",
|
78 |
+
"examples": [
|
79 |
+
"¿Cansado de perder tiempo con estrategias que no funcionan? Descubre nuestro sistema probado y logra resultados en la mitad del tiempo.",
|
80 |
+
"Olvídate de las dietas restrictivas con nuestro método de nutrición intuitiva para conseguir el cuerpo que deseas sin sacrificios.",
|
81 |
+
"Dile adiós al insomnio gracias a nuestra técnica de relajación profunda y disfruta de un descanso reparador cada noche."
|
82 |
+
]
|
83 |
+
}
|
84 |
+
}
|