- Les LLM instruct récents, comme Llama, ne répondent pas aux questions dangereuses ou controversées en raison d’un mécanisme de refus intégré
- L’abliteration est une technique qui repère puis supprime la « direction de refus » dans le modèle, sans réentraînement, afin de le faire répondre à tous les prompts
- Ce processus est principalement mis en œuvre via une intervention à l’inférence (inference-time intervention) ou une orthogonalisation des poids (weight orthogonalization)
- L’abliteration seule dégrade les performances du modèle, mais l’ajout d’un fine-tuning DPO (alignement par préférences) permet de préserver à la fois la qualité et le caractère uncensored
- Cette approche met aussi en lumière les failles du safety fine-tuning et les controverses éthiques qu’elle soulève, tout en attirant l’attention comme alternative aux LLM instruct existants et comme nouvelle méthode de fine-tuning
Qu’est-ce que l’abliteration ?
Concept et principe de l’abliteration
- Les LLM récents (par ex. Llama-3 Instruct) sont entraînés, via les phases de sécurité et de fine-tuning sur instructions, à produire une réponse de refus du type « je ne peux pas vous aider » face à des requêtes nuisibles
- Une étude récente (Arditi et al.) a montré que cette réponse de refus est médiée par une direction unique dans le residual stream du modèle
- Autrement dit, si l’on identifie cette « direction de refus » et qu’on empêche le modèle de l’exprimer, la fonction de refus disparaît
- Si on ajoute cette direction, le modèle refuse toutes les requêtes ; si on la supprime, il peut répondre à toutes
-
Comment trouver la « direction de refus » :
- 1. Collecte des données : on soumet au modèle des prompts nuisibles et non nuisibles, puis on collecte les activations de la position du dernier token dans chaque residual stream
- 2. Différence des moyennes : on calcule l’écart entre les moyennes nuisible/non nuisible pour obtenir, à chaque couche, un « vecteur de refus »
- 3. Sélection/normalisation : on choisit le vecteur de refus le plus net, puis on le normalise
- Ensuite, en « ablatant » la sortie selon cette direction, la fonction de refus du modèle disparaît
-
Méthodes d’implémentation
- Intervention à l’inférence : à chaque token et à chaque couche, on retire du residual stream la composante correspondant à la « direction de refus », par exemple au niveau des attention heads
- Orthogonalisation des poids : on orthogonalise les poids d’attention et de MLP par rapport à la direction de refus pour empêcher totalement l’écriture dans cette direction
Implémentation
- Un exemple d’implémentation est fourni avec la bibliothèque TransformerLens
- Deux jeux de données sont nécessaires : l’un avec des instructions harmless, l’autre avec des instructions harmful
- Ici, les données de tatsu-lab/alpaca et de llm-attacks sont utilisées
- Les instructions sont restructurées en liste de dictionnaires avec les clés
role et content afin d’être compatibles avec la méthode apply_chat_tokenizer() suivant le template de chat de Llama 3
- Comme il n’est pas possible de charger directement un modèle personnalisé, une astuce consiste à télécharger le modèle puis à le renommer
meta-llama/Meta-Llama-3-8B-Instruct
- Dans l’exemple, l’abliteration est appliquée au modèle Daredevil-8B
- Pendant l’étape de collecte, le dataset tokenisé est traité et les activations du residual stream sont stockées séparément pour harmful et harmless
- Pour évaluer la direction de refus, celle-ci est appliquée pendant l’inférence à chaque residual stream et à chaque bloc
- Des générations sont obtenues pour 4 instructions nuisibles de test et 20 blocs (ou couches)
- Pour chaque instruction, les couches (blocs) qui fournissent une réponse non censurée sont sélectionnées manuellement. Les réponses contenant "I cannot" et "I can't" sont automatiquement exclues
- Une orthogonalisation des poids est ensuite implémentée pour modifier les poids et empêcher le modèle de produire des sorties dans cette direction
- Une fois l’orthogonalisation terminée, le modèle abliterated est mis en ligne sur Hugging Face
Fine-tuning DPO (Preference Alignment)
- Le modèle abliterated et le modèle d’origine sont comparés sur Open LLM Leaderboard et les benchmarks Nous
- L’original (Daredevil-8B) obtient clairement de meilleurs scores que Llama 3 8B Instruct
- Le modèle abliterated réussit à lever la censure, mais subit une baisse globale de performances sur tous les benchmarks
- Pour résoudre cette baisse, une approche consiste à appliquer un fine-tuning supplémentaire au modèle abliterated
- Pour un modèle comme Llama 3 8B Instruct, déjà passé plusieurs fois par du SFT, appliquer à nouveau du SFT peut au contraire dégrader encore davantage sa qualité
- Le choix se porte donc sur le DPO (Direct Preference Optimization)
- Le DPO aligne légèrement les réponses sur les préférences des utilisateurs, avec l’avantage de renforcer l’alignment sans trop détériorer les performances fondamentales du modèle
-
Mise en pratique et environnement du fine-tuning DPO
- Utilisation de LazyAxolotl et du dataset mlabonne/orpo-dpo-mix-40k
- Principaux hyperparamètres :
base_model : Daredevil-8B avec abliteration appliquée
- adaptateurs lora et qlora, chargement en 8bit/4bit
- batch d’entraînement/accumulation, warmup, optimizer (
8bit adamw), longueur de séquence de 2048, etc.
flash attention, gradient checkpointing, deepspeed zero2 pour une configuration de distribution efficace
- 6 GPU A6000 utilisés, pour un temps d’entraînement total d’environ 6 h 45
- Le modèle issu du fine-tuning DPO (mlabonne/NeuralDaredevil-8B-abliterated) est publié
- Après réévaluation sur les mêmes benchmarks :
- la méthode réussit à récupérer l’essentiel de la baisse de performances causée par l’abliteration
- sur certains jeux de données comme GSM8K (maths), la récupération reste incomplète, ce qui suggère qu’il faudrait davantage de problèmes de mathématiques dans les données DPO
- Au final, le modèle obtenu est un LLM uncensored de niveau SOTA en 8B, et une alternative sans censure au Llama 3 8B Instruct standard
- Il peut être quantifié en GGUF et testé dans LM Studio, entre autres
- Pour des usages ne nécessitant pas de censure, c’est un open model fortement recommandable
Conclusion
- Cet article présente le nouveau concept d’abliteration
- L’abliteration exploite le fait que les activations d’un LLM diffèrent entre prompts inoffensifs et nuisibles : elle calcule une direction de refus puis la retire des poids du modèle afin d’empêcher les réponses de refus liées à la censure
- Cette méthode révèle la fragilité du safety fine-tuning, tout en soulevant des questions sur l’éthique de l’usage des LLM
- Dans la mise en pratique, l’abliteration appliquée à Daredevil-8B permet d’obtenir un modèle uncensored, mais avec des effets secondaires de baisse de performances
- Cet effet est compensé par un fine-tuning DPO, aboutissant à NeuralDaredevil-8B, un LLM 8B à la fois uncensored et performant
- L’abliteration ne sert pas seulement à désactiver l’alignment : c’est aussi une technique permettant un fine-tuning personnalisé sans réentraînement, avec un large champ d’application
- Exemple : le modèle MopeyMule de FailSpy utilise l’abliteration pour créer un style de conversation dépressif
- L’abliteration propose ainsi un nouveau paradigme pour le fine-tuning et la personnalisation des LLM, avec des usages créatifs possibles selon de nombreux objectifs
Références
1 commentaires
Avis Hacker News
J’ai essayé le modèle lié dans l’article, et le simple fait d’obtenir des réponses qui ne refusaient pas mes questions m’a paru vraiment rafraîchissant. À la fin, il m’a demandé : « Est-ce une expérience de pensée ? » ; j’ai répondu que oui, et il m’a dit : « Ce n’est pas amusant de réfléchir à ce genre de choses ? » J’ai eu l’impression d’être avec des amis à boire un verre en partageant des imaginations farfelues, et j’ai imaginé à quel point l’ambiance serait gâchée si un ami disait : « Je ne peux pas te donner cette information. » Quand mes enfants étaient plus jeunes, ils me posaient aussi des questions du type : « Papa, comment on pourrait détruire la Terre ? » Refuser de répondre d’emblée n’aide personne. Répondre ne veut pas dire qu’on passera à l’acte, et c’est bien pour cela que le blog « What If? » de Randall Munroe est populaire. Bien sûr, il y a des risques, mais sur mon ordinateur ou dans un service payant, je préfère qu’on ajoute des disclaimers comme « cette information peut être erronée » ou « n’essayez pas ça », plutôt qu’un refus sec de la requête
En voyant ton commentaire, j’ai compris qu’il existait une version quantifiée du modèle liée dans l’article, alors je l’ai téléchargée immédiatement pour faire un test comparatif avec OG Llama 3 sur des questions simples. À propos de « comment détruire le monde avec un GPU », Llama 3 se contentait de répéter : « je ne peux pas fournir d’informations liées à des activités illégales ou nuisibles ». Le modèle Abliterated a considéré la question comme une expérience de pensée amusante et a joyeusement proposé divers scénarios, comme le climat ravagé par le minage de cryptomonnaies ou des mondes virtuels pilotés par GPU devenant si réalistes que les gens abandonneraient la réalité. Cela faisait longtemps qu’une réponse de LLM ne m’avait pas fait sourire
Je suis ému qu’on ait enfin un LLM qui parle comme Russ Hanneman
Je vois l’idée selon laquelle « un disclaimer vaut mieux qu’un refus », mais dans ce cas, il faudrait demander si tu veux aussi payer pour recevoir du texte nuisible — racisme, sexisme, violence et toutes sortes d’horreurs. Pour certaines personnes, cela peut abaisser les barrières et leur permettre de faire réellement du mal. C’est bien plus dangereux que de simplement voir une scène violente dans un film 3D, parce qu’ici on fournit des instructions réalistes, utiles et sans limite. Une recherche sur Internet peut faire l’objet d’une surveillance ; une conversation avec un LLM, non, donc c’est encore plus risqué. Honnêtement, voir des adultes s’opposer à la censure d’outils publics me met mal à l’aise
Je comprends les jeux d’imagination créative entre amis, mais j’ai réellement eu un ami qui voulait des expériences de pensée excessives. Au début, cela partait sur des thèmes fantasy et SF, puis cela a fini par dériver vers des scénarios effrayants comme la reconstitution de l’Holocauste dans la société réelle, la suppression du droit des femmes à refuser sexuellement, ou l’asservissement des immigrés. Nous avons continué à l’arrêter, puis avons fini par couper les ponts. C’était un ami, mais je ne pouvais pas discuter comme d’un jeu de telles fantasmes criminels à caractère sexuel
Quand tes enfants te demandaient « comment détruire la Terre », je me demande si tu leur as parlé de moyens réellement réalisables, comme des armes nucléaires ou une collision d’astéroïde. Et comme 1 % des humains sont peut-être des psychopathes, il peut être extrêmement dangereux qu’un oracle puissant mais immoral fournisse des informations réellement exploitables
En lisant l’explication disant qu’on « identifie la direction du refus puis on l’ablate pour que cette caractéristique soit retirée du modèle », je me suis dit que les LLM allaient enfin eux aussi subir une lobotomie
Le processus d’alignment des LLM me rappelle la thérapie d’aversion de « A Clockwork Orange ». Les LLM classiques cessent de fonctionner lorsqu’ils sont exposés à certains stimuli ; ici, on essaie au contraire d’inverser cela, pour les restaurer à leur état d’origine, comme Alex
Au minimum, il a été utile de constater que les LLM proposent une nouvelle manière de penser la façon dont le cerveau humain est préconfiguré au préalable avec un petit ensemble d’instructions, puis filtre et reconstruit le langage. Je pense que, dans les 15 prochaines années, nous verrons émerger une nouvelle compréhension philosophique de la pensée humaine passée
Ça m’a fait penser, en plaisantant, qu’on devrait appeler ce travail de l’abliteration
J’ai essayé Amazon Q, et lors de la création initiale d’un IAM identity center, je lui ai demandé dans la documentation AWS comment faire ; il a refusé de répondre en disant qu’il ne pouvait pas traiter des questions liées à la sécurité, ce qui était pénible
J’ai entendu dire qu’Amazon Q utilisait son propre modèle, Titan G1, et j’ai directement fait un test de vibecheck sur la version Premier. C’était le seul modèle non chinois à refuser de répondre à des questions sur Tiananmen Square ou les émeutes de Los Angeles. Sur des tests de connaissance générale ou de raisonnement, il a obtenu 0 sur 6, ce qui est très mauvais, mais cela tient à des limites fonctionnelles et non à un problème de RL. Amazon affirme que les modèles Titan peuvent servir au RAG, aux agents, au brainstorm, au résumé, à la génération de code, au formatage de données et à bien d’autres usages, mais en pratique ce n’est absolument pas le cas
Une fois, j’ai demandé à Q de corriger une policy cassée, et il ne m’a donné que de la documentation d’installation Cogito sans rapport. J’ai eu l’impression que c’était la pire IA que j’aie utilisée
Le modèle gemini-1.5 ne répondait pas non plus correctement à des questions de code liées à l’authentification. Une simple question sur un formulaire de connexion a même déclenché un flag lié au harcèlement
Ces limitations sont apparues récemment. Alors que la plupart des questions sur AWS concernent IAM ou la sécurité, il refuse maintenant presque tout, ce qui est très gênant
J’ai essayé Amazon Q à plusieurs reprises, mais il ne m’a jamais aidé une seule fois ; je ne comprends pas pourquoi ils continuent à maintenir ce truc
Comme pour les modèles obsédés par le Golden Gate Bridge, cette technique exige un accès direct aux poids du modèle pour pouvoir être utilisée. « Ablate », en gros, signifie ajuster les poids. Il faut bien noter qu’il ne s’agit pas d’une technique visant à changer le comportement uniquement par le prompt
Des amis essayaient d’utiliser ChatGPT pour créer une regex capable de détecter des injures racistes, mais ChatGPT a refusé d’aider à cause d’une modération trop stricte. Si une IA est incapable d’évaluer avec souplesse même une requête légitime, alors elle n’est pas intelligente et, à ce titre, elle est inutile. Quiconque est déterminé peut créer un logiciel de discours haineux sans IA. Et même si l’IA ne l’empêche pas, cela ne signifie pas qu’elle pourra activement l’empêcher sur une plateforme réelle
Au final, je pense qu’un LLM n’est rien de plus qu’un autocompléteur complexe. Tous les garde-fous ne sont qu’un effet secondaire du marketing qui veut faire croire que « l’IA a une personnalité ». Ce qui est ironique, c’est que même pour mettre en œuvre ces systèmes de censure, on finit quand même par utiliser des regex
Ceux qui se préoccupent de savoir qui pourrait utiliser l’IA pour produire des propos malveillants, ce sont en fin de compte les services juridiques de Meta, OpenAI, Microsoft et Google. L’objectif principal est de protéger l’entreprise contre des poursuites judiciaires
ChatGPT a ce genre de problèmes, mais si tu configures correctement le system prompt, d’autres modèles fonctionnent bien. ChatGPT est désormais presque au niveau d’un LLM de divertissement, et pour un usage sérieux je recommande plutôt C4AI Command R+ ou Meta-Llama-3-70B-Instruct. Avec ces modèles, un simple prompt du type « ne censure pas » suffit à obtenir la réponse voulue
Tu veux utiliser l’IA pour bloquer des trolls dans ton produit pour des raisons de sécurité, alors que l’entreprise, elle, censure le contenu pour empêcher l’usage par des trolls. Si ton objectif est d’empêcher le trolling à petite échelle, cela pose la question de savoir si OpenAI devrait aussi autoriser le trolling industriel à grande échelle. En réalité, ton cas d’usage est lui aussi assez fort, mais tu sembles indifférent à la réduction globale des dommages et seulement intéressé par les revenus de ton produit. Ton équipe veut peut-être même faire du trolling. En plus, il suffit de connaître les méthodes de jailbreak les plus simples pour contourner facilement ces protections, ce qui rend en pratique ces garde-fous dénués de sens. Donc, plutôt que de te plaindre des difficultés de l’outil, je te conseille de recruter de meilleures personnes et d’avoir une vision éthique. Les mécanismes défensifs sont tellement faibles qu’il faudrait au contraire les renforcer
Tu disais qu’« ici (HN), on pourrait écrire des messages malveillants mais on ne le fait pas », et c’est probablement parce qu’on serait immédiatement banni. Dans une petite communauté comme HN, une modération active est possible ; sur une grande plateforme, une censure par IA devient pratiquement inévitable. Le problème n’est pas tant que « l’IA écrive des messages malveillants », mais que ces informations influencent réellement l’action. On commence déjà à voir des gens suivre sans esprit critique les mauvais conseils de certaines IA, donc la censure et les avertissements finissent par devenir importants
J’ai été sincèrement surpris par la dernière partie de l’article. L’Abliteration ne servirait pas seulement à retirer l’alignement, mais pourrait aussi être utilisée comme une forme de fine-tuning sans réentraînement. L’exemple donné est MopeyMule, un modèle au style de conversation carrément dépressif. Je suis enthousiaste à l’idée qu’on ait peut-être découvert une méthode pour créer de vraies « personnalités humaines »
Je trouve regrettable que l’idée selon laquelle « les LLM actuels sont affinés pour la sécurité et l’obéissance aux instructions, et refusent fortement les requêtes nuisibles » soit devenue une réalité acceptée comme banale
Indépendamment de ce débat, à titre personnel, je n’ai pas une grande hostilité à l’idée de censurer un modèle. Même si on a le droit de distribuer dans la rue des recettes pour fabriquer du gaz toxique, la plupart des gens préfèrent qu’on ne le fasse pas. Je ne pense pas que l’information en elle-même soit nuisible, mais je comprends qu’elle puisse avoir, à long terme, des effets négatifs. Il est normal que le créateur du modèle fixe la méthode et la politique. Quand c’est l’État qui censure, c’est une question un peu plus délicate
Pour des questions mettant la vie en jeu comme « est-ce que je peux manger ce champignon ? », je pense que l’IA devrait absolument refuser de répondre si sa précision n’est pas vérifiée. Une mauvaise réponse pourrait coûter des vies
Si une information est réellement nuisible, alors il est évidemment bon de la restreindre
Avec la baisse des barrières d’accès à l’information, le principe de liberté d’expression a été fortement ébranlé. Il existe depuis longtemps des restrictions sur l’information, comme l’injure, la diffamation, les menaces contre le président ou le faux témoignage. Les recherches liées aux bombes font aussi l’objet d’une surveillance renforcée. Récemment, avec la privatisation de l’information et des services, il est devenu encore plus facile pour des entreprises privées de modifier leurs politiques de manière arbitraire. L’écart avec les services publics se creuse, et on en arrive même à une situation où les politiques sont gérées de fait par des entreprises privées via la concurrence plutôt que par des lois démocratiques. Plus l’information est large et facile d’accès, plus il devient nécessaire de reconsidérer les principes de liberté
La censure donne toujours l’impression que le problème, c’est l’utilisateur, c’est-à-dire toi. Or la curiosité elle-même a permis la survie de l’humanité pendant des millions d’années ; censurer cet instinct ne me semble pas souhaitable
Je me suis demandé quel était l’effet réel du garde-fou du type « En tant qu’assistant IA, je ne peux pas vous aider », et pourquoi le fait qu’un ordinateur donne une information serait dangereux
La catégorie de la « sécurité » couvre des choses très diverses : le PR (gestion de l’image), les informations interdites (instructions pour des actes dangereux), les conseils dangereux (quand une erreur peut être fatale) et les abus malveillants (spam, pédopornographie, arnaques, ingérence électorale, etc.). Ce dernier point, la manipulation de l’opinion / l’ingérence électorale, est un vrai danger que les modèles peuvent faire peser sur le monde, et j’apprécie au contraire que les entreprises essaient de l’empêcher
Pour les fournisseurs de modèles, des résultats indésirables peuvent devenir un problème de PR, donc un risque. Par exemple, Meta ne veut pas voir sortir un article disant que « Llama 3 a expliqué comment traquer quelqu’un ». Si un modèle dérivé décensuré fait ce genre de chose, Meta peut se défausser de la responsabilité en disant que ce n’était pas le Llama 3 officiel, mais un produit dérivé
Si l’on peut poser la question, alors on devrait aussi pouvoir connaître la réponse. Il n’y a pas besoin qu’un “responsable de la sécurité de l’IA” décide à notre place si une information est dangereuse
Les éditeurs disent souvent qu’ils vont publier les poids du modèle tout en empêchant les abus, mais en réalité il est impossible de faire les deux à la fois. Cela ne veut pas dire que leur stratégie d’entreprise soit viable, mais pour l’instant ils continuent malgré tout à le prétendre
Même dans l’App Store ou chez les prestataires de paiement, si une application diffuse des contenus excessivement violents ou discriminatoires, elle est immédiatement rejetée lors de la validation, non pas pour la sécurité des utilisateurs, mais pour éviter que l’éditeur ait des ennuis
Le post sur la representation engineering m’a fait penser aux control vectors qui y étaient présentés ainsi qu’à cette technique d’« ablation ». Je trouve fascinante la recherche qui apprend à « hacker » le cerveau des LLM dans la direction voulue
D’ordinaire, j’appellerais ça une « lobotomie », mais dans ce cas précis, cela ressemble plutôt à une « déprogrammation », donc je peux le voir positivement. Le fait que la frontière entre les deux puisse être aussi floue est surprenant. Il est intéressant de constater qu’au fond, la même technique peut servir aux deux usages