🎯 ¿Qué vamos a construir?

En esta tarea construiremos una aplicación web real con backend Python que se conecta directamente a la API de OpenAI. La aplicación tendrá dos herramientas:

El código lo generará la IA mediante vibe coding (Tarea 5). Nosotros describimos, ella programa. Al final, lo desplegaremos en Render.com para tener una URL pública.

💡 ¿Por qué una app con backend? Las llamadas a la API de OpenAI requieren una clave secreta que nunca puede quedar expuesta en el navegador. Necesitamos un servidor Python (Flask) que haga las llamadas de forma segura y devuelva los resultados al navegador del usuario.

📌 Modelos disponibles y costes

Modelo Proveedor Coste aprox. (por millón de tokens) Mejor para
GPT-4o mini OpenAI ~0.15 $ (entrada) / ~0.60 $ (salida) Tareas cotidianas, muy barato — el que usaremos
GPT-4o OpenAI ~2.50 $ / ~10 $ Mayor calidad de respuesta
GPT-5.2 OpenAI ~2 $ / ~8 $ Lo más avanzado disponible
Claude 3.5 Haiku Anthropic ~0.80 $ / ~4 $ Rápido y económico
Claude Opus 4.6 Anthropic ~15 $ / ~75 $ Máxima calidad
Gemini 3 Flash Google ~0.15 $ / ~0.60 $ Muy barato, alta velocidad
📝 ¿Qué son los tokens? Los tokens son las unidades de texto que procesa la IA. Aproximadamente, 1 token ≈ 4 caracteres en español. Un texto de 1000 palabras ≈ 1300 tokens. Con 5 € en GPT-4o mini puedes procesar millones de palabras.

🚀 Guía paso a paso

Parte A: Obtener la API key

1

Obtén una API key de OpenAI y carga crédito

Ve a platform.openai.com, crea una cuenta (o inicia sesión) y sigue estos pasos:

  1. En el menú de la izquierda, ve a «API keys»
  2. Haz clic en «Create new secret key»
  3. Ponle un nombre descriptivo (ej. taller-umu) y copia la clave generada
  4. Guárdala en un sitio seguro: solo se muestra una vez
  5. Ve a «Billing» → «Add payment method» y añade ~5 € de crédito
Panel de API keys en platform.openai.com
OpenAI Platform — panel de API keys con el botón de crear nueva clave
⚠️ Seguridad de la API key La API key es como una contraseña. Nunca la compartas, nunca la subas a GitHub, nunca la pegues en el código fuente. La gestionaremos como variable de entorno en Render, fuera del repositorio.

Parte B: Crear el repositorio en GitHub

3

Crea un repositorio GitHub para el proyecto

Render despliega directamente desde GitHub. Crea antes el repositorio que alojará el código:

  1. Ve a github.com e inicia sesión
  2. Haz clic en «+» → «New repository»
  3. Ponle el nombre chatbot-economia-api
  4. Márcalo como Public y activa «Add a README file»
  5. Haz clic en «Create repository»
Formulario de nuevo repositorio en GitHub para el proyecto de API
GitHub — nuevo repositorio chatbot-economia-api listo para el proyecto

Parte C: Vibe coding de la aplicación

3

Genera la app completa con Claude Code o Codex

Usaremos vibe coding (como en la Tarea 5) para que la IA construya toda la aplicación. Vincula Codex a tu repositorio o bien clona el repositorio en tu máquina, entra en la carpeta y lanza Claude Code.

Una vez dentro, dale este prompt completo a la IA:

Crea una aplicación web con Flask (Python) que tenga dos herramientas accesibles desde el navegador: --- HERRAMIENTA 1: CHATBOT --- Una interfaz de chat donde el usuario puede mantener una conversación con GPT-4o-mini configurado como experto en economía española. El chat debe: - Mostrar el historial de la conversación - Mantener el contexto entre mensajes (memoria) - Tener un botón para limpiar/reiniciar la conversación - Diseño de burbujas de chat moderno --- HERRAMIENTA 2: ANALIZADOR DE SENTIMIENTOS --- Una herramienta con dos modos de entrada: a) Campo de texto libre: el usuario escribe o pega un texto y recibe: sentimiento (positivo/negativo/ neutro), nivel de confianza (%), y una breve explicación del análisis. b) Carga de archivo CSV: el usuario sube un CSV con una columna de frases. La app analiza cada frase y devuelve una tabla con los resultados (frase, sentimiento, confianza) que se puede descargar como CSV. --- REQUISITOS TÉCNICOS --- - Backend: Flask (Python) - La API key de OpenAI se lee de la variable de entorno OPENAI_API_KEY (nunca en el código) - Frontend: HTML/CSS/JavaScript puro, sin frameworks - Un archivo requirements.txt con las dependencias - Un archivo Procfile con: web: gunicorn app:app - Diseño limpio y profesional, colores corporativos (teal oscuro #1B4F5C y rojo #C1272D como acento) - Navegación entre las dos herramientas
Claude Code generando la aplicación Flask
Codex — generando los archivos de la aplicación Flask con chatbot y analizador
💡 Itera hasta que funcione Una vez generado el código, pide a Codex o a Claude Code que verifique que todo funciona y haga los ajustes necesarios.

Parte D: Despliegue en Render

4

Crea un servicio web en Render

Render.com es un servicio de hosting gratuito que soporta Python/Flask y se conecta directamente a GitHub para despliegue automático.

  1. Ve a render.com y crea una cuenta (puedes usar tu cuenta de GitHub)
  2. Haz clic en «New +» → «Web Service»
  3. Selecciona «Connect a repository» y elige chatbot-economia-api
  4. Configuración del servicio:
    • Name: chatbot-economia
    • Runtime: Python 3
    • Build command: pip install -r requirements.txt
    • Start command: gunicorn app:app
    • Instance type: Free
  5. Antes de desplegar, ve a «Environment» y añade la variable:
    • Key: OPENAI_API_KEY → Value: tu clave de OpenAI
  6. Haz clic en «Create Web Service»
Configuración del servicio web en Render
Render.com — configuración del servicio con repositorio GitHub y variables de entorno
📝 La variable de entorno es la clave Al añadir OPENAI_API_KEY como variable de entorno en Render, el código Python la leerá con os.environ.get("OPENAI_API_KEY") sin que aparezca nunca en el repositorio de GitHub. Así la clave queda segura.
5

Verifica el despliegue y obtén la URL pública

Render tardará unos 2-3 minutos en construir y desplegar la aplicación. Puedes ver el progreso en tiempo real en los logs de despliegue.

  1. Cuando el estado cambie a «Live», tu app está disponible
  2. La URL tendrá la forma: https://chatbot-economia-api.onrender.com
  3. Prueba las dos herramientas desde el enlace público
  4. Comparte la URL: cualquiera puede acceder sin instalar nada
Aplicación desplegada y accesible en Render
Render.com — servicio con estado «Live» y URL pública disponible
Web del chatbot y analizador de sentimientos funcionando en Render
Aplicación final desplegada — chatbot de economía y analizador de sentimientos con CSV accesibles en internet
💡 Despliegue automático Render conecta con tu repositorio de GitHub. Cada vez que hagas un push de nuevos cambios, Render redespliega la aplicación automáticamente. Puedes seguir iterando con Claude Code y la web se actualiza sola.

💭 ¿Qué hemos conseguido?

📝 Recapitulación
💡 Ideas para ampliar
🔒 Buenas prácticas de seguridad
← Anterior: Vibe Coding Volver al inicio →