JeCabrera commited on
Commit
d15b902
·
verified ·
1 Parent(s): c35ad1d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +91 -8
app.py CHANGED
@@ -414,7 +414,7 @@ headline_formulas = {
414
  }
415
  }
416
 
417
- def generate_headlines(number_of_headlines, target_audience, product, temperature, selected_formula):
418
  # Crear la configuración del modelo
419
  generation_config = {
420
  "temperature": temperature,
@@ -427,6 +427,16 @@ def generate_headlines(number_of_headlines, target_audience, product, temperatur
427
  model_name="gemini-2.0-flash",
428
  generation_config=generation_config,
429
  )
 
 
 
 
 
 
 
 
 
 
430
 
431
  # Incluir las instrucciones del sistema en el prompt principal
432
  system_prompt = """You are a world-class copywriter, with expertise in crafting hooks, headlines, and subject lines that immediately capture the reader's attention, prompting them to open the email or continue reading.
@@ -439,6 +449,54 @@ FORMAT RULES:
439
  - Avoid unnecessary : symbols
440
  - Each headline must be a complete and intriguing sentence
441
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
442
  FORMAT EXAMPLE:
443
  1. Titular 1.
444
 
@@ -455,13 +513,16 @@ IMPORTANT:
455
  - Avoid clichés and generalities
456
  - Maintain an intriguing but credible tone
457
  - Adapt speaking language from the audience
458
- - Focus on transformative benefits"""
 
459
 
460
  # Modificar el headlines_instruction para enfatizar los ejemplos
461
  headlines_instruction = (
462
  f"{system_prompt}\n\n"
463
  f"Tu tarea es crear {number_of_headlines} titulares irresistibles diseñados para {target_audience}. "
464
  f"El objetivo es capturar la atención instantáneamente y generar curiosidad sobre {product}. "
 
 
465
  f"Evita menciones obvias de {product} y enfócate en despertar interés genuino.\n\n"
466
  f"IMPORTANTE: Estudia cuidadosamente estos ejemplos modelo de la fórmula seleccionada. "
467
  f"Cada ejemplo representa el estilo, estructura y tono exacto que debes seguir:\n\n"
@@ -574,10 +635,26 @@ with col1:
574
  temperature = st.slider("Creatividad", min_value=0.0, max_value=2.0, value=1.0, step=0.1)
575
 
576
  selected_formula_key = st.selectbox(
577
- "Selecciona una fórmula para tus titulares",
578
- options=list(headline_formulas.keys())
579
- )
580
- selected_formula = headline_formulas[selected_formula_key]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
581
 
582
  # Botón de enviar
583
  submit = st.button("Generar Titulares")
@@ -586,8 +663,14 @@ with col1:
586
  if submit:
587
  if target_audience and product and selected_formula:
588
  try:
589
- # Obtener la respuesta del modelo
590
- generated_headlines = generate_headlines(number_of_headlines, target_audience, product, temperature, selected_formula)
 
 
 
 
 
 
591
  col2.markdown(f"""
592
  <div style="border: 1px solid #000000; padding: 15px; border-radius: 8px; background-color: #ffffff;">
593
  <h4>Observa la magia en acción:</h4>
 
414
  }
415
  }
416
 
417
+ def generate_headlines(number_of_headlines, target_audience, product, temperature, selected_formula, selected_angle):
418
  # Crear la configuración del modelo
419
  generation_config = {
420
  "temperature": temperature,
 
427
  model_name="gemini-2.0-flash",
428
  generation_config=generation_config,
429
  )
430
+ angle_instructions = {
431
+ "AUTORIDAD": "Menciona expertos, credenciales o instituciones reconocidas. Usa títulos profesionales y logros verificables.",
432
+ "CURIOSIDAD": "Crea misterio y genera intriga. Usa el factor 'nunca antes visto' o 'lo que no sabías'.",
433
+ "ADVERTENCIA": "Alerta sobre riesgos o consecuencias. Usa palabras como CUIDADO, ADVERTENCIA, ¡DETENTE!",
434
+ "EMOCIONAL": "Conecta con sentimientos y experiencias personales. Usa historias y situaciones relatable.",
435
+ "SENSACIONALISTA": "Usa el impacto y la sorpresa. Emplea palabras como ATERRADOR, INCREÍBLE, ¡NUNCA ANTES VISTO!",
436
+ "CONTRASTE": "Presenta situaciones paradójicas o inesperadas. Combina elementos opuestos.",
437
+ "PREGUNTA": "Involucra al lector directamente con preguntas. Usa '¿Quieres...?', '¿Te gustaría...?', '¿Sabías...?'",
438
+ "MEZCLA": "Combina diferentes ángulos de forma natural. Mezcla autoridad con curiosidad o advertencia con emoción."
439
+ }
440
 
441
  # Incluir las instrucciones del sistema en el prompt principal
442
  system_prompt = """You are a world-class copywriter, with expertise in crafting hooks, headlines, and subject lines that immediately capture the reader's attention, prompting them to open the email or continue reading.
 
449
  - Avoid unnecessary : symbols
450
  - Each headline must be a complete and intriguing sentence
451
 
452
+ ÁNGULOS Y EJEMPLOS:
453
+
454
+ AUTORIDAD:
455
+ - "La doctora Daniela Bermudez experta en Tanatología explica cómo la resiliencia nos ayuda a superar la pérdida"
456
+ - "El remedio natural para curar la calvicie de uno de los herbolarios más reconocidos en Harvard"
457
+ - "5 consejos de la reconocida escritora J. K. Rowling para iniciarse como escritor de fantasía"
458
+
459
+ CURIOSIDAD:
460
+ - "Lo Que Nunca Debes Comer En Un Avión"
461
+ - "20 palabras prohibidas que nunca debes mencionar frente a tus hijos"
462
+ - "Escalofriante costumbre de los monjes tibetanos que nunca debes hacer"
463
+ - "Se casa con su jefe después de haber sido humillada 5 años en el trabajo"
464
+
465
+ ADVERTENCIA:
466
+ - "CUIDADO: Si tu cuerpo está presentando algunos de estos síntomas... tienes que ir con el médico"
467
+ - "ADVERTENCIA: lo que las agencias de viajes no quieren que sepas cuando te vas de viaje"
468
+ - "¡DETENTE! y descubre lo que no sabías de la culinaria ancestral asiática"
469
+ - "CUIDADO: lo que el pediatra de tus hijos no quiere que sepas sobre la diabetes infantil"
470
+
471
+ EMOCIONAL:
472
+ - "7 formas de ganar dinero en menos de 24 horas... aun si tu negocio está por quebrar"
473
+ - "Confesiones de un ex-empleado de Starbucks que te darán las ideas para crear tu propia cafetería"
474
+ - "Para todas las mamás primerizas que no logran cambiar el pañal de su bebé con éxito"
475
+ - "¿La menstruación frustró tus vacaciones? 10 tips supereficaces para disfrutar aun esos días"
476
+
477
+ SENSACIONALISTA:
478
+ - "ATERRADOR método que utiliza el ejército israelí que te hará perder 7 kilos en una semana"
479
+ - "¡Mandar nudes es lo de hoy! Peligroso pero efectivo método para ligar en redes sociales"
480
+ - "¡Nunca antes visto! Asesino serial consigue abrir un canal en YouTube para dar clases de cocina"
481
+ - "La más reciente prueba de amor que está matando a los adolescentes"
482
+
483
+ CONTRASTE:
484
+ - "¿Quieres una piel joven y tersa? Descubre los secretos de una mujer de 60 años para tener piel de bebé"
485
+ - "Descubre cómo el mal aliento me ayudó a enamorar a la mujer de mis sueños"
486
+ - "Esta técnica de lectura rápida me ayudó a pasar mis exámenes sin tener que pasar meses estudiando"
487
+ - "¿La menstruación frustró tus vacaciones? 10 tips súper eficaces para disfrutar aún esos días"
488
+
489
+ PREGUNTA:
490
+ - "¿Cuál De Estos Problemas De Salud Quieres Solucionar?"
491
+ - "¿Te gustaría ser más persuasivo y convincente para vender más y mejor?"
492
+ - "¿Quieres aprender un nuevo idioma en poco tiempo y de forma sencilla?"
493
+ - "¿Cometes estos errores garrafales en tus textos digitales?"
494
+
495
+ MEZCLA:
496
+ - "Cuando Los Doctores Tienen Dolor De Cabeza, ¿Qué Hacen?"
497
+ - "Descubre los 7 alimentos grasosos que harán bajes de peso en tan solo 3 días si los comes en luna llena"
498
+ - "¿Te gustaría viajar por los Alpes Suizos con un dólar? Con este tren lo puedes lograr"
499
+
500
  FORMAT EXAMPLE:
501
  1. Titular 1.
502
 
 
513
  - Avoid clichés and generalities
514
  - Maintain an intriguing but credible tone
515
  - Adapt speaking language from the audience
516
+ - Focus on transformative benefits
517
+ - Follow the selected angle style and structure"""
518
 
519
  # Modificar el headlines_instruction para enfatizar los ejemplos
520
  headlines_instruction = (
521
  f"{system_prompt}\n\n"
522
  f"Tu tarea es crear {number_of_headlines} titulares irresistibles diseñados para {target_audience}. "
523
  f"El objetivo es capturar la atención instantáneamente y generar curiosidad sobre {product}. "
524
+ f"usando el ángulo {selected_angle}. "
525
+ f"\nINSTRUCCIONES DE ÁNGULO:\n{angle_instructions[selected_angle]}\n\n"
526
  f"Evita menciones obvias de {product} y enfócate en despertar interés genuino.\n\n"
527
  f"IMPORTANTE: Estudia cuidadosamente estos ejemplos modelo de la fórmula seleccionada. "
528
  f"Cada ejemplo representa el estilo, estructura y tono exacto que debes seguir:\n\n"
 
635
  temperature = st.slider("Creatividad", min_value=0.0, max_value=2.0, value=1.0, step=0.1)
636
 
637
  selected_formula_key = st.selectbox(
638
+ "Selecciona una fórmula para tus titulares",
639
+ options=list(headline_formulas.keys())
640
+ )
641
+
642
+ # Agregar selector de ángulo
643
+ selected_angle = st.selectbox(
644
+ "Selecciona el ángulo para tus titulares",
645
+ options=[
646
+ "AUTORIDAD",
647
+ "CURIOSIDAD",
648
+ "ADVERTENCIA",
649
+ "EMOCIONAL",
650
+ "SENSACIONALISTA",
651
+ "CONTRASTE",
652
+ "PREGUNTA",
653
+ "MEZCLA"
654
+ ]
655
+ )
656
+
657
+ selected_formula = headline_formulas[selected_formula_key]
658
 
659
  # Botón de enviar
660
  submit = st.button("Generar Titulares")
 
663
  if submit:
664
  if target_audience and product and selected_formula:
665
  try:
666
+ generated_headlines = generate_headlines(
667
+ number_of_headlines,
668
+ target_audience,
669
+ product,
670
+ temperature,
671
+ selected_formula,
672
+ selected_angle # Agregar el ángulo seleccionado
673
+ )
674
  col2.markdown(f"""
675
  <div style="border: 1px solid #000000; padding: 15px; border-radius: 8px; background-color: #ffffff;">
676
  <h4>Observa la magia en acción:</h4>