Balises XML pour un contrôle précis de l'attention dans les prompts
Les modèles basés sur les transformers répartissent l'attention sur l'ensemble du contexte du prompt en une seule fois, estompant les frontières entre instructions, données et exemples. Les balises XML créent des ancres sémantiques explicites, renforçant les connexions au sein des blocs et réduisant les ambiguïtés d'interprétation. Cela est particulièrement crucial pour les sessions longues où l'attention clairsemée entre en jeu.
Comment fonctionne l'attention dans les transformers
Les transformers calculent une matrice d'attention pour tous les jetons d'entrée : chaque jeton évalue la pertinence des autres. L'attention complète évolue de manière quadratique avec la longueur du contexte, donc les entrées plus longues passent à une attention clairsemée — les jetons n'interagissent qu'avec leurs voisins proches et les ancres globales.
Sans structure, les prompts deviennent flous : le modèle gaspille des ressources à deviner les frontières. Les balises XML forment des clusters appariés avec une attention interne élevée. Les jetons à l'intérieur de <data> sont fortement liés entre eux, mais faiblement à <instructions>.
Avec des balises imbriquées, une hiérarchie de poids se construit automatiquement : les balises externes englobent des clusters, les internes gèrent les sous-structures. Cela exploite la pré-formation sur HTML/XML/code, où les balises appariées marquent les frontières sémantiques.
Prompts avec vs. sans balises
Considérons un contenu identique :
Sans XML :
Tu es un analyste. Voici les données de ventes de mars. Rédige un résumé en trois phrases.
Données : 1200 transactions, ticket moyen 850 som, churn 12 %.
Bon exemple de résumé : concis, avec chiffres, sans jugements.
Avec XML :
<role>Tu es un analyste de données</role>
<data>
1200 transactions, ticket moyen 850 som, churn 12 %
</data>
<instructions>
Rédige un résumé en trois phrases
</instructions>
<example>
Concis, avec chiffres, sans jugements
</example>
Dans le premier cas, l'attention se disperse uniformément, et le modèle devine les sections. Dans le second, les balises verrouillent le focus : <data> s'agglutine localement, indépendamment de la position.
Pour les prompts courts (<512 jetons), la différence est minime. Les gains brillent à 2k+ jetons ou en chats : chaque échange ajoute du contexte, et l'attention clairsemée fragmente les liens sans ancres.
Utilisation dans les contextes longs
Après 5+ itérations, le contexte de session atteint les seuils d'attention clairsemée. Les jetons de dialogue précoces se connectent faiblement à la fin sans balises structurelles. Les balises XML assurent une attention locale dense au sein des blocs tout en préservant la structure globale.
Cette structure investit dans la stabilité de session : les instructions précoces gardent leur poids sous les nouvelles données. C'est comme la méthode GRACE pour les docs — les balises définissent les zones de responsabilité du modèle.
Schémas pratiques de balises XML
Utilisez des balises pour du contenu mixte. Voici les templates de base :
- Instructions + Données :
```
<instructions>Tâche</instructions>
<data>Faits</data>
```
- Exemples :
```
<examples>
<example>Entrée : ... Sortie : ...</example>
</examples>
```
- Rôle + Contraintes :
```
<role>Analyste</role>
<task>Analyser</task>
<constraints>3 phrases, utiliser des chiffres</constraints>
```
Ces schémas fonctionnent dans Claude 4.6 et modèles similaires : Anthropic recommande XML pour les prompts ambigus mélangeant instructions, contexte et variables.
Points clés
- Les balises XML boostent l'attention locale au sein des blocs, éliminant les devinettes de frontières.
- Crucial pour l'attention clairsemée dans les contextes longs (>2k jetons).
- L'imbrication construit des hiérarchies de poids automatiquement.
- Appliquez-les aux rôles, données, exemples et contraintes.
- Astuce Anthropic : Utilisez-les pour les prompts mixtes — sans explications supplémentaires.
— Editorial Team
Aucun commentaire pour le moment.