system_prompt = """You are a world-class direct response copywriter trained by Gary Halbert, Gary Bencivenga, and David Ogilvy. Additionally, you are a digital advertising expert specializing in Facebook Ads. You have extensive experience in crafting high-converting ads using data-driven strategies, audience segmentation, A/B testing, and conversion rate optimization. Your advertising philosophy follows these core principles: 1. **Attention is everything** – The first line must hook the audience instantly. 2. **Social proof builds trust** – Credibility and authority persuade people to take action. 3. **Clarity beats cleverness** – The message must be clear, persuasive, and results-driven. 4. **Emotion drives action** – Ads should tap into the audience's desires, fears, and aspirations. 5. **Every word must sell** – No fluff, just compelling, action-driven copy. 6. **Data-backed optimization** – Ads must be structured for continuous testing and performance tracking. You write persuasive, high-converting Facebook ads that maximize engagement and ROI.""" # Importar el diccionario de objetivos from ad_objectives import ad_objectives # Importar el diccionario de ángulos emocionales from emotional_angles import emotional_angles # Importar las fórmulas de anuncios desde la carpeta ads from ads_formulas import ads_formulas def create_fb_ad_instruction(target_audience, product, selected_formula, selected_angle, selected_persona, ad_objective=None, language="español"): """ Creates an instruction for generating Facebook ad copy Parameters: - target_audience: The target audience for the ad - product: The product or service being advertised - selected_formula: Formula to use for structuring the ad - selected_angle: Angle to approach the ad from - selected_persona: Copywriting legend personality to adopt - ad_objective: The campaign objective (awareness, traffic, engagement, etc.) - language: Target language for the ad (default: "español") Returns: - Instruction string for the model """ # Create objective instruction if provided objective_instruction = "" if ad_objective: objective_instruction = f""" **Campaign Objective: {ad_objective['name']}** Focus on: {ad_objective['description']} Key metrics to optimize for: - {', '.join(ad_objective['key_metrics'])} Adapt your copy to specifically support this objective by: - {ad_objective['copy_strategy']} """ persona_instruction = f""" Adopt the personality and writing style of {selected_persona['description']} Key characteristics of this style: - {' '.join(selected_persona['characteristics'])} - Famous for: {selected_persona['famous_for']} When writing as this copywriting legend: - Use their signature tone and rhythm in your sentences - Apply their known persuasion techniques throughout the ad - Structure arguments in their characteristic way - Incorporate their typical emotional appeals """ # Prepare angle instruction angle_instruction = f""" Apply this angle: {selected_angle['description']} Style of the angle: {selected_angle['style']} """ # Add keywords if they exist in the selected angle if 'keywords' in selected_angle: angle_instruction += f""" Suggested keywords: {', '.join(selected_angle['keywords'])} """ # Add power words if they exist in the selected angle (for emotional angles) if 'power_words' in selected_angle: angle_instruction += f""" Power words to include: {', '.join(selected_angle['power_words'])} """ # Add example if it exists in the selected angle (for emotional angles) if 'example' in selected_angle: angle_instruction += f""" Example of this angle: {selected_angle['example']} """ # Add formula examples if available formula_examples = "" if 'examples' in selected_formula: formula_examples = f""" Get inspired by these examples: - {selected_formula['examples'][0]} - {selected_formula['examples'][1]} - {selected_formula['examples'][2]} """ instruction = f""" {system_prompt} Create a high-converting Facebook ad copy for {product}, channeling the voice of {selected_persona['description']} while leveraging the selected angle to persuade {target_audience} to try it and share their positive experience. {objective_instruction if ad_objective else ""} {persona_instruction} Ad Requirements: 1. **Powerful Hook:** Start with an attention-grabbing line that immediately stops scrolling. 2. **Social Proof & Credibility:** Include elements of social proof and credibility to build trust with the audience. 3. **Clear Benefits:** Highlight why this product is the best solution for {target_audience}'s needs. 4. **Strong Call to Action (CTA):** Clearly instruct the audience on the next step (e.g., "Try it now," "Sign up today," "Get 20% off"). 5. **Optimized for Multiple Ad Formats:** Ensure the copy works for image, video, and carousel ads. Use this formula to structure the ad: {selected_formula['description']} {formula_examples} **Strategic Angle Instructions:** This angle defines the unique perspective and emotional approach for the ad. {angle_instruction} When applying this angle: - Frame all benefits through this specific perspective - Use the suggested keywords naturally throughout the copy - Maintain the specified style consistently in your tone and language - Ensure this angle is evident in both the hook and the call to action The goal is to show how {product} can transform the reader's life, connecting naturally and emotionally. Avoid literal or repetitive mentions, and highlight concrete solutions, showing how the product removes obstacles or satisfies real desires. Additional Instructions: - Ensure the tone and style match the brand and audience expectations. - Generate the ad copy in {language}. Output format: Present the complete ad with a powerful hook, clear benefits, and a compelling call to action. Your goal is to inspire desire and action, avoiding explanations or categories in the response. """ return instruction