What is Prompt Template?
Un formato estructurado con marcadores de posición que define cómo se ensamblan las entradas del usuario, el contexto y las instrucciones en un prompt completo para un modelo de lenguaje.
Definition
Un prompt template es una estructura de texto predefinida con marcadores de posición variables que se completa con contenido dinámico en tiempo de ejecución para formar un prompt completo para un modelo de lenguaje. Las plantillas separan las partes estáticas de un prompt — instrucciones, directivas de formato, especificaciones de salida — de las partes dinámicas — consultas del usuario, contexto recuperado, datos variables. Esta separación permite un diseño de prompts consistente, reutilizable y mantenible en todas las aplicaciones.
En el ecosistema de LLM, los prompt templates existen en múltiples niveles. A nivel de aplicación, las plantillas definen cómo las entradas del usuario se combinan con las instrucciones del sistema y el contexto (por ejemplo, documentos recuperados por RAG) en un prompt completo. A nivel de modelo, las plantillas de chat definen el formato específico de tokens esperado por cada familia de modelos — Llama usa marcadores [INST], ChatML usa etiquetas <|im_start|>, y Mistral usa sus propios delimitadores. Usar la plantilla de chat incorrecta para un modelo causa una degradación significativa de calidad porque el modelo espera patrones de tokens específicos de su entrenamiento.
Los prompt templates son un artefacto de ingeniería crítico en aplicaciones LLM en producción. Una plantilla bien diseñada captura el conocimiento acumulado sobre cómo obtener el mejor comportamiento de un modelo para una tarea específica. Los equipos iteran sobre las plantillas a medida que descubren casos límite, modos de fallo y oportunidades de optimización, y versionar las plantillas junto con el código de la aplicación es una buena práctica.
Why It Matters
Los prompt templates proporcionan consistencia y mantenibilidad para las aplicaciones LLM. Sin plantillas, los prompts tienden a construirse mediante concatenación ad-hoc de cadenas, lo que lleva a formato inconsistente, instrucciones omitidas y errores difíciles de diagnosticar. Las plantillas hacen que la estructura del prompt sea explícita, versionable y comprobable.
Para el fine-tuning, usar el prompt template correcto durante el entrenamiento es crítico. Si los datos de entrenamiento usan un formato de plantilla pero la inferencia usa otro, el modelo encuentra patrones desconocidos en tiempo de inferencia y el rendimiento se degrada. Alinear los formatos de plantilla entre la preparación de datos de entrenamiento y el despliegue asegura que el comportamiento aprendido del modelo se transfiera correctamente a producción.
How It Works
A nivel de aplicación, un prompt template es una cadena con variables de marcador de posición (por ejemplo, {context}, {question}, {format_instructions}) que se sustituyen con valores reales en tiempo de ejecución. Los motores de plantillas — desde simples f-strings de Python hasta frameworks sofisticados como el PromptTemplate de LangChain — manejan la sustitución de variables, validación y composición.
A nivel de modelo, las plantillas de chat codifican la estructura de la conversación usando tokens especiales. Una plantilla de chat de Llama 3 envuelve cada mensaje en delimitadores específicos que el modelo fue entrenado para reconocer. El método apply_chat_template() del tokenizer convierte una lista de diccionarios de mensajes al formato de tokens correcto. Los desajustes entre la plantilla usada durante el fine-tuning y la plantilla usada durante la inferencia son una fuente común de regresiones de calidad en modelos desplegados.
Example Use Case
Una aplicación RAG usa un prompt template que combina la instrucción del sistema, los 3 documentos más relevantes recuperados y la pregunta del usuario: 'Eres un asistente de soporte técnico. Usa solo la siguiente documentación para responder. Si la respuesta no está en la documentación, dilo. Documentación: {retrieved_docs}. Pregunta: {user_question}. Respuesta:'. Esta plantilla asegura un comportamiento consistente en miles de consultas, y cuando el equipo descubre que agregar 'Sé conciso y específico' mejora la calidad de las respuestas, actualizan la plantilla en un solo lugar en vez de modificar código en toda la aplicación.
Key Takeaways
- Los prompt templates separan la estructura estática del prompt del contenido dinámico usando marcadores de posición.
- Existen tanto a nivel de aplicación (combinando entradas con instrucciones) como a nivel de modelo (tokens de formato de chat).
- Usar la plantilla de chat correcta a nivel de modelo es crítico para la calidad de la inferencia.
- Las plantillas deben versionarse y alinearse entre la preparación de datos de entrenamiento y el despliegue.
- Las plantillas bien diseñadas capturan el conocimiento acumulado sobre cómo obtener el comportamiento óptimo del modelo.
How Ertas Helps
Ertas Studio aplica automáticamente la plantilla de chat correcta para cada modelo base durante el fine-tuning, y Ertas Data Suite estructura los datos de entrenamiento para coincidir con el formato de prompt esperado por el modelo objetivo, asegurando una transferencia de calidad fluida del entrenamiento al despliegue.
Related Resources
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.