Lección 18 de 20 · Lectura y práctica
Implementación de frontend para interacción con prompts
Tipo de lección: VideoConcepto claveLa implementación de frontend para interacción con prompts es el puente entre la interfaz de usuario y los sistemas de inteligencia artificial. Imagina que estás construyendo un panel de.
Del concepto a la práctica
Taller de esta lección
La interfaz debe comunicar estados reales y validar antes de enviar. Un formulario de clasificación puede bloquear texto vacío, mostrar carga, presentar campos validados y conservar el error sin atribuir éxito a una respuesta incompleta.
Ejemplo resuelto
Estado inicial: botón activo. Con "No llegó", pasa a cargando; después muestra intención: envío y urgencia: alta. Con respuesta inválida, muestra No se pudo validar la respuesta y mantiene el formulario para reintentar.
Pruébalo
Define estados
idle,loading,successyerror.Desactiva el botón durante
loading.Comprueba longitud mínima antes de enviar.
Renderiza solo campos que el contrato valide.
Error frecuente: dejar el botón activo durante la espera y duplicar solicitudes; corrígelo con un bloqueo temporal y un identificador de petición.
Comprueba tu resultado
Una entrada vacía no debe generar llamada. Una entrada válida debe recorrer idle -> loading -> success; un fallo recorre idle -> loading -> error, y una respuesta sin urgencia debe terminar en error, no en una tarjeta parcialmente presentada.
Un caso exitoso no atraviesa error. Usa AbortController o un identificador de solicitud para evitar que una respuesta antigua sobrescriba la más reciente. Deshabilitar el botón no impide dobles solicitudes desde otro cliente; el backend impone sus límites y, si hay efectos, su política de idempotencia. No renderices la respuesta como HTML confiable.

Mapa de prácticaUn pedido útil explica qué resultado se busca y aporta el contexto necesario. Los límites y el formato reducen ambigüedades. Un criterio observable permite revisar el resultado y pedir un ajuste concreto.
Ver la infografía en tamaño completo ↗Fuentes para profundizar
Tipo de lección: Video
Concepto clave
La implementación de frontend para interacción con prompts es el puente entre la interfaz de usuario y los sistemas de inteligencia artificial. Imagina que estás construyendo un panel de control para un piloto de avión: los prompts son los controles que el piloto manipula, y el frontend es la cabina que traduce esos movimientos en instrucciones precisas para el motor (la API de GPT o Claude).
En aplicaciones full stack, este frontend no solo muestra resultados, sino que gestiona el flujo completo: desde la captura de entradas del usuario hasta la presentación estructurada de respuestas. Un buen frontend para prompts debe ser reactivo (responde inmediatamente a cambios), validativo (previene errores antes de enviar a la API) y modular (permite reutilizar componentes en diferentes partes de la aplicación).
Cómo funciona en la práctica
Vamos a construir un componente de frontend para un sistema de generación de contenido. Paso a paso:
- Diseñamos la interfaz con campos para tipo de contenido, tono, longitud y palabras clave
- Implementamos validación en tiempo real que verifica que los prompts no excedan límites de tokens
- Configuramos el envío asíncrono a la API con manejo de estados (cargando, éxito, error)
- Mostramos la respuesta formateada con opciones para copiar o regenerar
- Implementamos historial local para que el usuario pueda volver a prompts anteriores
La clave está en separar la lógica de presentación de la lógica de negocio. El frontend se comunica con un servicio que maneja la comunicación con la API, manteniendo el código limpio y mantenible.
Código en acción
Componente React básico para entrada de prompts:
import React, { useState } from 'react';
import PromptService from '../services/PromptService';
const PromptInput = () => {
const [prompt, setPrompt] = useState('');
const [response, setResponse] = useState('');
const [loading, setLoading] = useState(false);
const handleSubmit = async (e) => {
e.preventDefault();
if (!prompt.trim()) return;
setLoading(true);
try {
const result = await PromptService.generateContent({
prompt: prompt,
model: 'gpt-4',
temperature: 0.7
});
setResponse(result.content);
} catch (error) {
console.error('Error:', error);
setResponse('Error al generar contenido');
} finally {
setLoading(false);
}
};
return (
Sigue con Prompt Engineering Avanzado para APIs de GPT y Claude: Desarrollo de Sistemas Inteligentes
Esta lección forma parte de un curso de Cursalo. Revisa su programa y elige entre la compra individual o el acceso a toda la escuela.
Si ya tenías acceso a este curso, entra con tu cuenta: tus derechos y tu progreso se conservan. No necesitas comprarlo de nuevo.