Update app.py
Browse files
app.py
CHANGED
@@ -214,6 +214,9 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
214 |
- El titular debe estar entre comillas "titular"
|
215 |
- No uses números ni viñetas
|
216 |
- El titular debe fluir naturalmente con la historia
|
|
|
|
|
|
|
217 |
"""
|
218 |
|
219 |
formula_prompts = {
|
@@ -231,26 +234,10 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
231 |
- "Aprende un nuevo idioma durante tus visitas al baño aunque solo sepas decir gracias y por favor"
|
232 |
- "Conquista el miedo a hablar en público durante el desayuno a pesar de que te tiemblen hasta las pestañas"
|
233 |
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
"Númerica Suprema": f"""
|
239 |
-
{system_prompt}
|
240 |
-
|
241 |
-
INSTRUCCIONES PARA TITULAR NUMÉRICO:
|
242 |
-
Crea un titular que combine en este orden:
|
243 |
-
1. Artículo plural (Los/Las)
|
244 |
-
2. Número específico y creíble (3, 5, 7, 10)
|
245 |
-
3. Adjetivo emocional y descriptivo
|
246 |
-
4. Palabra clave en plural
|
247 |
-
5. Razón breve
|
248 |
-
6. Promesa concreta
|
249 |
-
|
250 |
-
El titular debe ser persuasivo y medible, similar a estos ejemplos:
|
251 |
-
- "Los 3 rituales probados para dormir mejor"
|
252 |
-
- "Las 5 rutinas efectivas para fortalecer tu core"
|
253 |
-
- "Los 7 hábitos esenciales para aumentar productividad"
|
254 |
|
255 |
Historia a titular:
|
256 |
{story}
|
@@ -260,7 +247,7 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
260 |
{system_prompt}
|
261 |
|
262 |
INSTRUCCIONES PARA TITULAR AIDA:
|
263 |
-
Crea un titular que
|
264 |
1. Atención: Un gancho poderoso o dato sorprendente
|
265 |
2. Interés: Un desarrollo intrigante
|
266 |
3. Deseo: Una promesa emocional
|
@@ -271,6 +258,11 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
271 |
- "La mayoría no sabe que existe una técnica de ventas basada en videojuegos"
|
272 |
- "Contrario a lo que piensas, el momento más productivo del día no es por la mañana"
|
273 |
|
|
|
|
|
|
|
|
|
|
|
274 |
Historia a titular:
|
275 |
{story}
|
276 |
""",
|
@@ -290,6 +282,11 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
290 |
- "Cultiva 27 tipos de hierbas aromáticas en 1.5 metros cuadrados de balcón"
|
291 |
- "Automatiza 89% de tus tareas administrativas dedicando 31 minutos cada lunes"
|
292 |
|
|
|
|
|
|
|
|
|
|
|
293 |
Historia a titular:
|
294 |
{story}
|
295 |
"""
|
@@ -298,12 +295,20 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
298 |
headline_prompt = formula_prompts.get(formula_type, f"""
|
299 |
{system_prompt}
|
300 |
|
|
|
301 |
Genera un titular persuasivo y memorable que:
|
302 |
-
- Conecte con
|
303 |
-
-
|
304 |
-
-
|
|
|
|
|
305 |
- No mencione directamente "{product}"
|
306 |
-
- Genere curiosidad
|
|
|
|
|
|
|
|
|
|
|
307 |
|
308 |
Historia a titular:
|
309 |
{story}
|
@@ -311,7 +316,13 @@ def generate_headline_for_story(model, story, formula_type, product, target_audi
|
|
311 |
|
312 |
response = model.generate_content([headline_prompt])
|
313 |
if response and response.parts:
|
314 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
315 |
return None
|
316 |
|
317 |
def generate_story(formula_type, target_audience, product, action, mood, length, story_topic=None):
|
@@ -478,6 +489,17 @@ IMPORTANT REMINDER:
|
|
478 |
- Ensure the story flows naturally in Spanish
|
479 |
"""
|
480 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
481 |
# Instrucciones de estudio de ejemplos
|
482 |
story_instruction += f"""
|
483 |
IMPORTANTE: Estudia cuidadosamente estos ejemplos de la fórmula seleccionada.
|
|
|
214 |
- El titular debe estar entre comillas "titular"
|
215 |
- No uses números ni viñetas
|
216 |
- El titular debe fluir naturalmente con la historia
|
217 |
+
- El titular DEBE estar directamente relacionado con el contenido de la historia
|
218 |
+
- Evita titulares genéricos que podrían aplicar a cualquier historia
|
219 |
+
- Extrae elementos específicos de la historia para crear un titular único
|
220 |
"""
|
221 |
|
222 |
formula_prompts = {
|
|
|
234 |
- "Aprende un nuevo idioma durante tus visitas al baño aunque solo sepas decir gracias y por favor"
|
235 |
- "Conquista el miedo a hablar en público durante el desayuno a pesar de que te tiemblen hasta las pestañas"
|
236 |
|
237 |
+
IMPORTANTE:
|
238 |
+
- Usa elementos específicos mencionados en la historia
|
239 |
+
- El titular debe reflejar la transformación descrita
|
240 |
+
- Mantén la coherencia con la narrativa
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
241 |
|
242 |
Historia a titular:
|
243 |
{story}
|
|
|
247 |
{system_prompt}
|
248 |
|
249 |
INSTRUCCIONES PARA TITULAR AIDA:
|
250 |
+
Crea un titular que refleje los elementos clave de la historia:
|
251 |
1. Atención: Un gancho poderoso o dato sorprendente
|
252 |
2. Interés: Un desarrollo intrigante
|
253 |
3. Deseo: Una promesa emocional
|
|
|
258 |
- "La mayoría no sabe que existe una técnica de ventas basada en videojuegos"
|
259 |
- "Contrario a lo que piensas, el momento más productivo del día no es por la mañana"
|
260 |
|
261 |
+
IMPORTANTE:
|
262 |
+
- Usa situaciones específicas de la historia
|
263 |
+
- Mantén la coherencia con el arco narrativo
|
264 |
+
- El titular debe reflejar la transformación descrita
|
265 |
+
|
266 |
Historia a titular:
|
267 |
{story}
|
268 |
""",
|
|
|
282 |
- "Cultiva 27 tipos de hierbas aromáticas en 1.5 metros cuadrados de balcón"
|
283 |
- "Automatiza 89% de tus tareas administrativas dedicando 31 minutos cada lunes"
|
284 |
|
285 |
+
IMPORTANTE:
|
286 |
+
- Usa números o datos mencionados en la historia
|
287 |
+
- Mantén la coherencia con los eventos narrados
|
288 |
+
- El titular debe reflejar la transformación específica
|
289 |
+
|
290 |
Historia a titular:
|
291 |
{story}
|
292 |
"""
|
|
|
295 |
headline_prompt = formula_prompts.get(formula_type, f"""
|
296 |
{system_prompt}
|
297 |
|
298 |
+
INSTRUCCIONES ESPECÍFICAS:
|
299 |
Genera un titular persuasivo y memorable que:
|
300 |
+
- Conecte directamente con la historia narrada
|
301 |
+
- Refleje la transformación o experiencia descrita
|
302 |
+
- Use elementos específicos mencionados en el contenido
|
303 |
+
- Mantenga un tono {mood} coherente con la narrativa
|
304 |
+
- Sea conciso pero impactante
|
305 |
- No mencione directamente "{product}"
|
306 |
+
- Genere curiosidad mientras mantiene la relevancia
|
307 |
+
|
308 |
+
IMPORTANTE:
|
309 |
+
- El titular debe surgir naturalmente de la historia
|
310 |
+
- Usa palabras clave y conceptos presentes en la narrativa
|
311 |
+
- Evita titulares genéricos que podrían aplicar a cualquier historia
|
312 |
|
313 |
Historia a titular:
|
314 |
{story}
|
|
|
316 |
|
317 |
response = model.generate_content([headline_prompt])
|
318 |
if response and response.parts:
|
319 |
+
# Extraer el titular entre comillas si existe
|
320 |
+
headline_text = response.parts[0].text.strip()
|
321 |
+
import re
|
322 |
+
match = re.search(r'"([^"]*)"', headline_text)
|
323 |
+
if match:
|
324 |
+
return match.group(1)
|
325 |
+
return headline_text
|
326 |
return None
|
327 |
|
328 |
def generate_story(formula_type, target_audience, product, action, mood, length, story_topic=None):
|
|
|
489 |
- Ensure the story flows naturally in Spanish
|
490 |
"""
|
491 |
|
492 |
+
# Si es GHA y hay story_topic, añadir instrucciones específicas
|
493 |
+
if formula_type == "GHA" and story_topic:
|
494 |
+
system_prompt += f"""
|
495 |
+
INSTRUCCIONES ESPECÍFICAS PARA GHA:
|
496 |
+
- El titular DEBE incorporar elementos del story_topic: "{story_topic}"
|
497 |
+
- Mantén el enfoque principal en la transformación o experiencia relacionada con el tema
|
498 |
+
- Usa palabras clave o conceptos específicos mencionados en la historia
|
499 |
+
- Asegúrate de que el titular refleje la esencia del story_topic
|
500 |
+
- La conexión entre el titular y el tema debe ser clara y natural
|
501 |
+
"""
|
502 |
+
|
503 |
# Instrucciones de estudio de ejemplos
|
504 |
story_instruction += f"""
|
505 |
IMPORTANTE: Estudia cuidadosamente estos ejemplos de la fórmula seleccionada.
|