Analizador de Copy IA · CULTIVA
🤗 Hosted on HF Spaces
CULTIVA IA · IA-Ingeniería-MLOps

Analizador de Copy con Inteligencia Artificial

Pega tu texto publicitario, elige el canal y recibe un análisis detallado con score de persuasión y una versión optimizada lista para publicar.

🔍 Análisis
📚 Ejemplos
🏢 Sobre CULTIVA
Copy a analizar — máx. 500 palabras
Canal objetivo
Meta Ads
Email
Google Ads
LinkedIn
Sector / Industria
Tono de comunicación — actual: 6 / 10
1 · Formal 5 · Neutro 10 · Casual
Score de persuasión
82
Efectividad estimada
⭐ Muy bueno
✅ Puntos fuertes detectados
Apertura con pain point directa — activa respuesta emocional inmediata
CTA claro con beneficio tangible ("recuperar tiempo y dinero")
Promesa de resultados con plazo concreto: "30 días" reduce la incertidumbre
Tono consultivo ("sin tecnicismos") que reduce fricción en B2B
⚡ Mejoras sugeridas
Añadir prueba social: número de clientes o caso de éxito específico
Asunto del email demasiado genérico — personalizar con el sector del lector
Segundo párrafo muy amplio; dividir en 2 bullets para mejorar escaneabilidad
CTA secundario: añadir enlace a un caso de estudio como alternativa de baja fricción
🚀 Versión optimizada lista para usar
¿Tu agencia genera resultados, pero el crecimiento no refleja el esfuerzo que pones?

En CULTIVA IA ya hemos ayudado a +40 agencias y consultoras a multiplicar su producción de contenido con IA, sin añadir headcount.

Lo que implementamos para ti:
→ Automatización de reportes y contenido recurrente
→ Sistemas de generación de copy entrenados en tu marca
→ Resultados medibles en las primeras 2 semanas

Agenda 20 min sin coste — te mostramos exactamente qué podemos automatizar en tu caso.
Código fuente — app.py Python · Gradio
import gradio as gr
from anthropic import Anthropic

client = Anthropic()

def analizar_copy(copy_text, canal, sector, tono):
    # Construir prompt con contexto del canal y sector
    prompt = f"""Eres un experto en copywriting de marketing directo.
Analiza el siguiente texto para {canal} en el sector {sector} con tono {tono}/10.

COPY:
{copy_text}

Devuelve JSON con: score (0-100), fortalezas (list), mejoras (list), copy_optimizado (str)"""

    response = client.messages.create(
        model="claude-opus-4-5",
        max_tokens=1024,
        messages=[{"role": "user", "content": prompt}]
    )
    data = json.loads(response.content[0].text)
    return (
        data["score"],
        "\n".join(f"✅ {f}" for f in data["fortalezas"]),
        "\n".join(f"⚡ {m}" for m in data["mejoras"]),
        data["copy_optimizado"]
    )

# ── UI con Blocks ──────────────────────────────────────────
css = """
.gradio-container { font-family: 'Inter', sans-serif !important; }
.primary-btn { background: #2D6A4F !important; }
"""

with gr.Blocks(css=css, title="Analizador Copy · CULTIVA IA") as demo:
    gr.Markdown("# 🌱 Analizador de Copy con IA")

    with gr.Tab("Análisis"):
        with gr.Row():
            with gr.Column(scale=2):
                copy_in  = gr.Textbox(label="Copy a analizar", lines=6)
                canal    = gr.Radio(["Meta Ads","Email","Google Ads","LinkedIn"], label="Canal")
            with gr.Column():
                sector   = gr.Dropdown(["SaaS","Agencia","E-commerce"], label="Sector")
                tono     = gr.Slider(1, 10, value=6, label="Tono (1=formal, 10=casual)")
                score    = gr.Number(label="Score de persuasión", interactive=False)

        btn = gr.Button("🔍 Analizar Copy", variant="primary", elem_classes="primary-btn")

        with gr.Row():
            fortalezas  = gr.Textbox(label="Puntos fuertes", lines=4, interactive=False)
            mejoras     = gr.Textbox(label="Mejoras sugeridas", lines=4, interactive=False)
        copy_opt = gr.Textbox(label="Versión optimizada", lines=6, interactive=False)

        btn.click(
            fn=analizar_copy,
            inputs=[copy_in, canal, sector, tono],
            outputs=[score, fortalezas, mejoras, copy_opt]
        )

demo.launch(share=True)  # Running on https://cultiva-copy-analyzer.hf.space
API activa · /predict