Type 1 — Caractères Unicode de largeur nulle
Le type le plus répandu dans les applications Web d’IA actuelles. Il s'agit de points de code Unicode qui n'ont pas de glyphe visible et une largeur d'avance nulle : le curseur se déplace vers la droite d'exactement zéro pixel. Ils survivent au copier-coller du navigateur vers le document sans aucune trace visuelle. Les exemples courants incluent :
- U+200B — Espace de largeur nulle
- Le caractère de filigrane AI le plus courant. Inséré entre des mots ou des lettres.
- U+200C — Non-menuisier de largeur nulle
- Légitime dans le texte arabe/farsi pour supprimer les ligatures. Anormal dans les documents en écriture latine.
- U+200D — Menuisier de largeur nulle
- Utilisé dans les séquences d'emoji. Présent en texte brut sans emoji, c'est toujours un artefact.
- U+2060 — Fusionneur de mots
- Fonctionnellement équivalent à un espace insécable de largeur nulle. Parfois remplacé par U+200B dans les modèles plus récents.
- U+FEFF — Marque d'ordre des octets
- La nomenclature UTF-8. Légitime uniquement en début de dossier ; le placement au milieu du texte est toujours un artefact d’insertion.
Type 2 — Substitutions de ponctuation
Les modèles d'IA sont formés sur des corpus typographiquement riches et utilisent par défaut des guillemets bouclés (« intelligents ») et des tirets cadratins au lieu de leurs équivalents ASCII. Bien qu'ils soient valides Unicode et ne provoquent aucune erreur d'encodage, ils ne sont pas à leur place dans le code, les API, les bases de données et les champs CMS qui attendent une ponctuation ASCII directe. Claude est particulièrement associé à la substitution em-dash.
- U+2013 Tiret fin / U+2014 Tiret Em
- Utilisé à la place d'un simple trait d'union ASCII. Un prédicteur fiable de la paternité de Claude et GPT-4 dans les ensembles de formation de détecteurs.
- U+00AD — Trait d'union souple
- Invisible dans le rendu normal, visible aux sauts de ligne. Utilisé comme marqueur de position, pas comme véritable trait d'union.
- U+2018–U+201D — Citations frisées
- Typographiquement correct mais casse les requêtes SQL, les chaînes JSON et de nombreux outils CLI qui attendent des guillemets droits.
Type 3 — Espaces incassables et spéciaux
Plusieurs caractères d'espace en dehors de U+0020 apparaissent dans le texte AI. Les espaces insécables (U+00A0) empêchent les sauts de ligne et provoquent des problèmes de mise en page dans le HTML réactif. Des espaces étroits sans coupure (U+202F) apparaissent autour de certaines ponctuations dans les modèles en langue française. Des espaces idéographiques (U+3000) apparaissent dans les sorties du modèle CJK mélangées à du texte occidental. Tous sont inoffensifs sur le plan sémantique mais perturbateurs dans des contextes structurés.
Type 4 — Empreintes digitales HTML et attributs de données
Lorsque vous exportez ou copiez depuis l'interface Web de ChatGPT, la charge utile du presse-papiers inclut des balises HTML avec des attributs de données propriétaires : data-message-id, data-start, data-end et data-scroll-id. Ces attributs identifient de manière unique la conversation et la position de chaque jeton à l'intérieur de celle-ci. Le collage dans un éditeur de texte enrichi ou un CMS acceptant la saisie HTML intégrera silencieusement ces empreintes digitales dans le code source de votre document.
Type 5 — Filigranes de probabilité de jeton statistique
Mis en œuvre au niveau du modèle, les filigranes statistiques fonctionnent en partitionnant le vocabulaire du modèle en une « liste verte » et une « liste rouge » à chaque étape de génération. Les logits du modèle sont décalés pour favoriser les jetons de la liste verte. Le biais est suffisamment faible pour que la qualité de la production ne soit pas affectée, mais dans l’ensemble d’un document, l’excédent de jetons verts est statistiquement détectable avec un degré de confiance élevé. Google SynthID pour le texte utilise cette approche. Aucun scanner de caractères ne peut détecter ou supprimer ces filigranes.
Type 6 — Filigranes sémantiques et résistants aux paraphrases
Les prototypes de recherche intègrent des filigranes en choisissant entre des synonymes ou des restructurations de phrases qui préservent le sens mais comportent une part cachée. Parce que le filigrane est dans la sémantique plutôt que dans la forme superficielle, il survit à la paraphrase. Ces filigranes ne sont pas encore déployés dans les produits d'IA grand public, mais font l'objet d'efforts actifs de normalisation dans le cadre des dispositions sur la transparence de la provenance de la loi européenne sur l'IA.