Una plantilla de prompt bien diseñada tiene: una sección de system prompt (constante — define comportamiento, reglas y formato de salida), una sección de contexto (variable — se llena con documentos recuperados, historial del usuario u otros datos) y una sección de entrada del usuario (variable — la solicitud real del usuario). El system prompt se mantiene igual en todas las solicitudes. El contexto cambia según lo que sea relevante. La entrada del usuario cambia cada vez.
En producción, las plantillas de prompts necesitan: control de versiones (rastrear cambios, revertir si la calidad baja), pruebas A/B (comparar variaciones de plantillas), validación de variables (asegurar que los campos requeridos estén llenos, que las entradas estén dentro de los límites) y parsing de salida (extraer datos estructurados de las respuestas del modelo). Frameworks como LangChain, Promptfoo y Braintrust proporcionan herramientas para la gestión de plantillas, pero incluso un sistema simple de archivos de plantillas + control de versiones es muy útil.
Errores comunes: plantillas excesivamente complejas que intentan manejar todos los casos (mejor tener múltiples plantillas enfocadas), plantillas que incluyen contexto innecesario (desperdiciando tokens y confundiendo al modelo), codificar información que cambia (usa variables) y no probar las plantillas contra casos límite (entradas inusuales, entradas adversariales, campos vacíos). Las mejores plantillas son lo más simples posible mientras producen confiablemente la salida que necesitas.