Introducción
En las lecciones anteriores aprendiste a diseñar prompts, conectarte a una API de IA y estructurar el flujo de trabajo de un agente. Esta lección une todo: construirás una funcionalidad completa impulsada por IA dentro de una aplicación web real, desde la interfaz de usuario hasta la evaluación. La funcionalidad de ejemplo que usaremos es un revisor de código con IA que toma un fragmento de código pegado por el usuario y devuelve comentarios más una puntuación de calidad.
El objetivo no es escribir código de producción perfecto. El objetivo es entender cada capa del stack: formulario frontend, endpoint backend, prompt, llamada a la API, parseo de la respuesta y pruebas, para que puedas repetir el patrón con cualquier funcionalidad.
Estructura del proyecto
Una pequeña aplicación Node.js/Express es suficiente para demostrar el flujo completo. El backend expone una ruta que acepta texto de código, lo envía al modelo de IA y devuelve feedback estructurado. El frontend es un formulario HTML simple que envía el fragmento y renderiza el resultado.
La capa del agente
El agente es un módulo plano que posee el prompt template y la llamada a la API. Mantenerlo separado del manejador de ruta facilita las pruebas de forma aislada. El prompt pide al modelo que devuelva JSON con una puntuación y una lista de problemas, lo que elimina la necesidad de hacer parseo frágil de cadenas más adelante.
El frontend
La UI es intencionadamente minimalista. Un textarea para el código, un botón de envío y un panel de resultados. Enviar JSON mantiene el código coherente con el backend y evita sorpresas con la codificación de formularios.
Probar la funcionalidad
Las pruebas unitarias del agente directamente son la forma más veloz de detectar regresiones en el prompt. Construye un pequeño conjunto de pruebas con fragmentos de código y rangos de puntuación esperados, y ejecútalos en un bucle. Si un ajuste del prompt empeora un caso, lo verás inmediatamente.
Errores comunes
Tres problemas aparecen una y otra vez. Primero, no establecer response_format en json_object cuando necesitas salida estructurada, lo que provoca fallos silenciosos de parseo. Segundo, olvidarse de validar la longitud de entrada en el servidor, lo que permite a los usuarios enviar prompts enormes y acumular costes. Tercero, probar solo con código perfecto, lo que nunca revela cómo maneja el modelo los bugs. Incluye siempre al menos un fragmento claramente malo en tu conjunto de pruebas.
Resumen
Ahora tienes un patrón funcional para enviar una funcionalidad de IA: un frontend ligero, una ruta Express, un módulo de agente aislado que posee el prompt y la llamada a la API, y un pequeño conjunto de pruebas que protege contra regresiones. Reutiliza esta estructura para resumidores, clasificadores, asistentes de chat o cualquier otra herramienta con IA que añadas a una aplicación web.
Punto de control de la lección
Repasa lo aprendido y recibe comentarios sobre tu trabajo.