El blog de un supermercado, escrito con IA
Para una cadena de supermercados, la IA escribe, optimiza para Google e ilustra cada artículo; el equipo solo revisa y aprueba. Además, rescatamos 429 artículos del WordPress anterior, limpios de malware. Está listo y en etapa de lanzamiento.
Next.js · NestJS · Python · OpenAI y Gemini · PostgreSQL- 429
- artículos rescatados de WordPress
- US$ 0,60
- para analizar 499 artículos con IA
El problema del cliente
Una cadena de supermercados de Paraná, en Brasil, tenía un blog en WordPress con casi 500 artículos y ninguno nuevo desde noviembre de 2025. Mantenerlo se había vuelto insostenible, y al revisarlo apareció algo peor: 425 artículos tenían código malicioso escondido y ninguna imagen tenía texto alternativo.
Querían volver a publicar uno o dos artículos por semana sin sumar gente al equipo. Las metas eran concretas: menos de 30 minutos de trabajo humano por artículo, menos de 10 dólares al mes en IA y una calidad visual que se viera profesional y de la marca.
Arquitectura
Construimos un panel de administración propio, con editor, SEO, biblioteca de imágenes, páginas y menús, y un blog público en portugués.
Así nace un artículo:
- Alguien del equipo escribe la idea en el panel. El sistema busca contexto en la web para que el texto no quede genérico.
- Tres agentes trabajan al mismo tiempo: uno redacta, otro prepara el título, la descripción y las palabras clave para Google, y el tercero diseña las imágenes.
- Primero se genera solo el texto. Cuando el equipo lo aprueba, recién ahí se crean las imágenes. Así se puede corregir el texto varias veces sin pagar imágenes que después se descartan.
- El artículo queda como borrador hasta que una persona lo publica. La IA nunca publica sola.
Cada agente tiene un modelo principal y dos de respaldo: si OpenAI falla, pasa a Gemini y después a un tercer proveedor. Las instrucciones de los agentes se editan desde el panel, con historial de versiones y la opción de volver atrás si un cambio empeora los textos.
Todo corre en un servidor propio, sin depender de servicios que cobren por uso.
La decisión difícil y por qué
El panel interno estaba traducido a tres idiomas (español, portugués e inglés) y la pregunta natural era publicar el blog también en los tres.
Lo medimos antes de decidir. El panel tenía casi mil textos traducidos tres veces para solo tres usuarios internos, y un cuarto de las traducciones al español eran idénticas al portugués. Publicar en tres idiomas significaba semanas de desarrollo, triplicar para siempre el trabajo editorial (24 artículos al mes en lugar de 8) y arriesgar el posicionamiento en Google con traducciones automáticas.
El blog público quedó solo en portugués, que es el idioma de todos sus clientes. Lo revisaremos únicamente si la cadena empieza a operar fuera de Brasil o si aparecen visitas reales en otro idioma.
Una decisión más chica con el mismo criterio: para las imágenes usamos un modelo 13 veces más barato que el más conocido. La diferencia de calidad no justificaba el precio para un blog de supermercado.
Qué se rompió en el camino
- Un servidor sano marcado como caído. En el primer despliegue, el sitio respondía bien, pero el chequeo de salud preguntaba por una dirección de red distinta a la que escuchaba la aplicación. El balanceador lo daba por muerto y los visitantes veían un error 503. Se corrigió la dirección del chequeo.
- El generador arrancaba sin claves. Una librería de configuración no pasaba las credenciales a todas sus partes, así que cada pedido de artículo fallaba en silencio. Se cargaron las credenciales de forma explícita y se agregaron pruebas.
- El límite anti-abuso bloqueaba al propio equipo. Todo el panel sale por una misma conexión, y el límite de 20 pedidos por minuto se agotaba con abrir una sola pantalla. Se subió para el panel y se dejó estricto solo en el inicio de sesión.
- La IA ponía 75 puntos a todo. La nota de SEO la calculaba un modelo, que respondía casi lo mismo para cualquier texto. La reemplazamos por reglas fijas que se pueden verificar.
- Cinco artículos borrados por error. Durante la migración, una limpieza mal filtrada borró cinco artículos. Se recuperaron del respaldo original que guardamos antes de tocar nada.
Resultado
El sistema está terminado y probado de punta a punta; el blog nuevo está en etapa de lanzamiento.
- Migración de WordPress: analizamos 499 artículos con IA por 0,60 dólares en total, sin un solo fallo. Rescatamos 429, limpios del código malicioso, junto con 1.774 imágenes, que ahora tienen texto alternativo.
- Costo por artículo nuevo: el presupuesto es de unos 0,30 dólares de IA por artículo, con texto, SEO e imágenes incluidos.
- Calidad del sitio: 92 a 94 sobre 100 en velocidad y 100 sobre 100 en accesibilidad y SEO, según Google Lighthouse, medido antes del lanzamiento.
- Confiabilidad: más de 400 pruebas automáticas en el servidor y 59 en los agentes, que corren antes de cada cambio.