Creando Interfaces Conversacionales Parte 3

Guía práctica en español para una interfaz conversacional completa: streaming en el backend, consumo en el frontend y arquitectura desacoplada para apps a medida, IA y ciberseguridad en AWS/Azure.

30 ago 2025 • 6 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

En este artículo reescrito presento de forma práctica y en español cómo construir una interfaz conversacional completa separando el productor del stream en el backend y el consumidor en el frontend.

Productor del stream en el backend: Creando el endpoint de la API

Todo chat necesita un backend que genere respuestas y entregue un stream que el cliente pueda consumir. En Next.js esto se implementa como un route handler que actúa como productor. El flujo básico es: recibir un array de mensajes desde el frontend, validar la entrada, convertir los mensajes al formato que espera el modelo de IA, invocar el modelo en modo streaming y devolver la respuesta como un stream que el hook de cliente consumirá incrementalmente.

Paso 1 crear el archivo de la API: dentro de src app api chat crea route ts y registra la ruta. Este archivo será el punto donde el cliente hace POST con el historial de mensajes.

Paso 2 implementar la lógica del route handler: extrae y valida el cuerpo de la petición. Usa una validación ligera para garantizar que messages sea un array. Convierte los mensajes del formato UI al formato de modelo para evitar enviar metadatos irrelevantes al LLM. Instancia el modelo de IA que hayas elegido y provee un mensaje de sistema que guíe la personalidad y las reglas del asistente. Llama a la función de streaming del SDK y transforma su salida en una respuesta HTTP streaming que el cliente pueda leer y renderizar token a token, permitiendo una experiencia de escritura en vivo.

Buenas prácticas en el backend: nunca confiar en la entrada del cliente sin validar. Mantén el prompt de sistema claro y conciso para guiar al modelo. Implementa manejo de errores robusto y límites de tiempo para evitar que streams queden abiertos indefinidamente.

Instalando y creando componentes de chatbot en el frontend

En el frontend usaremos una librería de componentes para acelerar la construcción de la UI y usaremos un hook especializado que abstrae el transporte y el consumo del stream. La idea es separar la lógica de negocio de la presentación mediante un hook personalizado y componentes presentacionales tontos.

Inicializar los componentes UI: ejecuta la herramienta de componentes de tu elección para añadir bloques como card input button avatar scroll area al proyecto. Esto te proporciona componentes reutilizables que puedes personalizar.

Hook personalizado useCustomChat: encapsula la interacción con el SDK de cliente. Este hook mantiene el estado del input, expone handlers para cambio y envío, y utiliza un transporte que apunta a tu endpoint api chat. Además optimiza con memo y callback para evitar recreaciones innecesarias. El hook expone input setInput messages sendMessage status handleInputChange handleSubmit para que los componentes visuales solo se centren en renderizar.

Componentes presentacionales: diseñaremos varios componentes pequeños y resposabilidad única. Entre ellos un componente para un mensaje individual que distingue entre mensajes de usuario y mensajes de asistente, un componente de carga que muestra animación mientras se streamnea la respuesta, un contenedor de mensajes que renderiza la lista, maneja autoscroll y muestra un mensaje de bienvenida si no hay conversación, una cabecera y un componente de input con textarea autoajustable y envío con tecla enter.

Comportamiento de la UI optimista: al enviar un mensaje el hook actualiza la conversación local inmediatamente sin esperar la confirmación del servidor. Esto aporta sensación de inmediatez y mejora la experiencia de usuario. Mientras el modelo responde, input y botón se deshabilitan y se muestra el estado de carga hasta que el stream termina y el estado vuelve a ready.

Ensamblaje del Chatbot: el componente orquestador llama al hook useCustomChat y pasa sus valores a los hijos ChatbotMessages y ChatbotInput. Este componente permanece limpio y declarativo y permite un flujo de datos unidireccional claro: datos desde el hook hacia los componentes de presentación y acciones del usuario que suben al hook.

Prueba y ejecución: arranca la app en modo desarrollo y navega a localhost 3000. Pega un snippet de código en el input y envíalo para observar la UI optimista, el bloqueo de input mientras el asistente genera tokens en streaming y la autoscroll que mantiene el foco en la respuesta en progreso. En herramientas de desarrollo puedes inspeccionar la petición POST a api chat y observar cómo la respuesta se va entregando en chunks.

Escenario de prueba: al enviar un snippet de TypeScript el asistente genera una explicación paso a paso. Durante el streaming verás la respuesta escribiéndose progresivamente. Si envías un segundo snippet la conversación mantiene el historial y el modelo tendrá contexto para comparar o enlazar explicaciones.

Retos y consideraciones avanzadas: gestionar el tamaño del contexto ya que los modelos tienen límites de tokens; estrategias para long term memory como resumen de conversaciones o ventanas deslizantes; persistencia del historial en local storage o base de datos para recuperar conversaciones tras recargar la página; manejo de errores y reconexiones para streams interrumpidos; políticas de seguridad y filtrado de contenido para usos en producción.

Optimización para producción: considera usar servicios cloud escalables, balanceo y límites por usuario. Implementa métricas y logging para monitorizar latencias como time to first token. Protege el endpoint con autenticación y validaciones adicionales.

Sobre Q2BSTUDIO: Q2BSTUDIO es una empresa de desarrollo de software que ofrece aplicaciones a medida y software a medida, especializados en inteligencia artificial, ciberseguridad y servicios cloud aws y azure. Nuestro equipo diseña agentes IA y soluciones IA para empresas que integran modelos de lenguaje con pipelines seguros y escalables. Ofrecemos además servicios inteligencia de negocio y power bi para transformar datos en decisiones accionables. Si buscas construir una interfaz conversacional, un agente IA personalizado o una plataforma segura en la nube, Q2BSTUDIO combina experiencia en desarrollo, ciberseguridad y arquitectura cloud para entregar soluciones robustas y adaptadas a tu negocio.

Palabras clave para posicionamiento: aplicaciones a medida software a medida inteligencia artificial ciberseguridad servicios cloud aws azure servicios inteligencia de negocio ia para empresas agentes ia power bi. Incluye estos conceptos a lo largo de tu contenido y meta datos para mejorar visibilidad en buscadores.

Conclusión: al separar claramente el productor del stream en el backend y el consumidor en el frontend conseguimos una arquitectura desacoplada, mantenible y escalable. Con un buen diseño de prompts, validaciones, manejo de estado y una UI optimista que consume streams, se logra una experiencia conversacional fluida y profesional. Esta base permite evolucionar hacia sistemas con conocimiento privado mediante técnicas RAG, persistencia del historial y capacidades analíticas integradas por medio de power bi y servicios inteligencia de negocio.

Recursos y siguientes pasos: revisa el código fuente del ejemplo en tu repositorio de referencia, prueba el flujo de extremo a extremo, instrumenta métricas y prepara la integración con servicios cloud aws o azure y con pipelines de ciberseguridad para garantizar resiliencia y cumplimiento.

Contacto: si deseas externalizar el desarrollo o necesitas asesoría para construir agentes IA, optimizar arquitecturas cloud o implementar soluciones de inteligencia de negocio contacta a Q2BSTUDIO para diseñar software a medida que cumpla tus objetivos estratégicos.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.

Live Chat