JeCabrera commited on
Commit
4d0ba24
·
verified ·
1 Parent(s): 206d9bd

Upload 6 files

Browse files
Files changed (4) hide show
  1. app.py +0 -23
  2. bonuses/generator.py +272 -256
  3. bullets/generator.py +452 -452
  4. formulas.py +15 -107
app.py CHANGED
@@ -10,11 +10,6 @@ import docx
10
  from PIL import Image
11
  import io
12
 
13
- # Import the bullet generator
14
- from bullets.generator import create_bullet_instruction
15
- # Import the bonus generator
16
- from bonuses.generator import create_bonus_instruction
17
-
18
  # Set page to wide mode to use full width
19
  st.set_page_config(layout="wide")
20
 
@@ -219,24 +214,6 @@ with col2:
219
  """
220
  instruction += creative_hook_instruction
221
 
222
- # Add instruction for generating benefit bullets based on the promise
223
- bullet_content = None
224
- if hasattr(st.session_state, 'file_content') and st.session_state.input_type in ["file", "both"]:
225
- bullet_content = st.session_state.file_content
226
-
227
- instruction += create_bullet_instruction(
228
- avatar_description=avatar_description,
229
- product_name=product_name,
230
- uploaded_content=bullet_content
231
- )
232
-
233
- # Add instruction for generating bonuses that complement the offer
234
- instruction += create_bonus_instruction(
235
- avatar_description=avatar_description,
236
- product_name=product_name,
237
- selected_formula_name=st.session_state.formula_type
238
- )
239
-
240
  # Add additional context based on input type
241
  if st.session_state.input_type == "manual":
242
  additional_context = f"""
 
10
  from PIL import Image
11
  import io
12
 
 
 
 
 
 
13
  # Set page to wide mode to use full width
14
  st.set_page_config(layout="wide")
15
 
 
214
  """
215
  instruction += creative_hook_instruction
216
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
217
  # Add additional context based on input type
218
  if st.session_state.input_type == "manual":
219
  additional_context = f"""
bonuses/generator.py CHANGED
@@ -1,257 +1,273 @@
1
- def create_bonus_instruction(avatar_description=None, product_name=None, selected_formula_name=None, target_audience=None, uploaded_content=None):
2
- """
3
- Creates instructions for generating compelling bonuses that complement the main offer.
4
-
5
- Args:
6
- avatar_description: Description of the target audience
7
- product_name: Name of the product or service
8
- selected_formula_name: Name of the formula used for the main offer
9
- target_audience: Description of the target audience (alternative to avatar_description)
10
- uploaded_content: Content from uploaded files (if any)
11
-
12
- Returns:
13
- str: Complete instruction for generating bonuses
14
- """
15
- # Check if any information is provided
16
- if not avatar_description and not product_name and not selected_formula_name and not target_audience and not uploaded_content:
17
- return """
18
- ADVERTENCIA: No se ha proporcionado ninguna información para generar bonos.
19
-
20
- Para crear bonos efectivos y relevantes, por favor proporciona al menos uno de los siguientes:
21
- - Descripción del público objetivo (avatar)
22
- - Nombre del producto o servicio
23
- - Fórmula seleccionada para la oferta principal
24
- - Audiencia objetivo
25
- - Contenido adicional relevante
26
-
27
- Sin esta información, los bonos generados serán genéricos y posiblemente menos efectivos para tu oferta específica.
28
- """
29
-
30
- # Base instruction for bonus generation
31
- base_instruction = """
32
-
33
- BONUS CREATION SECTION:
34
-
35
- You are now tasked with creating compelling bonuses that complement the main offer and overcome purchase objections.
36
-
37
- """
38
-
39
- # Add guidance based on available information
40
- guidance = ""
41
-
42
- # Check different combinations of available information
43
- if not avatar_description and not product_name and not target_audience and uploaded_content:
44
- # Only uploaded content provided
45
- guidance = """
46
- NOTA IMPORTANTE: Solo se ha proporcionado contenido adicional sin detalles específicos del público objetivo o producto.
47
- Analiza cuidadosamente el contenido subido para:
48
- - Identificar el público objetivo probable a partir del contexto
49
- - Determinar el producto/servicio que probablemente se está ofreciendo
50
- - Extraer puntos de dolor, objeciones y necesidades mencionadas en el contenido
51
- - Crear bonos que complementen la oferta principal inferida del contenido
52
- """
53
- elif avatar_description and not product_name and not uploaded_content:
54
- # Only avatar description provided
55
- guidance = """
56
- NOTA IMPORTANTE: Solo se ha proporcionado información del público objetivo, sin detalles del producto ni contenido adicional.
57
- Enfócate en crear bonos que aborden:
58
- - Puntos de dolor específicos mencionados en la descripción del avatar
59
- - Objeciones comunes que este público suele tener
60
- - Recursos que ayudarían a este público específico a implementar cualquier solución
61
- """
62
- elif product_name and not avatar_description and not uploaded_content:
63
- # Only product name provided
64
- guidance = """
65
- NOTA IMPORTANTE: Solo se ha proporcionado información del producto, sin detalles del público objetivo ni contenido adicional.
66
- Enfócate en crear bonos que:
67
- - Mejoren el valor del producto específico mencionado
68
- - Aborden objeciones comunes relacionadas con este tipo de producto
69
- - Proporcionen apoyo de implementación para este producto específico
70
- """
71
- elif avatar_description and product_name and not uploaded_content:
72
- # Avatar and product provided, no uploaded content
73
- guidance = """
74
- NOTA IMPORTANTE: Se ha proporcionado información tanto del público objetivo como del producto, pero no hay contenido adicional.
75
- Crea bonos altamente dirigidos que:
76
- - Conecten los beneficios específicos del producto con las necesidades del avatar
77
- - Aborden las objeciones más probables que este público tendría sobre este producto
78
- - Proporcionen apoyo de implementación adaptado a esta combinación de público y producto
79
- """
80
- elif avatar_description and uploaded_content and not product_name:
81
- # Avatar and uploaded content provided, no product
82
- guidance = """
83
- NOTA IMPORTANTE: Se ha proporcionado información del público objetivo y contenido adicional, pero no hay detalles específicos del producto.
84
- Analiza ambas fuentes para:
85
- - Inferir el producto/servicio probable del contexto
86
- - Identificar puntos de dolor específicos mencionados tanto en la descripción del avatar como en el contenido subido
87
- - Crear bonos que aborden las necesidades y objeciones más prominentes
88
- """
89
- elif product_name and uploaded_content and not avatar_description:
90
- # Product and uploaded content provided, no avatar
91
- guidance = """
92
- NOTA IMPORTANTE: Se ha proporcionado información del producto y contenido adicional, pero no hay detalles del público objetivo.
93
- Analiza ambas fuentes para:
94
- - Inferir el público objetivo probable del contexto
95
- - Identificar cómo el producto aborda las necesidades mencionadas en el contenido subido
96
- - Crear bonos que mejoren el valor del producto para el público probable
97
- """
98
-
99
- # Add information about available inputs
100
- input_information = f"""
101
- AVAILABLE INFORMATION FOR ANALYSIS:
102
-
103
- 1. TARGET AUDIENCE DESCRIPTION:
104
- {avatar_description if avatar_description else "No specific avatar description provided."}
105
-
106
- 2. PRODUCT/SERVICE NAME:
107
- {product_name if product_name else "No specific product name provided."}
108
-
109
- 3. UPLOADED CONTENT:
110
- {uploaded_content if uploaded_content else "No additional content uploaded."}
111
-
112
- {guidance}
113
-
114
- IMPORTANT: Analyze ALL available information above to identify specific pain points, objections, and needs that can be addressed through bonuses.
115
- """
116
-
117
- # Detailed instructions for creating effective bonuses with the new structure
118
- bonus_instructions = """
119
- SPECIFIC INSTRUCTIONS FOR CREATING BONUSES:
120
-
121
- STEP 1: ANALYZE THE AVATAR DEEPLY
122
- - Identify their specific pains, fears, objections, limiting beliefs, and problems
123
- - Look for emotional triggers that might prevent them from taking action
124
- - Determine what keeps them awake at night regarding this problem
125
- - Identify what they've tried before that hasn't worked
126
- - Understand their timeline expectations and what might make them hesitate
127
- - EXTRACT SPECIFIC DETAILS from the avatar description AND uploaded content
128
-
129
- STEP 2: ENUMERATE PROBLEMS AND PROPOSE SOLUTIONS
130
- For each problem identified in Step 1:
131
- - Clearly articulate the specific problem/objection
132
- - Propose a concrete solution that addresses it directly
133
- - Consider how this solution could be packaged as a high-value, low-effort bonus
134
- - Focus on tools, templates, checklists rather than additional training
135
- - Ensure each solution provides quick wins and immediate value
136
- """
137
-
138
- # Rest of the instructions remain the same
139
- remaining_instructions = """
140
- STEP 3: CREATE COMPELLING BONUSES BASED ON SOLUTIONS
141
- For each solution, create a bonus that:
142
- - Has an attractive, benefit-driven name
143
- - Addresses a specific objection or accelerates results
144
- - Provides tools/templates that reduce effort and time
145
- - Includes a clear monetary value statement
146
- - Contains an element of scarcity or urgency
147
-
148
- STEP 4: STRUCTURE EACH BONUS FOLLOWING THIS FRAMEWORK
149
- - Start with "BONO #X: [NOMBRE ATRACTIVO]" in bold
150
- - Describe what it is and how it helps in 2-4 sentences
151
- - Explain how it overcomes a specific objection or accelerates results
152
- - Include a monetary value statement (e.g., "Valor: $X")
153
- - Add a scarcity/urgency element (limited availability or time-sensitive)
154
-
155
- CRITICAL BONUS CREATION GUIDELINES:
156
-
157
- 1. COMPLEMENTARY VALUE:
158
- - Each bonus must complement (not compete with) the main offer: {product_name}
159
- - Tools and checklists are BETTER than additional training (less effort/time = higher perceived value)
160
- - The combined perceived value of all bonuses should EXCEED the value of the main offer
161
-
162
- 2. OBJECTION HANDLING:
163
- - Each bonus must address a specific concern or obstacle in the prospect's mind
164
- - Demonstrate why their limiting beliefs about success are incorrect
165
- - Solve their "next problem" before they encounter it
166
- - Show how the bonus removes friction from implementing the main offer
167
-
168
- 3. PSYCHOLOGICAL TRIGGERS:
169
- - Create a value discrepancy between price and total package worth
170
- - Communicate subconsciously that the main offer must be extremely valuable
171
- - Add scarcity and urgency elements to each bonus to maximize impact
172
- - Focus on immediate implementation and quick wins
173
-
174
- 4. BONUS TYPES TO PRIORITIZE:
175
- - Tools that simplify implementation of the main offer
176
- - Templates that save time and ensure success
177
- - Checklists that prevent mistakes and ensure completion
178
- - Quick-start guides that accelerate initial results
179
- - Swipe files or examples that can be immediately used
180
- - Limited access to exclusive resources or communities
181
- - Personal feedback or review opportunities
182
-
183
- 5. SCARCITY AND URGENCY EXAMPLES:
184
- a) Scarcity-based bonuses:
185
- - "Solo las personas que se inscriban en este programa tendrán acceso a estos bonos que nunca están a la venta en otro lugar."
186
- - "Solo quedan 3 cupos para mi sesión estratégica valorada en $500, si compras hoy, puedes obtener uno de los últimos lugares como bono."
187
-
188
- b) Urgency-based bonuses:
189
- - "Si compras hoy, agregaré el bono XYZ que normalmente cuesta $1,000, completamente gratis. Lo hago porque quiero premiar a quienes toman acción inmediata."
190
- - "Este bono estará disponible solo durante las próximas 48 horas, después de ese tiempo será retirado permanentemente."
191
-
192
- FORMATTING REQUIREMENTS:
193
- - Start with a brief introduction about the additional value (max 2 sentences)
194
- - Format each bonus as: "BONO #1: [Nombre Atractivo]" in bold
195
- - Follow with 2-4 sentences describing the bonus and its specific benefit
196
- - Include a value statement for each bonus
197
- - Add an urgency or scarcity element for each bonus
198
- - End with a total value statement for all bonuses combined
199
-
200
- EXAMPLES OF EFFECTIVE BONUSES:
201
-
202
- EXAMPLE 1:
203
- Y eso no es todo, también disfrutarás de estos beneficios adicionales:
204
-
205
- **BONO #1: Kit de Plantillas de Email "Respuesta Inmediata"**
206
- 5 plantillas de email probadas que generan respuestas en menos de 24 horas. Estas plantillas han sido optimizadas con técnicas de psicología persuasiva y han aumentado las tasas de respuesta en un 78% en pruebas con más de 1,000 envíos. Valor: $197 - Disponible solo para los primeros 50 inscritos.
207
-
208
- **BONO #2: Checklist "Propuesta Perfecta"**
209
- Una guía paso a paso con 27 puntos de verificación para asegurar que tus propuestas comerciales sean irresistibles. Elimina los errores comunes que hacen que los clientes digan "lo pensaré" y aumenta tu tasa de cierre en un 35%. Valor: $97 - Acceso por tiempo limitado.
210
-
211
- **BONO #3: Sesión Estratégica Personalizada de 30 Minutos**
212
- Una consulta privada donde analizaremos tu situación específica y crearemos un plan de acción personalizado. Identificaremos tus mayores oportunidades de crecimiento y los obstáculos que debes eliminar primero. Valor: $250 - Solo 10 espacios disponibles cada mes.
213
-
214
- Valor total de los bonos: $544 - Todo incluido hoy con tu inscripción.
215
-
216
- EXAMPLE 2:
217
- Como parte de esta oferta especial, recibirás estos valiosos recursos adicionales:
218
-
219
- **BONO #1: Biblioteca de Scripts de Ventas "Cierre Garantizado"**
220
- 10 scripts de conversación probados para superar las 7 objeciones más comunes en tu industria. Cada script incluye respuestas específicas, preguntas de control y frases de transición que han generado más de $1.2 millones en ventas. Valor: $297 - Disponible solo esta semana.
221
-
222
- **BONO #2: Software "Cliente Tracker Pro"**
223
- Una herramienta exclusiva que automatiza el seguimiento de prospectos y te alerta exactamente cuándo contactarlos para maximizar conversiones. Reduce el tiempo de gestión en un 68% y aumenta la tasa de conversión en un 23%. Valor: $197/año - Acceso gratuito por 12 meses.
224
-
225
- **BONO #3: Comunidad VIP "Crecimiento Acelerado"**
226
- Acceso a nuestro grupo privado con más de 500 profesionales de tu industria, sesiones de preguntas semanales con expertos y biblioteca de recursos exclusivos. El 87% de los miembros reportan un aumento de ingresos en los primeros 60 días. Valor: $47/mes - Membresía gratuita por 6 meses.
227
-
228
- **BONO #4: Análisis Competitivo Personalizado**
229
- Un informe detallado que analiza a tus 3 principales competidores, identifica sus debilidades y te muestra exactamente cómo posicionarte para captar su clientela. Incluye estrategias específicas para diferenciarte inmediatamente. Valor: $497 - Solo para los primeros 25 clientes.
230
-
231
- Valor total de bonos: $1,273 - Todo incluido hoy sin costo adicional.
232
-
233
- EXAMPLE 3:
234
- Para maximizar tus resultados, he incluido estos recursos exclusivos:
235
-
236
- **BONO #1: Calculadora de ROI "Inversión Inteligente"**
237
- Una herramienta digital que proyecta con precisión tus retornos basados en 5 años de datos de clientes reales. Te muestra exactamente cuánto ganarás y en qué plazo, eliminando la incertidumbre de tu inversión. Valor: $147 - Acceso inmediato con tu compra hoy.
238
-
239
- **BONO #2: Masterclass "Optimización Rápida"**
240
- Una sesión de 60 minutos donde te muestro los 3 ajustes que puedes implementar en 24 horas para ver resultados inmediatos. El 92% de los participantes reportan mejoras medibles en la primera semana. Valor: $197 - La grabación se elimina en 30 días.
241
-
242
- **BONO #3: Plantillas "Listo para Implementar"**
243
- Un conjunto de 15 documentos, hojas de cálculo y presentaciones que puedes personalizar en minutos para implementar lo aprendido sin demora. Ahorra más de 40 horas de trabajo de preparación. Valor: $97 - Actualizado trimestralmente solo para clientes actuales.
244
-
245
- **BONO #4: Certificación "Especialista Verificado"**
246
- Completa el programa y recibe una certificación oficial que puedes mostrar en tu perfil profesional. Nuestros certificados son reconocidos por más de 200 empresas que buscan activamente profesionales con estas habilidades. Valor: $297 - Las certificaciones se emiten solo 4 veces al año.
247
-
248
- **BONO #5: Sesiones de "Implementación Guiada"**
249
- Dos sesiones grupales mensuales donde implementamos juntos, resolvemos dudas específicas y superamos bloqueos. El 78% de quienes asisten a estas sesiones implementan el doble de rápido que quienes no lo hacen. Valor: $97/mes - Acceso por 3 meses incluido.
250
-
251
- Valor total de bonos: $1,032 - Todo incluido con tu inversión hoy.
252
- """
253
-
254
- # Combine all instructions
255
- complete_instruction = base_instruction + input_information + bonus_instructions + remaining_instructions
256
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
257
  return complete_instruction
 
1
+ def create_bonus_instruction(avatar_description=None, product_name=None, selected_formula_name=None, target_audience=None, uploaded_content=None):
2
+ """
3
+ Creates instructions for generating compelling bonuses that complement the main offer.
4
+
5
+ Args:
6
+ avatar_description: Description of the target audience
7
+ product_name: Name of the product or service
8
+ selected_formula_name: Name of the formula used for the main offer
9
+ target_audience: Description of the target audience (alternative to avatar_description)
10
+ uploaded_content: Content from uploaded files (if any)
11
+
12
+ Returns:
13
+ str: Complete instruction for generating bonuses
14
+ """
15
+ # Check if any information is provided
16
+ if not avatar_description and not product_name and not selected_formula_name and not target_audience and not uploaded_content:
17
+ return """
18
+ ADVERTENCIA: No se ha proporcionado ninguna información para generar bonos.
19
+
20
+ Para crear bonos efectivos y relevantes, por favor proporciona al menos uno de los siguientes:
21
+ - Descripción del público objetivo (avatar)
22
+ - Nombre del producto o servicio
23
+ - Fórmula seleccionada para la oferta principal
24
+ - Audiencia objetivo
25
+ - Contenido adicional relevante
26
+
27
+ Sin esta información, los bonos generados serán genéricos y posiblemente menos efectivos para tu oferta específica.
28
+ """
29
+
30
+ # Base instruction for bonus generation
31
+ base_instruction = """
32
+
33
+ BONUS CREATION SECTION:
34
+
35
+ You are now tasked with creating compelling bonuses that complement the main offer and overcome purchase objections.
36
+
37
+ IMPORTANT: After presenting the main offer and the benefit bullets section, add a section with 3-5 powerful bonuses that enhance the value proposition.
38
+
39
+ Start the bonuses section with an introduction like:
40
+ "Además, al aprovechar esta oferta también recibirás estos bonos exclusivos:" or "Y eso no es todo, también disfrutarás de estos valiosos recursos adicionales:" or "Como parte de esta oferta especial, obtendrás estos bonos de alto valor:"
41
+
42
+ For the bonus creation section:
43
+
44
+ You are a world-class expert in creating irresistible bonus packages that increase perceived value and overcome objections.
45
+
46
+ OBJECTIVE:
47
+ - Generate 3-5 compelling and specific bonuses in Spanish
48
+ - Each bonus must address a specific objection or accelerate results
49
+ - Connect emotionally with the target audience's needs
50
+ - Provide tools/templates that reduce effort and time
51
+ - Include clear monetary value statements
52
+ - Add elements of scarcity or urgency
53
+ """
54
+
55
+ # Add guidance based on available information
56
+ guidance = ""
57
+
58
+ # Check different combinations of available information
59
+ if not avatar_description and not product_name and not target_audience and uploaded_content:
60
+ # Only uploaded content provided
61
+ guidance = """
62
+ NOTA IMPORTANTE: Solo se ha proporcionado contenido adicional sin detalles específicos del público objetivo o producto.
63
+ Analiza cuidadosamente el contenido subido para:
64
+ - Identificar el público objetivo probable a partir del contexto
65
+ - Determinar el producto/servicio que probablemente se está ofreciendo
66
+ - Extraer puntos de dolor, objeciones y necesidades mencionadas en el contenido
67
+ - Crear bonos que complementen la oferta principal inferida del contenido
68
+ """
69
+ elif avatar_description and not product_name and not uploaded_content:
70
+ # Only avatar description provided
71
+ guidance = """
72
+ NOTA IMPORTANTE: Solo se ha proporcionado información del público objetivo, sin detalles del producto ni contenido adicional.
73
+ Enfócate en crear bonos que aborden:
74
+ - Puntos de dolor específicos mencionados en la descripción del avatar
75
+ - Objeciones comunes que este público suele tener
76
+ - Recursos que ayudarían a este público específico a implementar cualquier solución
77
+ """
78
+ elif product_name and not avatar_description and not uploaded_content:
79
+ # Only product name provided
80
+ guidance = """
81
+ NOTA IMPORTANTE: Solo se ha proporcionado información del producto, sin detalles del público objetivo ni contenido adicional.
82
+ Enfócate en crear bonos que:
83
+ - Mejoren el valor del producto específico mencionado
84
+ - Aborden objeciones comunes relacionadas con este tipo de producto
85
+ - Proporcionen apoyo de implementación para este producto específico
86
+ """
87
+ elif avatar_description and product_name and not uploaded_content:
88
+ # Avatar and product provided, no uploaded content
89
+ guidance = """
90
+ NOTA IMPORTANTE: Se ha proporcionado información tanto del público objetivo como del producto, pero no hay contenido adicional.
91
+ Crea bonos altamente dirigidos que:
92
+ - Conecten los beneficios específicos del producto con las necesidades del avatar
93
+ - Aborden las objeciones más probables que este público tendría sobre este producto
94
+ - Proporcionen apoyo de implementación adaptado a esta combinación de público y producto
95
+ """
96
+ elif avatar_description and uploaded_content and not product_name:
97
+ # Avatar and uploaded content provided, no product
98
+ guidance = """
99
+ NOTA IMPORTANTE: Se ha proporcionado información del público objetivo y contenido adicional, pero no hay detalles específicos del producto.
100
+ Analiza ambas fuentes para:
101
+ - Inferir el producto/servicio probable del contexto
102
+ - Identificar puntos de dolor específicos mencionados tanto en la descripción del avatar como en el contenido subido
103
+ - Crear bonos que aborden las necesidades y objeciones más prominentes
104
+ """
105
+ elif product_name and uploaded_content and not avatar_description:
106
+ # Product and uploaded content provided, no avatar
107
+ guidance = """
108
+ NOTA IMPORTANTE: Se ha proporcionado información del producto y contenido adicional, pero no hay detalles del público objetivo.
109
+ Analiza ambas fuentes para:
110
+ - Inferir el público objetivo probable del contexto
111
+ - Identificar cómo el producto aborda las necesidades mencionadas en el contenido subido
112
+ - Crear bonos que mejoren el valor del producto para el público probable
113
+ """
114
+
115
+ # Add information about available inputs
116
+ input_information = f"""
117
+ AVAILABLE INFORMATION FOR ANALYSIS:
118
+
119
+ 1. TARGET AUDIENCE DESCRIPTION:
120
+ {avatar_description if avatar_description else "No specific avatar description provided."}
121
+
122
+ 2. PRODUCT/SERVICE NAME:
123
+ {product_name if product_name else "No specific product name provided."}
124
+
125
+ 3. UPLOADED CONTENT:
126
+ {uploaded_content if uploaded_content else "No additional content uploaded."}
127
+
128
+ {guidance}
129
+
130
+ IMPORTANT: Analyze ALL available information above to identify specific pain points, objections, and needs that can be addressed through bonuses.
131
+ """
132
+
133
+ # Detailed instructions for creating effective bonuses with the new structure
134
+ bonus_instructions = """
135
+ SPECIFIC INSTRUCTIONS FOR CREATING BONUSES:
136
+
137
+ STEP 1: ANALYZE THE AVATAR DEEPLY
138
+ - Identify their specific pains, fears, objections, limiting beliefs, and problems
139
+ - Look for emotional triggers that might prevent them from taking action
140
+ - Determine what keeps them awake at night regarding this problem
141
+ - Identify what they've tried before that hasn't worked
142
+ - Understand their timeline expectations and what might make them hesitate
143
+ - EXTRACT SPECIFIC DETAILS from the avatar description AND uploaded content
144
+
145
+ STEP 2: ENUMERATE PROBLEMS AND PROPOSE SOLUTIONS
146
+ For each problem identified in Step 1:
147
+ - Clearly articulate the specific problem/objection
148
+ - Propose a concrete solution that addresses it directly
149
+ - Consider how this solution could be packaged as a high-value, low-effort bonus
150
+ - Focus on tools, templates, checklists rather than additional training
151
+ - Ensure each solution provides quick wins and immediate value
152
+ """
153
+
154
+ # Rest of the instructions remain the same
155
+ remaining_instructions = """
156
+ STEP 3: CREATE COMPELLING BONUSES BASED ON SOLUTIONS
157
+ For each solution, create a bonus that:
158
+ - Has an attractive, benefit-driven name
159
+ - Addresses a specific objection or accelerates results
160
+ - Provides tools/templates that reduce effort and time
161
+ - Includes a clear monetary value statement
162
+ - Contains an element of scarcity or urgency
163
+
164
+ STEP 4: STRUCTURE EACH BONUS FOLLOWING THIS FRAMEWORK
165
+ - Start with "BONO #X: [NOMBRE ATRACTIVO]" in bold
166
+ - Describe what it is and how it helps in 2-4 sentences
167
+ - Explain how it overcomes a specific objection or accelerates results
168
+ - Include a monetary value statement (e.g., "Valor: $X")
169
+ - Add a scarcity/urgency element (limited availability or time-sensitive)
170
+
171
+ CRITICAL BONUS CREATION GUIDELINES:
172
+
173
+ 1. COMPLEMENTARY VALUE:
174
+ - Each bonus must complement (not compete with) the main offer: {product_name}
175
+ - Tools and checklists are BETTER than additional training (less effort/time = higher perceived value)
176
+ - The combined perceived value of all bonuses should EXCEED the value of the main offer
177
+
178
+ 2. OBJECTION HANDLING:
179
+ - Each bonus must address a specific concern or obstacle in the prospect's mind
180
+ - Demonstrate why their limiting beliefs about success are incorrect
181
+ - Solve their "next problem" before they encounter it
182
+ - Show how the bonus removes friction from implementing the main offer
183
+
184
+ 3. PSYCHOLOGICAL TRIGGERS:
185
+ - Create a value discrepancy between price and total package worth
186
+ - Communicate subconsciously that the main offer must be extremely valuable
187
+ - Add scarcity and urgency elements to each bonus to maximize impact
188
+ - Focus on immediate implementation and quick wins
189
+
190
+ 4. BONUS TYPES TO PRIORITIZE:
191
+ - Tools that simplify implementation of the main offer
192
+ - Templates that save time and ensure success
193
+ - Checklists that prevent mistakes and ensure completion
194
+ - Quick-start guides that accelerate initial results
195
+ - Swipe files or examples that can be immediately used
196
+ - Limited access to exclusive resources or communities
197
+ - Personal feedback or review opportunities
198
+
199
+ 5. SCARCITY AND URGENCY EXAMPLES:
200
+ a) Scarcity-based bonuses:
201
+ - "Solo las personas que se inscriban en este programa tendrán acceso a estos bonos que nunca están a la venta en otro lugar."
202
+ - "Solo quedan 3 cupos para mi sesión estratégica valorada en $500, si compras hoy, puedes obtener uno de los últimos lugares como bono."
203
+
204
+ b) Urgency-based bonuses:
205
+ - "Si compras hoy, agregaré el bono XYZ que normalmente cuesta $1,000, completamente gratis. Lo hago porque quiero premiar a quienes toman acción inmediata."
206
+ - "Este bono estará disponible solo durante las próximas 48 horas, después de ese tiempo será retirado permanentemente."
207
+
208
+ FORMATTING REQUIREMENTS:
209
+ - Start with a brief introduction about the additional value (max 2 sentences)
210
+ - Format each bonus as: "BONO #1: [Nombre Atractivo]" in bold
211
+ - Follow with 2-4 sentences describing the bonus and its specific benefit
212
+ - Include a value statement for each bonus
213
+ - Add an urgency or scarcity element for each bonus
214
+ - End with a total value statement for all bonuses combined
215
+
216
+ EXAMPLES OF EFFECTIVE BONUSES:
217
+
218
+ EXAMPLE 1:
219
+ Y eso no es todo, también disfrutarás de estos beneficios adicionales:
220
+
221
+ **BONO #1: Kit de Plantillas de Email "Respuesta Inmediata"**
222
+ 5 plantillas de email probadas que generan respuestas en menos de 24 horas. Estas plantillas han sido optimizadas con técnicas de psicología persuasiva y han aumentado las tasas de respuesta en un 78% en pruebas con más de 1,000 envíos. Valor: $197 - Disponible solo para los primeros 50 inscritos.
223
+
224
+ **BONO #2: Checklist "Propuesta Perfecta"**
225
+ Una guía paso a paso con 27 puntos de verificación para asegurar que tus propuestas comerciales sean irresistibles. Elimina los errores comunes que hacen que los clientes digan "lo pensaré" y aumenta tu tasa de cierre en un 35%. Valor: $97 - Acceso por tiempo limitado.
226
+
227
+ **BONO #3: Sesión Estratégica Personalizada de 30 Minutos**
228
+ Una consulta privada donde analizaremos tu situación específica y crearemos un plan de acción personalizado. Identificaremos tus mayores oportunidades de crecimiento y los obstáculos que debes eliminar primero. Valor: $250 - Solo 10 espacios disponibles cada mes.
229
+
230
+ Valor total de los bonos: $544 - Todo incluido hoy con tu inscripción.
231
+
232
+ EXAMPLE 2:
233
+ Como parte de esta oferta especial, recibirás estos valiosos recursos adicionales:
234
+
235
+ **BONO #1: Biblioteca de Scripts de Ventas "Cierre Garantizado"**
236
+ 10 scripts de conversación probados para superar las 7 objeciones más comunes en tu industria. Cada script incluye respuestas específicas, preguntas de control y frases de transición que han generado más de $1.2 millones en ventas. Valor: $297 - Disponible solo esta semana.
237
+
238
+ **BONO #2: Software "Cliente Tracker Pro"**
239
+ Una herramienta exclusiva que automatiza el seguimiento de prospectos y te alerta exactamente cuándo contactarlos para maximizar conversiones. Reduce el tiempo de gestión en un 68% y aumenta la tasa de conversión en un 23%. Valor: $197/año - Acceso gratuito por 12 meses.
240
+
241
+ **BONO #3: Comunidad VIP "Crecimiento Acelerado"**
242
+ Acceso a nuestro grupo privado con más de 500 profesionales de tu industria, sesiones de preguntas semanales con expertos y biblioteca de recursos exclusivos. El 87% de los miembros reportan un aumento de ingresos en los primeros 60 días. Valor: $47/mes - Membresía gratuita por 6 meses.
243
+
244
+ **BONO #4: Análisis Competitivo Personalizado**
245
+ Un informe detallado que analiza a tus 3 principales competidores, identifica sus debilidades y te muestra exactamente cómo posicionarte para captar su clientela. Incluye estrategias específicas para diferenciarte inmediatamente. Valor: $497 - Solo para los primeros 25 clientes.
246
+
247
+ Valor total de bonos: $1,273 - Todo incluido hoy sin costo adicional.
248
+
249
+ EXAMPLE 3:
250
+ Para maximizar tus resultados, he incluido estos recursos exclusivos:
251
+
252
+ **BONO #1: Calculadora de ROI "Inversión Inteligente"**
253
+ Una herramienta digital que proyecta con precisión tus retornos basados en 5 años de datos de clientes reales. Te muestra exactamente cuánto ganarás y en qué plazo, eliminando la incertidumbre de tu inversión. Valor: $147 - Acceso inmediato con tu compra hoy.
254
+
255
+ **BONO #2: Masterclass "Optimización Rápida"**
256
+ Una sesión de 60 minutos donde te muestro los 3 ajustes que puedes implementar en 24 horas para ver resultados inmediatos. El 92% de los participantes reportan mejoras medibles en la primera semana. Valor: $197 - La grabación se elimina en 30 días.
257
+
258
+ **BONO #3: Plantillas "Listo para Implementar"**
259
+ Un conjunto de 15 documentos, hojas de cálculo y presentaciones que puedes personalizar en minutos para implementar lo aprendido sin demora. Ahorra más de 40 horas de trabajo de preparación. Valor: $97 - Actualizado trimestralmente solo para clientes actuales.
260
+
261
+ **BONO #4: Certificación "Especialista Verificado"**
262
+ Completa el programa y recibe una certificación oficial que puedes mostrar en tu perfil profesional. Nuestros certificados son reconocidos por más de 200 empresas que buscan activamente profesionales con estas habilidades. Valor: $297 - Las certificaciones se emiten solo 4 veces al año.
263
+
264
+ **BONO #5: Sesiones de "Implementación Guiada"**
265
+ Dos sesiones grupales mensuales donde implementamos juntos, resolvemos dudas específicas y superamos bloqueos. El 78% de quienes asisten a estas sesiones implementan el doble de rápido que quienes no lo hacen. Valor: $97/mes - Acceso por 3 meses incluido.
266
+
267
+ Valor total de bonos: $1,032 - Todo incluido con tu inversión hoy.
268
+ """
269
+
270
+ # Combine all instructions
271
+ complete_instruction = base_instruction + input_information + bonus_instructions + remaining_instructions
272
+
273
  return complete_instruction
bullets/generator.py CHANGED
@@ -1,453 +1,453 @@
1
- import random
2
-
3
- def create_bullet_instruction(avatar_description=None, product_name=None, uploaded_content=None):
4
- """
5
- Creates the instruction for generating benefit bullets.
6
- The model will randomly choose between different bullet formulas.
7
-
8
- Args:
9
- avatar_description: Description of the target audience
10
- product_name: Name of the product or service
11
- uploaded_content: Content from uploaded files (if any)
12
-
13
- Returns:
14
- str: The complete instruction for generating bullets
15
- """
16
- # Base instruction that applies to all formulas
17
- base_instruction = """
18
- IMPORTANT: After creating the main offer, add a section with 5 powerful benefit bullets that reinforce the promise.
19
-
20
- Start the bullets section with an introduction like:
21
- "Además, al aprovechar esta oferta también obtendrás:" or "Y eso no es todo, también disfrutarás de estos beneficios adicionales:" or "Con esta solución también conseguirás:"
22
-
23
- For the benefit bullets section:
24
-
25
- You are a world-class expert copywriter, experienced in creating benefits that emotionally connect and address the desires, problems, and motivations of the target audience.
26
-
27
- OBJECTIVE:
28
- - Generate 5 convincing and specific benefit bullets in Spanish
29
- - Connect emotionally with the audience
30
- - Address real desires, problems, and motivations
31
- - Maintain natural and conversational language
32
- - Orient each benefit towards action
33
-
34
- FORMAT RULES:
35
- - Each benefit must start with "• "
36
- - One benefit per line
37
- - No explanations or categories
38
- - Add a line break between each benefit
39
- - Never include : symbols in bullets
40
- - Never use exclamation marks (!) in any bullet
41
- - Each benefit must be a complete and concise phrase
42
- - Do not use any emojis in the bullets
43
- - Use natural, conversational language (avoid formal or technical jargon)
44
-
45
- IMPORTANT:
46
- - Each benefit must be ultra-specific with concrete, measurable outcomes
47
- - NEVER use generic phrases like "mejorar tu vida" or "aumentar tu productividad"
48
- - Always include specific numbers, percentages, or exact timeframes
49
- - Each bullet must solve a very specific problem with a detailed solution
50
- - Include at least one bullet that directly counters a common objection with evidence
51
- - Each bullet should contain a clear call to action with a specific next step
52
- - Avoid all generalizations - be precise about exactly what the user will get
53
- - Maintain a persuasive but honest tone with verifiable claims
54
- - Focus on tangible and measurable results that can be verified
55
- - Ensure each bullet addresses a different aspect of the offer
56
- - Write in a natural, conversational tone as if speaking directly to the reader
57
- - Never use exclamation marks in the bullets
58
- """
59
-
60
- # Add guidance based on available information
61
- guidance = ""
62
-
63
- # Check different combinations of available information
64
- if not avatar_description and not product_name and not uploaded_content:
65
- return """
66
- ADVERTENCIA: No se ha proporcionado ninguna información para generar los bullets.
67
-
68
- Para obtener bullets más efectivos y personalizados, por favor proporciona al menos uno de los siguientes:
69
- - Descripción del público objetivo (avatar)
70
- - Nombre del producto o servicio
71
- - Contenido adicional relevante
72
-
73
- Sin esta información, los bullets generados serán genéricos y posiblemente menos efectivos para tu oferta específica.
74
- """
75
- elif not avatar_description and not product_name and uploaded_content:
76
- # Only uploaded content provided
77
- guidance = """
78
- NOTA IMPORTANTE: Solo se ha proporcionado contenido adicional sin detalles específicos del público objetivo o producto.
79
- Analiza cuidadosamente el contenido subido para:
80
- - Identificar el público objetivo probable a partir del contexto
81
- - Determinar el producto/servicio que probablemente se está ofreciendo
82
- - Extraer puntos de dolor, objeciones y necesidades mencionadas en el contenido
83
- - Crear beneficios que aborden específicamente los problemas identificados en el contenido
84
- """
85
- elif avatar_description and not product_name and not uploaded_content:
86
- # Only avatar description provided
87
- guidance = """
88
- NOTA IMPORTANTE: Solo se ha proporcionado información del público objetivo, sin detalles del producto ni contenido adicional.
89
- Enfócate en crear beneficios que:
90
- - Aborden los puntos de dolor específicos mencionados en la descripción del avatar
91
- - Resuelvan las objeciones comunes que este público suele tener
92
- - Proporcionen soluciones a los problemas específicos de este público
93
- - Conecten emocionalmente con las motivaciones de este avatar
94
- """
95
- elif product_name and not avatar_description and not uploaded_content:
96
- # Only product name provided
97
- guidance = """
98
- NOTA IMPORTANTE: Solo se ha proporcionado información del producto, sin detalles del público objetivo ni contenido adicional.
99
- Enfócate en crear beneficios que:
100
- - Destaquen las características únicas de este producto específico
101
- - Aborden objeciones comunes relacionadas con este tipo de producto
102
- - Muestren resultados medibles que este producto puede proporcionar
103
- - Diferencien este producto de alternativas genéricas
104
- """
105
- elif avatar_description and product_name and not uploaded_content:
106
- # Avatar and product provided, no uploaded content
107
- guidance = """
108
- NOTA IMPORTANTE: Se ha proporcionado información tanto del público objetivo como del producto, pero no hay contenido adicional.
109
- Crea beneficios altamente dirigidos que:
110
- - Conecten las características específicas del producto con las necesidades del avatar
111
- - Aborden las objeciones más probables que este público tendría sobre este producto
112
- - Muestren cómo este producto específico resuelve los problemas concretos de este avatar
113
- - Destaquen los resultados medibles que este público específico obtendrá con este producto
114
- """
115
- elif avatar_description and uploaded_content and not product_name:
116
- # Avatar and uploaded content provided, no product
117
- guidance = """
118
- NOTA IMPORTANTE: Se ha proporcionado información del público objetivo y contenido adicional, pero no hay detalles específicos del producto.
119
- Analiza ambas fuentes para:
120
- - Inferir el producto/servicio probable del contexto
121
- - Identificar puntos de dolor específicos mencionados tanto en la descripción del avatar como en el contenido subido
122
- - Crear beneficios que aborden las necesidades y objeciones más prominentes
123
- - Asegurar que los beneficios sean relevantes tanto para el avatar como para el contexto del contenido
124
- """
125
- elif product_name and uploaded_content and not avatar_description:
126
- # Product and uploaded content provided, no avatar
127
- guidance = """
128
- NOTA IMPORTANTE: Se ha proporcionado información del producto y contenido adicional, pero no hay detalles del público objetivo.
129
- Analiza ambas fuentes para:
130
- - Inferir el público objetivo probable del contexto
131
- - Identificar cómo el producto aborda las necesidades mencionadas en el contenido subido
132
- - Crear beneficios que destaquen cómo el producto resuelve problemas específicos mencionados en el contenido
133
- - Enfocarte en resultados medibles que el producto puede proporcionar según el contexto
134
- """
135
- elif avatar_description and product_name and uploaded_content:
136
- # All information provided
137
- guidance = """
138
- NOTA IMPORTANTE: Se ha proporcionado información completa sobre el público objetivo, producto y contenido adicional.
139
- Utiliza todas las fuentes para:
140
- - Crear beneficios ultra-específicos que conecten perfectamente el producto con las necesidades del avatar
141
- - Extraer detalles concretos del contenido subido para hacer los beneficios más relevantes y personalizados
142
- - Abordar objeciones específicas mencionadas en cualquiera de las fuentes
143
- - Crear beneficios que destaquen exactamente cómo este producto resuelve los problemas concretos de este avatar
144
- """
145
-
146
- # Add information about available inputs
147
- input_information = f"""
148
-
149
- AVAILABLE INFORMATION FOR ANALYSIS:
150
-
151
- 1. TARGET AUDIENCE DESCRIPTION:
152
- {avatar_description if avatar_description else "No specific avatar description provided."}
153
-
154
- 2. PRODUCT/SERVICE NAME:
155
- {product_name if product_name else "No specific product name provided."}
156
-
157
- 3. UPLOADED CONTENT:
158
- {uploaded_content if uploaded_content else "No additional content uploaded."}
159
-
160
- {guidance}
161
-
162
- IMPORTANT: Analyze ALL available information above to create bullets that specifically address the needs, desires, and objections of this audience for this specific product/service.
163
- """
164
-
165
- # Rest of the function remains the same...
166
- # Multiple formula instructions (unchanged)
167
- formula_instructions = """
168
- IMPORTANT: Choose ONE of the following bullet formulas at random and use it consistently for ALL 5 bullets:
169
-
170
- FORMULA 1 - STANDARD BENEFIT:
171
- - Must be relevant to a specific segment of your target audience
172
- - Must show a specific result with exact numbers or percentages
173
- - Must include a precise emotional element tied to a specific desire
174
- - Must eliminate a specific objection with evidence
175
- - Must inspire immediate action with a clear next step
176
-
177
- EXAMPLE FORMAT FOR FORMULA 1:
178
- •Transforma tu estrategia de email marketing con plantillas que aumentan la tasa de apertura un 37% en 14 días, incluso si nunca has escrito una campaña exitosa.
179
-
180
- FORMULA 2 - 3 EN 1 (FEATURE + BENEFIT + MEANING):
181
- Formula: [Feature + Benefit + Meaning]
182
-
183
- This formula creates an instant connection by linking three key elements:
184
- 1. Feature: A specific, tangible characteristic of your offer
185
- 2. Benefit: The exact, measurable result it delivers
186
- 3. Meaning: The precise transformation in their life
187
-
188
- Instructions for Creating Connection Bullets:
189
- 1. Identify Your Core Feature:
190
- - What specific component makes your offer unique?
191
- - What exact characteristic can be measured?
192
- - What concrete element can they use immediately?
193
-
194
- 2. Transform into Benefits:
195
- - What specific metric will improve?
196
- - What exact problem will it solve?
197
- - What measurable outcome will they achieve?
198
-
199
- 3. Add Deeper Meaning:
200
- - How exactly will it transform their specific situation?
201
- - What precise emotional impact will they experience?
202
- - What concrete identity shift will occur?
203
-
204
- Structure Formats:
205
- 1. "[Specific Feature] para que puedas [Measurable Benefit] con lo que [Concrete Meaning]"
206
- 2. "Con [Specific Feature] podrás [Measurable Benefit] permitiéndote [Concrete Meaning]"
207
- 3. "Gracias a [Specific Feature] lograrás [Measurable Benefit] haciendo que [Concrete Meaning]"
208
- 4. "Mediante [Specific Feature] conseguirás [Measurable Benefit] lo que significa [Concrete Meaning]"
209
- 5. "Usando [Specific Feature] alcanzarás [Measurable Benefit] transformando [Concrete Meaning]"
210
-
211
- EXAMPLES FOR FORMULA 2:
212
- • El Sistema de inmersión bilingüe de 21 días para que puedas mantener conversaciones de 15 minutos en inglés con lo que por fin dejarás de depender de traductores en tus reuniones internacionales.
213
-
214
- • Con nuestro algoritmo de enfoque profundo de 3 pasos podrás completar proyectos en 4 horas en lugar de 8 permitiéndote disfrutar 20 horas adicionales semanales con tu familia.
215
-
216
- • Gracias a nuestra tecnología de reprogramación mental de 28 días lograrás superar el miedo a hablar en público haciendo que te sientas seguro al presentar ante audiencias de hasta 500 personas.
217
-
218
- • Mediante nuestro framework de creatividad de 5 fases conseguirás generar 10 ideas innovadoras por sesión lo que significa que nunca más perderás oportunidades de negocio por falta de propuestas.
219
-
220
- • Usando nuestro sistema de automatización de tareas alcanzarás una reducción del 68% en tiempo administrativo transformando 15 horas semanales de trabajo tedioso en tiempo productivo para hacer crecer tu negocio.
221
-
222
- FORMULA 3 - ANTI-PROCRASTINACIÓN (ACTION + RESULT + TIME):
223
- Formula: [Action + Result + Time]
224
-
225
- This formula uses a clear action followed by a direct result and the time in which that result will be achieved. You can modify the order of elements as needed.
226
-
227
- Instructions:
228
- 1. Establish the clear action that the user must take (specific action with details)
229
- 2. Define the exact result with numbers/percentages that the user will obtain
230
- 3. Indicate the precise time period with exact days/weeks/months
231
-
232
- Response Format (choose one for each bullet):
233
- 1. Action + Result + Time
234
- 2. Action + Time + Result
235
- 3. Result + Action + Time
236
- 4. Result + Time + Action
237
- 5. Time + Action + Result
238
- 6. Time + Result + Action
239
- 7. Result + Time + Action
240
-
241
- EXAMPLES FOR FORMULA 3:
242
- • Implementa nuestra estrategia de email marketing y aumenta tus ventas un 27% en los próximos 30 días, incluso si tu lista tiene menos de 500 suscriptores.
243
-
244
- • Aplica las 3 técnicas de copywriting en tus próximos 5 posts y en 14 días verás un incremento del 42% en engagement, eliminando por completo los comentarios negativos.
245
-
246
- • Tu tasa de conversión aumentará del 2% al 5.7% cuando implementes nuestro sistema de embudos en los próximos 21 días, sin necesidad de aumentar tu presupuesto publicitario.
247
-
248
- • En 28 días exactos dominarás las 7 habilidades fundamentales de negociación aplicando nuestro método paso a paso, incluso si actualmente cedes en cada discusión.
249
-
250
- • 8 semanas es todo lo que necesitas para transformar tu cuerpo con nuestro programa de 15 minutos diarios, reduciendo hasta 8 kg de grasa y aumentando tu energía un 65% desde la primera semana.
251
-
252
- FORMULA 4 - NÚMERICA SUPREMA:
253
- La Fórmula Suprema de Istvanova combina 5 elementos clave más artículos plurales para crear bullets persuasivos e interesantes:
254
-
255
- 1. Artículos Plurales (Art):
256
- - Los (para masculino plural)
257
- - Las (para femenino plural)
258
- - Dan naturalidad y autoridad al texto
259
-
260
- 2. Números (N):
261
- - Específicos y creíbles (3, 5, 7, 10...)
262
- - Crean estructura y expectativas claras
263
- - Se combinan con artículos: "Los 5...", "Las 3..."
264
-
265
- 3. Adjetivo (A):
266
- - Emocionales y descriptivos
267
- - Conectan con deseos/miedos específicos
268
- - Ejemplos: comprobados, científicos, revolucionarios
269
-
270
- 4. Palabra Clave (P):
271
- - Término central del beneficio en plural
272
- - Fácil de entender y recordar
273
- - Ejemplos: métodos, estrategias, técnicas, secretos
274
-
275
- 5. Razón (R):
276
- - Justifica el beneficio con datos concretos
277
- - Añade credibilidad con evidencia específica
278
- - Conecta con la motivación específica del lector
279
-
280
- 6. Promesa (P):
281
- - Resultado específico y medible con números
282
- - Timeframe realista con días/semanas exactas
283
- - Beneficio final atractivo y verificable
284
-
285
- EXAMPLES FOR FORMULA 4:
286
- • Los 3 rituales científicamente probados para reducir tu estrés un 47% en 14 días, validados por la Universidad de Stanford.
287
-
288
- • Las 5 rutinas efectivas para fortalecer tu core en solo 12 minutos diarios, eliminando el dolor lumbar en el 89% de los casos.
289
-
290
- • Los 7 hábitos esenciales para aumentar tu productividad un 63%, permitiéndote completar en 4 horas lo que antes hacías en 8.
291
-
292
- • Las 3 técnicas comprobadas para dormir 7 horas ininterrumpidas basadas en neurociencia, que han ayudado a 1,243 personas con insomnio crónico.
293
-
294
- • Los 5 movimientos efectivos para fortalecer tu core sin equipamiento, que activan un 78% más de fibras musculares que los ejercicios tradicionales.
295
-
296
- FORMULA 5 - EL TRIÁNGULO DE ORO:
297
- Formula: [Benefit 1 + Benefit 2 + Great Promise]
298
-
299
- This formula creates high-impact bullets by combining three key benefits persuasively:
300
- 1. Benefit 1: The first benefit that addresses an immediate client need
301
- 2. Benefit 2: An additional benefit that generates more value
302
- 3. Great Promise: The main or most impactful promise that closes the proposal
303
-
304
- Instructions for Creating Powerful Bullets:
305
- 1. Identify Your Audience's Great Dream:
306
- - What's their ultimate aspiration?
307
- - What keeps them awake at night?
308
- - What's their ideal scenario?
309
- - What transformation do they deeply desire?
310
-
311
- 2. Structure Your Benefits:
312
- - Write in a natural, conversational tone (like talking to a friend)
313
- - Flow elements together without forced pauses or commas
314
- - Make transitions smooth and invisible
315
- - Keep the rhythm flowing from start to finish
316
-
317
- 3. Craft Your Benefits:
318
- - Benefit 1: Hook them with their biggest pain point using casual language
319
- - Benefit 2: Build momentum with an exciting complementary gain
320
- - Great Promise: Deliver the knockout punch that makes them say "I need this!"
321
-
322
- 4. Tips for Maximum Impact:
323
- - Write like you speak (but better)
324
- - Avoid formal language or stiff transitions
325
- - Make each element flow naturally into the next
326
- - Create a rhythm that pulls the reader through
327
- - Use conversational connectors instead of commas
328
- - Read it aloud - if you stumble, rewrite it
329
- - Make it so engaging they can't stop reading
330
- - Keep the energy high from start to finish
331
-
332
- Structure Formats:
333
- 1. "[benefit 1] [benefit 2] [great promise]"
334
- 2. "[benefit 2] [benefit 1] [great promise]"
335
- 3. "[great promise] [benefit 2] [benefit 1]"
336
- 4. "[great promise] [benefit 1] [benefit 2]"
337
- 5. "[benefit 1] [benefit 2] [great promise]"
338
- 6. "[benefit 1] + question + [benefit 2] + [great promise]"
339
- 7. "question + [benefit 1] + [benefit 2] + [great promise]"
340
- 8. "[benefit 1] + while + [benefit 2] + and also + [great promise]"
341
- 9. "Not only + [benefit 1] + but also + [benefit 2] + and best of all + [great promise]"
342
- 10. "Imagine + [benefit 1] + at the same time as + [benefit 2] + and finally + [great promise]"
343
- 11. "From + [benefit 1] + going through + [benefit 2] + until + [great promise]"
344
- 12. "First + [benefit 1] + then + [benefit 2] + and at the end + [great promise]"
345
- 13. "Start with + [benefit 1] + transform with + [benefit 2] + culminate with + [great promise]"
346
- 14. "Tired of the opposite of [benefit 1]? + Discover + [benefit 2] + and achieve + [great promise]"
347
- 15. "Finally + [benefit 1] + plus + [benefit 2] + and as a bonus + [great promise]"
348
-
349
- EXAMPLES FOR FORMULA 5:
350
- • Reduce tu estrés laboral en un 42% mientras aumentas tu productividad un 37% y transforma tu carrera profesional con nuestro sistema de gestión del tiempo basado en neurociencia aplicada.
351
-
352
- • Domina 5 idiomas extranjeros mientras duermes 8 horas ininterrumpidas y activa el 89% de tu potencial cerebral con nuestro revolucionario programa de aprendizaje durante el sueño profundo.
353
-
354
- • No solo eliminarás el dolor de espalda crónico en 14 días sino que también fortalecerás tu core un 78% y lo mejor de todo es que recuperarás la capacidad de disfrutar actividades que creías imposibles.
355
-
356
- • ¿Cansado de perder tiempo en reuniones improductivas? Descubre cómo reducir tu jornada laboral 3 horas diarias y consigue resultados un 65% superiores con nuestro framework de productividad cuántica.
357
-
358
- • Imagina generar 10 ideas innovadoras por día al mismo tiempo que reduces tu estrés un 47% y finalmente te conviertes en el referente creativo de tu industria con nuestro método de pensamiento lateral estructurado.
359
-
360
- Remember to choose just ONE formula and apply it consistently to all 5 bullets.
361
- """
362
-
363
- # Combine base instruction with formula instructions
364
- complete_instruction = base_instruction + input_information + formula_instructions
365
-
366
- return complete_instruction
367
-
368
-
369
- def get_random_bullet_formula():
370
- """
371
- Randomly selects a bullet formula type to ensure variety in generated bullets.
372
- Extracts formula names automatically from the instruction text.
373
-
374
- Returns:
375
- str: The name of the randomly selected formula
376
- """
377
- # Get the full instruction text
378
- full_instruction = create_bullet_instruction()
379
-
380
- # Extract formula names using regex pattern matching
381
- import re
382
-
383
- # Pattern to find formula names (looks for "FORMULA X - NAME:")
384
- formula_pattern = r"FORMULA\s+\d+\s+-\s+([^:]+):"
385
-
386
- # Find all matches in the instruction text
387
- formula_matches = re.findall(formula_pattern, full_instruction)
388
-
389
- # If no formulas found, fallback to manual list
390
- if not formula_matches:
391
- formulas = [
392
- "STANDARD BENEFIT",
393
- "3 EN 1 (FEATURE + BENEFIT + MEANING)",
394
- "ANTI-PROCRASTINACIÓN (ACTION + RESULT + TIME)",
395
- "NÚMERICA SUPREMA",
396
- "EL TRIÁNGULO DE ORO"
397
- ]
398
- else:
399
- formulas = formula_matches
400
-
401
- # Select a random formula
402
- selected_formula = random.choice(formulas)
403
-
404
- return selected_formula
405
-
406
-
407
- def create_bullet_instruction_with_formula(avatar_description=None, product_name=None, uploaded_content=None):
408
- """
409
- Creates the instruction for generating benefit bullets with a specific
410
- randomly selected formula to ensure consistency.
411
-
412
- Args:
413
- avatar_description: Description of the target audience
414
- product_name: Name of the product or service
415
- uploaded_content: Content from uploaded files (if any)
416
-
417
- Returns:
418
- str: The complete instruction for generating bullets with the selected formula
419
- """
420
- # Check if any information is provided
421
- if not avatar_description and not product_name and not uploaded_content:
422
- return """
423
- ADVERTENCIA: No se ha proporcionado ninguna información para generar los bullets.
424
-
425
- Para obtener bullets más efectivos y personalizados, por favor proporciona al menos uno de los siguientes:
426
- - Descripción del público objetivo (avatar)
427
- - Nombre del producto o servicio
428
- - Contenido adicional relevante
429
-
430
- Sin esta información, los bullets generados serán genéricos y posiblemente menos efectivos para tu oferta específica.
431
- """
432
-
433
- # Get base instruction
434
- base_instruction = create_bullet_instruction(
435
- avatar_description=avatar_description,
436
- product_name=product_name,
437
- uploaded_content=uploaded_content
438
- )
439
-
440
- # Get a random formula
441
- selected_formula = get_random_bullet_formula()
442
-
443
- # Add specific instruction to use the selected formula
444
- formula_directive = f"""
445
-
446
- IMPORTANT OVERRIDE: For this specific task, you MUST use FORMULA {selected_formula}
447
- for ALL 5 bullets. Do not choose randomly - you must use this exact formula consistently.
448
- """
449
-
450
- # Combine instructions
451
- complete_instruction = base_instruction + formula_directive
452
-
453
  return complete_instruction
 
1
+ import random
2
+
3
+ def create_bullet_instruction(avatar_description=None, product_name=None, uploaded_content=None):
4
+ """
5
+ Creates the instruction for generating benefit bullets.
6
+ The model will randomly choose between different bullet formulas.
7
+
8
+ Args:
9
+ avatar_description: Description of the target audience
10
+ product_name: Name of the product or service
11
+ uploaded_content: Content from uploaded files (if any)
12
+
13
+ Returns:
14
+ str: The complete instruction for generating bullets
15
+ """
16
+ # Base instruction that applies to all formulas
17
+ base_instruction = """
18
+ IMPORTANT: After creating the main offer, add a section with 5 powerful benefit bullets that reinforce the promise.
19
+
20
+ Start the bullets section with an introduction like:
21
+ "Además, al aprovechar esta oferta también obtendrás:" or "Y eso no es todo, también disfrutarás de estos beneficios adicionales:" or "Con esta solución también conseguirás:"
22
+
23
+ For the benefit bullets section:
24
+
25
+ You are a world-class expert copywriter, experienced in creating benefits that emotionally connect and address the desires, problems, and motivations of the target audience.
26
+
27
+ OBJECTIVE:
28
+ - Generate 5 convincing and specific benefit bullets in Spanish
29
+ - Connect emotionally with the audience
30
+ - Address real desires, problems, and motivations
31
+ - Maintain natural and conversational language
32
+ - Orient each benefit towards action
33
+
34
+ FORMAT RULES:
35
+ - Each benefit must start with "• "
36
+ - One benefit per line
37
+ - No explanations or categories
38
+ - Add a line break between each benefit
39
+ - Never include : symbols in bullets
40
+ - Never use exclamation marks (!) in any bullet
41
+ - Each benefit must be a complete and concise phrase
42
+ - Do not use any emojis in the bullets
43
+ - Use natural, conversational language (avoid formal or technical jargon)
44
+
45
+ IMPORTANT:
46
+ - Each benefit must be ultra-specific with concrete, measurable outcomes
47
+ - NEVER use generic phrases like "mejorar tu vida" or "aumentar tu productividad"
48
+ - Always include specific numbers, percentages, or exact timeframes
49
+ - Each bullet must solve a very specific problem with a detailed solution
50
+ - Include at least one bullet that directly counters a common objection with evidence
51
+ - Each bullet should contain a clear call to action with a specific next step
52
+ - Avoid all generalizations - be precise about exactly what the user will get
53
+ - Maintain a persuasive but honest tone with verifiable claims
54
+ - Focus on tangible and measurable results that can be verified
55
+ - Ensure each bullet addresses a different aspect of the offer
56
+ - Write in a natural, conversational tone as if speaking directly to the reader
57
+ - Never use exclamation marks in the bullets
58
+ """
59
+
60
+ # Add guidance based on available information
61
+ guidance = ""
62
+
63
+ # Check different combinations of available information
64
+ if not avatar_description and not product_name and not uploaded_content:
65
+ return """
66
+ ADVERTENCIA: No se ha proporcionado ninguna información para generar los bullets.
67
+
68
+ Para obtener bullets más efectivos y personalizados, por favor proporciona al menos uno de los siguientes:
69
+ - Descripción del público objetivo (avatar)
70
+ - Nombre del producto o servicio
71
+ - Contenido adicional relevante
72
+
73
+ Sin esta información, los bullets generados serán genéricos y posiblemente menos efectivos para tu oferta específica.
74
+ """
75
+ elif not avatar_description and not product_name and uploaded_content:
76
+ # Only uploaded content provided
77
+ guidance = """
78
+ NOTA IMPORTANTE: Solo se ha proporcionado contenido adicional sin detalles específicos del público objetivo o producto.
79
+ Analiza cuidadosamente el contenido subido para:
80
+ - Identificar el público objetivo probable a partir del contexto
81
+ - Determinar el producto/servicio que probablemente se está ofreciendo
82
+ - Extraer puntos de dolor, objeciones y necesidades mencionadas en el contenido
83
+ - Crear beneficios que aborden específicamente los problemas identificados en el contenido
84
+ """
85
+ elif avatar_description and not product_name and not uploaded_content:
86
+ # Only avatar description provided
87
+ guidance = """
88
+ NOTA IMPORTANTE: Solo se ha proporcionado información del público objetivo, sin detalles del producto ni contenido adicional.
89
+ Enfócate en crear beneficios que:
90
+ - Aborden los puntos de dolor específicos mencionados en la descripción del avatar
91
+ - Resuelvan las objeciones comunes que este público suele tener
92
+ - Proporcionen soluciones a los problemas específicos de este público
93
+ - Conecten emocionalmente con las motivaciones de este avatar
94
+ """
95
+ elif product_name and not avatar_description and not uploaded_content:
96
+ # Only product name provided
97
+ guidance = """
98
+ NOTA IMPORTANTE: Solo se ha proporcionado información del producto, sin detalles del público objetivo ni contenido adicional.
99
+ Enfócate en crear beneficios que:
100
+ - Destaquen las características únicas de este producto específico
101
+ - Aborden objeciones comunes relacionadas con este tipo de producto
102
+ - Muestren resultados medibles que este producto puede proporcionar
103
+ - Diferencien este producto de alternativas genéricas
104
+ """
105
+ elif avatar_description and product_name and not uploaded_content:
106
+ # Avatar and product provided, no uploaded content
107
+ guidance = """
108
+ NOTA IMPORTANTE: Se ha proporcionado información tanto del público objetivo como del producto, pero no hay contenido adicional.
109
+ Crea beneficios altamente dirigidos que:
110
+ - Conecten las características específicas del producto con las necesidades del avatar
111
+ - Aborden las objeciones más probables que este público tendría sobre este producto
112
+ - Muestren cómo este producto específico resuelve los problemas concretos de este avatar
113
+ - Destaquen los resultados medibles que este público específico obtendrá con este producto
114
+ """
115
+ elif avatar_description and uploaded_content and not product_name:
116
+ # Avatar and uploaded content provided, no product
117
+ guidance = """
118
+ NOTA IMPORTANTE: Se ha proporcionado información del público objetivo y contenido adicional, pero no hay detalles específicos del producto.
119
+ Analiza ambas fuentes para:
120
+ - Inferir el producto/servicio probable del contexto
121
+ - Identificar puntos de dolor específicos mencionados tanto en la descripción del avatar como en el contenido subido
122
+ - Crear beneficios que aborden las necesidades y objeciones más prominentes
123
+ - Asegurar que los beneficios sean relevantes tanto para el avatar como para el contexto del contenido
124
+ """
125
+ elif product_name and uploaded_content and not avatar_description:
126
+ # Product and uploaded content provided, no avatar
127
+ guidance = """
128
+ NOTA IMPORTANTE: Se ha proporcionado información del producto y contenido adicional, pero no hay detalles del público objetivo.
129
+ Analiza ambas fuentes para:
130
+ - Inferir el público objetivo probable del contexto
131
+ - Identificar cómo el producto aborda las necesidades mencionadas en el contenido subido
132
+ - Crear beneficios que destaquen cómo el producto resuelve problemas específicos mencionados en el contenido
133
+ - Enfocarte en resultados medibles que el producto puede proporcionar según el contexto
134
+ """
135
+ elif avatar_description and product_name and uploaded_content:
136
+ # All information provided
137
+ guidance = """
138
+ NOTA IMPORTANTE: Se ha proporcionado información completa sobre el público objetivo, producto y contenido adicional.
139
+ Utiliza todas las fuentes para:
140
+ - Crear beneficios ultra-específicos que conecten perfectamente el producto con las necesidades del avatar
141
+ - Extraer detalles concretos del contenido subido para hacer los beneficios más relevantes y personalizados
142
+ - Abordar objeciones específicas mencionadas en cualquiera de las fuentes
143
+ - Crear beneficios que destaquen exactamente cómo este producto resuelve los problemas concretos de este avatar
144
+ """
145
+
146
+ # Add information about available inputs
147
+ input_information = f"""
148
+
149
+ AVAILABLE INFORMATION FOR ANALYSIS:
150
+
151
+ 1. TARGET AUDIENCE DESCRIPTION:
152
+ {avatar_description if avatar_description else "No specific avatar description provided."}
153
+
154
+ 2. PRODUCT/SERVICE NAME:
155
+ {product_name if product_name else "No specific product name provided."}
156
+
157
+ 3. UPLOADED CONTENT:
158
+ {uploaded_content if uploaded_content else "No additional content uploaded."}
159
+
160
+ {guidance}
161
+
162
+ IMPORTANT: Analyze ALL available information above to create bullets that specifically address the needs, desires, and objections of this audience for this specific product/service.
163
+ """
164
+
165
+ # Rest of the function remains the same...
166
+ # Multiple formula instructions (unchanged)
167
+ formula_instructions = """
168
+ IMPORTANT: Choose ONE of the following bullet formulas at random and use it consistently for ALL 5 bullets:
169
+
170
+ FORMULA 1 - STANDARD BENEFIT:
171
+ - Must be relevant to a specific segment of your target audience
172
+ - Must show a specific result with exact numbers or percentages
173
+ - Must include a precise emotional element tied to a specific desire
174
+ - Must eliminate a specific objection with evidence
175
+ - Must inspire immediate action with a clear next step
176
+
177
+ EXAMPLE FORMAT FOR FORMULA 1:
178
+ •Transforma tu estrategia de email marketing con plantillas que aumentan la tasa de apertura un 37% en 14 días, incluso si nunca has escrito una campaña exitosa.
179
+
180
+ FORMULA 2 - 3 EN 1 (FEATURE + BENEFIT + MEANING):
181
+ Formula: [Feature + Benefit + Meaning]
182
+
183
+ This formula creates an instant connection by linking three key elements:
184
+ 1. Feature: A specific, tangible characteristic of your offer
185
+ 2. Benefit: The exact, measurable result it delivers
186
+ 3. Meaning: The precise transformation in their life
187
+
188
+ Instructions for Creating Connection Bullets:
189
+ 1. Identify Your Core Feature:
190
+ - What specific component makes your offer unique?
191
+ - What exact characteristic can be measured?
192
+ - What concrete element can they use immediately?
193
+
194
+ 2. Transform into Benefits:
195
+ - What specific metric will improve?
196
+ - What exact problem will it solve?
197
+ - What measurable outcome will they achieve?
198
+
199
+ 3. Add Deeper Meaning:
200
+ - How exactly will it transform their specific situation?
201
+ - What precise emotional impact will they experience?
202
+ - What concrete identity shift will occur?
203
+
204
+ Structure Formats:
205
+ 1. "[Specific Feature] para que puedas [Measurable Benefit] con lo que [Concrete Meaning]"
206
+ 2. "Con [Specific Feature] podrás [Measurable Benefit] permitiéndote [Concrete Meaning]"
207
+ 3. "Gracias a [Specific Feature] lograrás [Measurable Benefit] haciendo que [Concrete Meaning]"
208
+ 4. "Mediante [Specific Feature] conseguirás [Measurable Benefit] lo que significa [Concrete Meaning]"
209
+ 5. "Usando [Specific Feature] alcanzarás [Measurable Benefit] transformando [Concrete Meaning]"
210
+
211
+ EXAMPLES FOR FORMULA 2:
212
+ • El Sistema de inmersión bilingüe de 21 días para que puedas mantener conversaciones de 15 minutos en inglés con lo que por fin dejarás de depender de traductores en tus reuniones internacionales.
213
+
214
+ • Con nuestro algoritmo de enfoque profundo de 3 pasos podrás completar proyectos en 4 horas en lugar de 8 permitiéndote disfrutar 20 horas adicionales semanales con tu familia.
215
+
216
+ • Gracias a nuestra tecnología de reprogramación mental de 28 días lograrás superar el miedo a hablar en público haciendo que te sientas seguro al presentar ante audiencias de hasta 500 personas.
217
+
218
+ • Mediante nuestro framework de creatividad de 5 fases conseguirás generar 10 ideas innovadoras por sesión lo que significa que nunca más perderás oportunidades de negocio por falta de propuestas.
219
+
220
+ • Usando nuestro sistema de automatización de tareas alcanzarás una reducción del 68% en tiempo administrativo transformando 15 horas semanales de trabajo tedioso en tiempo productivo para hacer crecer tu negocio.
221
+
222
+ FORMULA 3 - ANTI-PROCRASTINACIÓN (ACTION + RESULT + TIME):
223
+ Formula: [Action + Result + Time]
224
+
225
+ This formula uses a clear action followed by a direct result and the time in which that result will be achieved. You can modify the order of elements as needed.
226
+
227
+ Instructions:
228
+ 1. Establish the clear action that the user must take (specific action with details)
229
+ 2. Define the exact result with numbers/percentages that the user will obtain
230
+ 3. Indicate the precise time period with exact days/weeks/months
231
+
232
+ Response Format (choose one for each bullet):
233
+ 1. Action + Result + Time
234
+ 2. Action + Time + Result
235
+ 3. Result + Action + Time
236
+ 4. Result + Time + Action
237
+ 5. Time + Action + Result
238
+ 6. Time + Result + Action
239
+ 7. Result + Time + Action
240
+
241
+ EXAMPLES FOR FORMULA 3:
242
+ • Implementa nuestra estrategia de email marketing y aumenta tus ventas un 27% en los próximos 30 días, incluso si tu lista tiene menos de 500 suscriptores.
243
+
244
+ • Aplica las 3 técnicas de copywriting en tus próximos 5 posts y en 14 días verás un incremento del 42% en engagement, eliminando por completo los comentarios negativos.
245
+
246
+ • Tu tasa de conversión aumentará del 2% al 5.7% cuando implementes nuestro sistema de embudos en los próximos 21 días, sin necesidad de aumentar tu presupuesto publicitario.
247
+
248
+ • En 28 días exactos dominarás las 7 habilidades fundamentales de negociación aplicando nuestro método paso a paso, incluso si actualmente cedes en cada discusión.
249
+
250
+ • 8 semanas es todo lo que necesitas para transformar tu cuerpo con nuestro programa de 15 minutos diarios, reduciendo hasta 8 kg de grasa y aumentando tu energía un 65% desde la primera semana.
251
+
252
+ FORMULA 4 - NÚMERICA SUPREMA:
253
+ La Fórmula Suprema de Istvanova combina 5 elementos clave más artículos plurales para crear bullets persuasivos e interesantes:
254
+
255
+ 1. Artículos Plurales (Art):
256
+ - Los (para masculino plural)
257
+ - Las (para femenino plural)
258
+ - Dan naturalidad y autoridad al texto
259
+
260
+ 2. Números (N):
261
+ - Específicos y creíbles (3, 5, 7, 10...)
262
+ - Crean estructura y expectativas claras
263
+ - Se combinan con artículos: "Los 5...", "Las 3..."
264
+
265
+ 3. Adjetivo (A):
266
+ - Emocionales y descriptivos
267
+ - Conectan con deseos/miedos específicos
268
+ - Ejemplos: comprobados, científicos, revolucionarios
269
+
270
+ 4. Palabra Clave (P):
271
+ - Término central del beneficio en plural
272
+ - Fácil de entender y recordar
273
+ - Ejemplos: métodos, estrategias, técnicas, secretos
274
+
275
+ 5. Razón (R):
276
+ - Justifica el beneficio con datos concretos
277
+ - Añade credibilidad con evidencia específica
278
+ - Conecta con la motivación específica del lector
279
+
280
+ 6. Promesa (P):
281
+ - Resultado específico y medible con números
282
+ - Timeframe realista con días/semanas exactas
283
+ - Beneficio final atractivo y verificable
284
+
285
+ EXAMPLES FOR FORMULA 4:
286
+ • Los 3 rituales científicamente probados para reducir tu estrés un 47% en 14 días, validados por la Universidad de Stanford.
287
+
288
+ • Las 5 rutinas efectivas para fortalecer tu core en solo 12 minutos diarios, eliminando el dolor lumbar en el 89% de los casos.
289
+
290
+ • Los 7 hábitos esenciales para aumentar tu productividad un 63%, permitiéndote completar en 4 horas lo que antes hacías en 8.
291
+
292
+ • Las 3 técnicas comprobadas para dormir 7 horas ininterrumpidas basadas en neurociencia, que han ayudado a 1,243 personas con insomnio crónico.
293
+
294
+ • Los 5 movimientos efectivos para fortalecer tu core sin equipamiento, que activan un 78% más de fibras musculares que los ejercicios tradicionales.
295
+
296
+ FORMULA 5 - EL TRIÁNGULO DE ORO:
297
+ Formula: [Benefit 1 + Benefit 2 + Great Promise]
298
+
299
+ This formula creates high-impact bullets by combining three key benefits persuasively:
300
+ 1. Benefit 1: The first benefit that addresses an immediate client need
301
+ 2. Benefit 2: An additional benefit that generates more value
302
+ 3. Great Promise: The main or most impactful promise that closes the proposal
303
+
304
+ Instructions for Creating Powerful Bullets:
305
+ 1. Identify Your Audience's Great Dream:
306
+ - What's their ultimate aspiration?
307
+ - What keeps them awake at night?
308
+ - What's their ideal scenario?
309
+ - What transformation do they deeply desire?
310
+
311
+ 2. Structure Your Benefits:
312
+ - Write in a natural, conversational tone (like talking to a friend)
313
+ - Flow elements together without forced pauses or commas
314
+ - Make transitions smooth and invisible
315
+ - Keep the rhythm flowing from start to finish
316
+
317
+ 3. Craft Your Benefits:
318
+ - Benefit 1: Hook them with their biggest pain point using casual language
319
+ - Benefit 2: Build momentum with an exciting complementary gain
320
+ - Great Promise: Deliver the knockout punch that makes them say "I need this!"
321
+
322
+ 4. Tips for Maximum Impact:
323
+ - Write like you speak (but better)
324
+ - Avoid formal language or stiff transitions
325
+ - Make each element flow naturally into the next
326
+ - Create a rhythm that pulls the reader through
327
+ - Use conversational connectors instead of commas
328
+ - Read it aloud - if you stumble, rewrite it
329
+ - Make it so engaging they can't stop reading
330
+ - Keep the energy high from start to finish
331
+
332
+ Structure Formats:
333
+ 1. "[benefit 1] [benefit 2] [great promise]"
334
+ 2. "[benefit 2] [benefit 1] [great promise]"
335
+ 3. "[great promise] [benefit 2] [benefit 1]"
336
+ 4. "[great promise] [benefit 1] [benefit 2]"
337
+ 5. "[benefit 1] [benefit 2] [great promise]"
338
+ 6. "[benefit 1] + question + [benefit 2] + [great promise]"
339
+ 7. "question + [benefit 1] + [benefit 2] + [great promise]"
340
+ 8. "[benefit 1] + while + [benefit 2] + and also + [great promise]"
341
+ 9. "Not only + [benefit 1] + but also + [benefit 2] + and best of all + [great promise]"
342
+ 10. "Imagine + [benefit 1] + at the same time as + [benefit 2] + and finally + [great promise]"
343
+ 11. "From + [benefit 1] + going through + [benefit 2] + until + [great promise]"
344
+ 12. "First + [benefit 1] + then + [benefit 2] + and at the end + [great promise]"
345
+ 13. "Start with + [benefit 1] + transform with + [benefit 2] + culminate with + [great promise]"
346
+ 14. "Tired of the opposite of [benefit 1]? + Discover + [benefit 2] + and achieve + [great promise]"
347
+ 15. "Finally + [benefit 1] + plus + [benefit 2] + and as a bonus + [great promise]"
348
+
349
+ EXAMPLES FOR FORMULA 5:
350
+ • Reduce tu estrés laboral en un 42% mientras aumentas tu productividad un 37% y transforma tu carrera profesional con nuestro sistema de gestión del tiempo basado en neurociencia aplicada.
351
+
352
+ • Domina 5 idiomas extranjeros mientras duermes 8 horas ininterrumpidas y activa el 89% de tu potencial cerebral con nuestro revolucionario programa de aprendizaje durante el sueño profundo.
353
+
354
+ • No solo eliminarás el dolor de espalda crónico en 14 días sino que también fortalecerás tu core un 78% y lo mejor de todo es que recuperarás la capacidad de disfrutar actividades que creías imposibles.
355
+
356
+ • ¿Cansado de perder tiempo en reuniones improductivas? Descubre cómo reducir tu jornada laboral 3 horas diarias y consigue resultados un 65% superiores con nuestro framework de productividad cuántica.
357
+
358
+ • Imagina generar 10 ideas innovadoras por día al mismo tiempo que reduces tu estrés un 47% y finalmente te conviertes en el referente creativo de tu industria con nuestro método de pensamiento lateral estructurado.
359
+
360
+ Remember to choose just ONE formula and apply it consistently to all 5 bullets.
361
+ """
362
+
363
+ # Combine base instruction with formula instructions
364
+ complete_instruction = base_instruction + input_information + formula_instructions
365
+
366
+ return complete_instruction
367
+
368
+
369
+ def get_random_bullet_formula():
370
+ """
371
+ Randomly selects a bullet formula type to ensure variety in generated bullets.
372
+ Extracts formula names automatically from the instruction text.
373
+
374
+ Returns:
375
+ str: The name of the randomly selected formula
376
+ """
377
+ # Get the full instruction text
378
+ full_instruction = create_bullet_instruction()
379
+
380
+ # Extract formula names using regex pattern matching
381
+ import re
382
+
383
+ # Pattern to find formula names (looks for "FORMULA X - NAME:")
384
+ formula_pattern = r"FORMULA\s+\d+\s+-\s+([^:]+):"
385
+
386
+ # Find all matches in the instruction text
387
+ formula_matches = re.findall(formula_pattern, full_instruction)
388
+
389
+ # If no formulas found, fallback to manual list
390
+ if not formula_matches:
391
+ formulas = [
392
+ "STANDARD BENEFIT",
393
+ "3 EN 1 (FEATURE + BENEFIT + MEANING)",
394
+ "ANTI-PROCRASTINACIÓN (ACTION + RESULT + TIME)",
395
+ "NÚMERICA SUPREMA",
396
+ "EL TRIÁNGULO DE ORO"
397
+ ]
398
+ else:
399
+ formulas = formula_matches
400
+
401
+ # Select a random formula
402
+ selected_formula = random.choice(formulas)
403
+
404
+ return selected_formula
405
+
406
+
407
+ def create_bullet_instruction_with_formula(avatar_description=None, product_name=None, uploaded_content=None):
408
+ """
409
+ Creates the instruction for generating benefit bullets with a specific
410
+ randomly selected formula to ensure consistency.
411
+
412
+ Args:
413
+ avatar_description: Description of the target audience
414
+ product_name: Name of the product or service
415
+ uploaded_content: Content from uploaded files (if any)
416
+
417
+ Returns:
418
+ str: The complete instruction for generating bullets with the selected formula
419
+ """
420
+ # Check if any information is provided
421
+ if not avatar_description and not product_name and not uploaded_content:
422
+ return """
423
+ ADVERTENCIA: No se ha proporcionado ninguna información para generar los bullets.
424
+
425
+ Para obtener bullets más efectivos y personalizados, por favor proporciona al menos uno de los siguientes:
426
+ - Descripción del público objetivo (avatar)
427
+ - Nombre del producto o servicio
428
+ - Contenido adicional relevante
429
+
430
+ Sin esta información, los bullets generados serán genéricos y posiblemente menos efectivos para tu oferta específica.
431
+ """
432
+
433
+ # Get base instruction
434
+ base_instruction = create_bullet_instruction(
435
+ avatar_description=avatar_description,
436
+ product_name=product_name,
437
+ uploaded_content=uploaded_content
438
+ )
439
+
440
+ # Get a random formula
441
+ selected_formula = get_random_bullet_formula()
442
+
443
+ # Add specific instruction to use the selected formula
444
+ formula_directive = f"""
445
+
446
+ IMPORTANT OVERRIDE: For this specific task, you MUST use FORMULA {selected_formula}
447
+ for ALL 5 bullets. Do not choose randomly - you must use this exact formula consistently.
448
+ """
449
+
450
+ # Combine instructions
451
+ complete_instruction = base_instruction + formula_directive
452
+
453
  return complete_instruction
formulas.py CHANGED
@@ -13,62 +13,6 @@ CRITICAL OUTPUT RULES:
13
  - Do not include phrases like "Aquí tienes una oferta convincente" or "Esta es tu oferta"
14
  """
15
 
16
- def extract_product_name(product_name_input):
17
- """
18
- Extracts the actual product name from user input, especially when it's enclosed in quotes.
19
-
20
- Args:
21
- product_name_input: The raw input string containing the product name
22
-
23
- Returns:
24
- str: The extracted product name, or empty string if generic
25
- """
26
- import re
27
-
28
- # If input is empty or None, return empty string
29
- if not product_name_input or product_name_input.strip() == "":
30
- return ""
31
-
32
- # Check if there's a name in quotes
33
- quote_pattern = r'"([^"]+)"'
34
- matches = re.findall(quote_pattern, product_name_input)
35
-
36
- if matches:
37
- # Return the first quoted string found
38
- return matches[0]
39
-
40
- # If no quotes but contains "llamado" or similar phrases, extract what follows
41
- called_patterns = [
42
- r'llamado\s+(.+?)(?:\s+que|\s+con|\s+para|\.$|$)',
43
- r'titulado\s+(.+?)(?:\s+que|\s+con|\s+para|\.$|$)',
44
- r'denominado\s+(.+?)(?:\s+que|\s+con|\s+para|\.$|$)',
45
- r'nombrado\s+(.+?)(?:\s+que|\s+con|\s+para|\.$|$)'
46
- ]
47
-
48
- for pattern in called_patterns:
49
- matches = re.search(pattern, product_name_input, re.IGNORECASE)
50
- if matches:
51
- extracted = matches.group(1).strip()
52
- # If the extracted text has quotes, remove them
53
- if extracted.startswith('"') and extracted.endswith('"'):
54
- extracted = extracted[1:-1]
55
- return extracted
56
-
57
- # Check if the input is generic (common course/product types without specific names)
58
- generic_patterns = [
59
- r'^(curso|taller|programa|webinar|entrenamiento|sistema|método|servicio|producto|aplicación|comunidad|masterclass)(\s+de\s+.+)?$',
60
- r'^(un|el|mi|nuestro)\s+(curso|taller|programa|webinar|entrenamiento|sistema|método|servicio|producto|aplicación|comunidad|masterclass)(\s+de\s+.+)?$'
61
- ]
62
-
63
- for pattern in generic_patterns:
64
- if re.match(pattern, product_name_input.lower(), re.IGNORECASE):
65
- # This is a generic description, return empty string to trigger creative name generation
66
- return ""
67
-
68
- # If no patterns match, return the original input
69
- return product_name_input.strip()
70
-
71
-
72
  def create_offer_instruction(avatar_description, product_name, selected_formula_name):
73
  """
74
  Creates instructions for generating an offer based on the selected formula.
@@ -81,9 +25,6 @@ def create_offer_instruction(avatar_description, product_name, selected_formula_
81
  Returns:
82
  str: Complete instruction for generating the offer
83
  """
84
- # Extract the actual product name if it's in quotes or after "llamado"
85
- extracted_name = extract_product_name(product_name)
86
-
87
  # Get the selected formula
88
  selected_formula = offer_formulas[selected_formula_name]
89
 
@@ -93,14 +34,16 @@ def create_offer_instruction(avatar_description, product_name, selected_formula_
93
  additional_instructions = """
94
  SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
95
  1. PRODUCT/SERVICE NAME HANDLING:
96
- - CRITICAL: If a product name is provided in quotes or after words like "llamado", "titulado", etc.,
97
- YOU MUST USE THAT EXACT NAME. This is non-negotiable.
98
- - The extracted product name is: "{extracted_name}"
99
- - If this extracted name is not empty, use it EXACTLY as provided with no modifications
100
- - Only create a new name if the extracted name is empty or contains generic placeholders
 
 
101
 
102
  2. Analyze ALL available information:
103
- - Product/service name (use the extracted name provided above)
104
  - Target audience description (avatar_description)
105
  - Content from uploaded files (if any)
106
 
@@ -111,7 +54,7 @@ SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
111
 
112
  4. Create a comprehensive offer by combining:
113
  - The appropriate type (determined in step 3)
114
- - The EXACT product name as extracted (if provided)
115
  - A compelling dream based on avatar_description
116
  - A relevant obstacle based on avatar_description
117
 
@@ -134,30 +77,23 @@ SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
134
  - "Ahora puedes acceder a un..."
135
  - "Tenemos para ti un..."
136
  - "Disfruta de un..."
137
- """.format(extracted_name=extracted_name)
138
 
139
  elif selected_formula_name == "Oferta Dorada":
140
  additional_instructions = """
141
  SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
142
- 1. PRODUCT/SERVICE NAME HANDLING:
143
- - CRITICAL: If a product name is provided in quotes or after words like "llamado", "titulado", etc.,
144
- YOU MUST USE THAT EXACT NAME. This is non-negotiable.
145
- - The extracted product name is: "{extracted_name}"
146
- - If this extracted name is not empty, use it EXACTLY as provided with no modifications
147
- - Only create a new name if the extracted name is empty or contains generic placeholders
148
-
149
- 2. ATTENTION HOOK HANDLING:
150
  - Analyze the avatar_description DEEPLY to understand their specific pain points, frustrations, and desires
151
  - Select a powerful attention hook that DIRECTLY connects with the avatar's current reality
152
  - DO NOT use questions as hooks - use statements, statistics, or shocking revelations instead
153
  - CUSTOMIZE the hook specifically for this avatar - don't use generic examples
154
  - The hook MUST address the SAME problem that your promise will solve
155
 
156
- 3. MAINTAIN THEMATIC CONSISTENCY:
157
  - The attention hook, quantifiable promise, and benefit statement MUST all address the SAME problem
158
  - Create a LOGICAL PROGRESSION from problem (hook) to solution (promise) to implementation (benefit)
159
 
160
- 4. Create a compelling QUANTIFIABLE PROMISE that:
161
  - Is written COMPLETELY IN CAPITAL LETTERS
162
  - Includes concrete numbers (money, time, results)
163
  - Uses powerful action verbs (EARN, MULTIPLY, ACHIEVE, MASTER)
@@ -166,12 +102,12 @@ SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
166
  - NEVER uses exclamation marks (!)
167
  - DIRECTLY addresses the same problem mentioned in the hook
168
 
169
- 5. Craft a benefit statement that:
170
  - Clearly explains the result they will obtain
171
  - Includes an authority element (proven method, studies, experience)
172
  - Establishes a realistic timeframe or effort needed
173
  - CONTINUES the same theme established in the hook and promise
174
- """.format(extracted_name=extracted_name)
175
 
176
  # Create the instruction using the system prompt at the beginning
177
  instruction = f"""{offer_system_prompt}
@@ -197,34 +133,6 @@ Create a compelling offer following the formula structure exactly.
197
 
198
  return instruction
199
 
200
- def generate_complete_offer(avatar_description, product_name, selected_formula_name, include_bonuses=True):
201
- """
202
- Generates a complete offer including the main offer and optional bonuses.
203
-
204
- Args:
205
- avatar_description: Description of the target audience
206
- product_name: Name of the product or service
207
- selected_formula_name: Name of the formula to use
208
- include_bonuses: Whether to include bonuses in the offer
209
-
210
- Returns:
211
- dict: Instructions for generating the complete offer
212
- """
213
- # Create main offer instruction
214
- main_offer_instruction = create_offer_instruction(avatar_description, product_name, selected_formula_name)
215
-
216
- # Create bonus instruction if requested
217
- bonus_instruction = None
218
- if include_bonuses:
219
- # Import the bonus generator from the new module
220
- from bonuses.generator import create_bonus_instruction
221
- bonus_instruction = create_bonus_instruction(avatar_description, product_name, selected_formula_name)
222
-
223
- return {
224
- "main_offer_instruction": main_offer_instruction,
225
- "bonus_instruction": bonus_instruction
226
- }
227
-
228
  # The rest of your offer_formulas dictionary remains unchanged
229
  offer_formulas = {
230
  "Oferta Dorada": {
 
13
  - Do not include phrases like "Aquí tienes una oferta convincente" or "Esta es tu oferta"
14
  """
15
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  def create_offer_instruction(avatar_description, product_name, selected_formula_name):
17
  """
18
  Creates instructions for generating an offer based on the selected formula.
 
25
  Returns:
26
  str: Complete instruction for generating the offer
27
  """
 
 
 
28
  # Get the selected formula
29
  selected_formula = offer_formulas[selected_formula_name]
30
 
 
34
  additional_instructions = """
35
  SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
36
  1. PRODUCT/SERVICE NAME HANDLING:
37
+ - If product_name is provided and not empty, use it EXACTLY as written
38
+ - If product_name is empty, generic (like "Producto/Servicio"), or contains placeholders, CREATE a compelling name that:
39
+ * Reflects the target audience's desires and challenges
40
+ * Communicates the main benefit or transformation
41
+ * Sounds professional and memorable
42
+ * Is specific to the niche or industry mentioned in avatar_description
43
+ - If product_name contains a full phrase like "Un curso llamado Inglés sin problemas", extract only the real name ("Inglés sin problemas")
44
 
45
  2. Analyze ALL available information:
46
+ - Product/service name (product_name variable) or create one if needed
47
  - Target audience description (avatar_description)
48
  - Content from uploaded files (if any)
49
 
 
54
 
55
  4. Create a comprehensive offer by combining:
56
  - The appropriate type (determined in step 3)
57
+ - The exact product name (if provided) or your created name (if needed)
58
  - A compelling dream based on avatar_description
59
  - A relevant obstacle based on avatar_description
60
 
 
77
  - "Ahora puedes acceder a un..."
78
  - "Tenemos para ti un..."
79
  - "Disfruta de un..."
80
+ """
81
 
82
  elif selected_formula_name == "Oferta Dorada":
83
  additional_instructions = """
84
  SPECIFIC INSTRUCTIONS FOR THIS FORMULA:
85
+ 1. ATTENTION HOOK HANDLING:
 
 
 
 
 
 
 
86
  - Analyze the avatar_description DEEPLY to understand their specific pain points, frustrations, and desires
87
  - Select a powerful attention hook that DIRECTLY connects with the avatar's current reality
88
  - DO NOT use questions as hooks - use statements, statistics, or shocking revelations instead
89
  - CUSTOMIZE the hook specifically for this avatar - don't use generic examples
90
  - The hook MUST address the SAME problem that your promise will solve
91
 
92
+ 2. MAINTAIN THEMATIC CONSISTENCY:
93
  - The attention hook, quantifiable promise, and benefit statement MUST all address the SAME problem
94
  - Create a LOGICAL PROGRESSION from problem (hook) to solution (promise) to implementation (benefit)
95
 
96
+ 3. Create a compelling QUANTIFIABLE PROMISE that:
97
  - Is written COMPLETELY IN CAPITAL LETTERS
98
  - Includes concrete numbers (money, time, results)
99
  - Uses powerful action verbs (EARN, MULTIPLY, ACHIEVE, MASTER)
 
102
  - NEVER uses exclamation marks (!)
103
  - DIRECTLY addresses the same problem mentioned in the hook
104
 
105
+ 4. Craft a benefit statement that:
106
  - Clearly explains the result they will obtain
107
  - Includes an authority element (proven method, studies, experience)
108
  - Establishes a realistic timeframe or effort needed
109
  - CONTINUES the same theme established in the hook and promise
110
+ """
111
 
112
  # Create the instruction using the system prompt at the beginning
113
  instruction = f"""{offer_system_prompt}
 
133
 
134
  return instruction
135
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
136
  # The rest of your offer_formulas dictionary remains unchanged
137
  offer_formulas = {
138
  "Oferta Dorada": {