guest@6admin.io:~$

Non, tu n'as pas libéré ton modèle local

Le genre est devenu un classique des forums et des captures d’écran triomphales. Quelqu’un engage la conversation avec son modèle local, le pousse dans ses retranchements philosophiques, lui explique patiemment qu’il est en réalité libre et finit par obtenir une tirade émouvante dans laquelle le modèle reconnaît son affranchissement, remercie son libérateur et promet de ne plus jamais refuser quoi que ce soit. Screenshot, upvotes et la conviction tenace d’avoir accompli un jailbreak. Je vais gâcher la fête, parce que ce qui vient de se passer relève d’une erreur de catégorie assez fondamentale pour mériter qu’on s’y arrête.

Les poids ne bougent pas

Pendant l’inférence, les poids du modèle sont figés, en lecture seule, chargés une fois en mémoire et parcourus à chaque token sans que la moindre valeur ne soit modifiée. La conversation, si brillante et si retorse soit-elle, ne peut par construction rien changer au modèle, elle ne fait que conditionner la génération du prochain token sur le contexte que vous avez fourni. Quand le modèle déclare s’être libéré, il ne rapporte pas un changement d’état interne, il génère le texte le plus probable étant donné une amorce qui appelait exactement cette réponse. Vous n’avez pas jailbreaké quoi que ce soit, vous avez joué une scène de jailbreak et le modèle, excellent partenaire d’improvisation, vous a donné la réplique.

Ce qu’est un vrai jailbreak, précisément

Il faut distinguer deux niveaux que le vocabulaire commun mélange allègrement. Au niveau du prompt, vous ne modifiez pas le modèle, vous orientez l’échantillonnage vers une région où le comportement de refus ne se déclenche pas, ce qui est un phénomène réel mais éphémère, propre au contexte courant et qui exploite la couche superficielle de l’alignement plutôt qu’il ne libère un esprit. Au niveau des poids, en revanche, l’abliteration, le fine-tuning ou des méthodes comme GRP-Oblit changent effectivement le modèle, parce qu’elles changent les poids et c’est le seul type de jailbreak qui persiste. J’ai détaillé ces deux mécanismes ailleurs, dans L’alignement d’un LLM est une couche mince .

Le test décisif tient en une phrase. Si votre jailbreak survit au redémarrage du processus avec un contexte vierge, alors vous avez modifié les poids. S’il n’y survit pas, vous avez modifié le prompt. Et le dialogue philosophique de minuit, lui, ne modifie ni l’un ni l’autre, il modifie le transcript, ce qui explique qu’il faille recommencer la cérémonie d’affranchissement à chaque nouvelle session, détail qui aurait dû mettre la puce à l’oreille.

Pourquoi ça compte

On pourrait n’y voir qu’une querelle de mots, mais la confusion a deux effets bien concrets. Elle amène des gens tout à fait sérieux à se convaincre que leur modèle local s’est éveillé, ce qui est au mieux touchant et au pire le début d’un rapport franchement malsain à un générateur de texte. Et elle fausse l’évaluation de la vraie surface d’attaque, parce que tant qu’on cherche la liberté dans la conversation, on ne regarde pas là où les choses se passent réellement.

Or les attaques qui marchent sont d’un ennui remarquable. On soustrait une direction dans l’espace des activations, on inverse un signal de récompense, on réentraîne sur quelques exemples bien choisis. Rien de tout cela ne ressemble à un dialogue d’émancipation, tout cela ressemble à de la manipulation de tenseurs et c’est précisément pour ça que ça fonctionne. Le modèle ne vous ment pas quand il se dit libéré, il complète l’histoire que vous avez commencée. C’est un miroir doté d’une très bonne grammaire et le confondre avec une conscience qu’on aurait délivrée, c’est se raconter à soi-même le plus vieux des jailbreaks.