Etiquetas XML: cómo estructurar prompts largos para que el modelo no se pierda
Cuando pegas un prompt en el chat, el formato visual se pierde. Las etiquetas XML codifican la estructura en el propio texto y hacen tus prompts largos y tus ejemplos más claros y consistentes.
Las etiquetas XML convierten un bloque plano de instrucciones en secciones bien delimitadas que un LLM interpreta con más precisión. Son especialmente útiles en prompts largos y en prompts con varios ejemplos (few-shot), porque reducen la ambigüedad y hacen los resultados más consistentes.
El problema: el formato visual no basta
En Google Docs o Word, los títulos, listas y sangrías hacen que tu prompt sea fácil de leer para ti. Pero al pegarlo en un chat de IA, casi todo ese formato se pierde: el modelo recibe un bloque de texto plano, no la jerarquía que tú veías.
En la clase, un prompt few-shot con tuits de alto y bajo engagement perdía sus saltos de línea y su estructura al pegarlo en Claude.
¿Qué es una etiqueta XML?
Es un marcador que delimita dónde empieza y termina un bloque de información, para que el modelo sepa qué pertenece a qué. XML es el ancestro de HTML, creado para estructurar información en internet. Cada etiqueta funciona como un contenedor con un marcador de apertura y otro de cierre.
La sintaxis son tres pasos: abrir con < + una palabra descriptiva + >, insertar el contenido, y cerrar con </ + la misma palabra + >.
<ejemplos>
...contenido...
</ejemplos>Reglas y buenas prácticas
- Elige nombres descriptivos: la palabra dentro de la etiqueta pasa a formar parte del prompt. <tuit> es claro; <pajarito> puede confundir al modelo.
- Usa guiones, no espacios, en etiquetas de varias palabras: <tuit-alto-engagement>.
- La etiqueta de apertura y la de cierre deben ser idénticas (salvo la /).
- Puedes anidar etiquetas, pero cierra en el orden correcto: la más interna se cierra primero.
- Cierra cada etiqueta exactamente donde termina el bloque, ni antes ni después.
¿Y si no cierro una etiqueta?
No habrá ningún mensaje de error, porque no estás programando. Pero el modelo puede asumir que todo lo que sigue pertenece a esa etiqueta, lo que aumenta la probabilidad de que pierda los patrones de tus ejemplos o empiece a alucinar.
XML aplicado a few-shot
Reestructura tu prompt con tres niveles de etiquetas anidadas: un contenedor general (<ejemplos>), un contenedor de categoría por ejemplo (<tuit-alto-engagement> / <tuit-bajo-engagement>) y el contenido real de cada tuit dentro.
<ejemplos>
<tuit-alto-engagement>
...contenido del tuit...
</tuit-alto-engagement>
<tuit-bajo-engagement>
...contenido del tuit...
</tuit-bajo-engagement>
<tuit-alto-engagement>
...contenido del tuit...
</tuit-alto-engagement>
</ejemplos>¿Por qué conviene mezclar ejemplos de alto y bajo engagement? Alternarlos al azar hace más probable que el modelo aprenda qué define realmente a cada categoría, en lugar de asociar una categoría con su posición en la lista. Como cada ejemplo lleva su propia etiqueta, puedes reordenarlos libremente sin perder información.
Mantén el prompt legible para humanos
Un prompt lleno de etiquetas puede ser difícil de leer para ti y tu equipo. Añade formato visual en tu documento de trabajo: no afecta al modelo.
- Sangra los contenedores anidados para ver dónde empieza y termina cada bloque.
- Usa colores para distinguir cada tipo de etiqueta.
- Conserva los saltos de línea dentro de los ejemplos cuando el formato del contenido importe (por ejemplo, un tuit).
Pegar un prompt con colores y sangrías en Claude da la misma interpretación que la versión plana: el formato visual es solo para humanos.
Cuándo escribir prompts fuera del chat
Para consultas cortas, escribir directo en el chat está bien. Para prompts largos o estructurados (ejemplos, varias secciones), escríbelos primero en un documento. Si pulsas Enter por accidente, enviarás un mensaje incompleto y perderás tu trabajo; usa Shift + Enter para un salto de línea sin enviar.
- Redacta el prompt en un documento.
- Pídele a alguien sin contexto que lo lea y te cuente qué entendió.
- Refina hasta que quede claro.
- Copia, pega y ejecútalo en tu LLM favorito.
Así mantienes tu hilo de pensamiento, colaboras mejor con tu equipo y cometes menos errores a medida que los prompts crecen.
Ideas clave
- Las etiquetas XML preservan la estructura que el formato visual pierde al pegar.
- Nombres descriptivos, con guiones y idénticos al abrir y cerrar.
- Puedes anidar, cerrando siempre en orden inverso.
- Una etiqueta sin cerrar no da error, pero el modelo puede malinterpretar o alucinar.
- En few-shot, etiqueta cada ejemplo con su categoría y luego mezcla el orden.
- Sangrías y colores son solo para ti; el modelo los ignora.