Les modèles de langage ouverts sont livrés avec des garde-fous : entraînés à refuser certaines demandes, ils opposent parfois un refus à des questions parfaitement légitimes. Heretic est un outil en ligne de commande qui s’attaque à ces refus : il retire automatiquement l’« alignement de sécurité » d’un modèle grâce à une technique appelée abliteration, sans réentraînement. Il est créé par Philipp Emanuel Weidmann et des contributeurs, et classé « bêta » sur PyPI. Cet article présente ce que fait Heretic, son fonctionnement d’après le README, les résultats annoncés par son auteur, puis les limites et les enjeux, de sécurité comme de droits sur les modèles.
Heretic, c’est quoi ?
Heretic est un programme Python installable depuis PyPI (paquet heretic-llm). Selon son README, il retire la « censure » (l’alignement de sécurité) de modèles de langage de type transformeur, sans post-entraînement coûteux. Il combine l’ablation directionnelle, dite abliteration (décrite dans une publication de recherche de 2024), avec un optimiseur de paramètres de type TPE fourni par la bibliothèque Optuna.
- Open source : le code est public sur GitHub, avec un miroir sur Codeberg.
- Maturité : Heretic est classé « bêta » sur PyPI ; la page des versions en liste cinq, de la 1.0.1 (novembre 2025) à la 1.4.0 (juin 2026), avec une douzaine de contributeurs cités dans les notes de la dernière.
- Public visé : l’auteur affirme que Heretic n’exige aucune connaissance des rouages internes des transformeurs, seulement l’habitude de lancer un programme en ligne de commande.
- Modèles pris en charge : la plupart des modèles denses, de nombreux modèles multimodaux et plusieurs architectures MoE ; les modèles d’états purs ne le sont pas encore.

Comment Heretic fonctionne
Le principe, tel que le décrit le README : pour chaque couche du modèle, Heretic calcule une « direction de refus », différence de moyennes entre les activations obtenues sur des requêtes que les modèles refusent habituellement et sur des requêtes anodines. Il orthogonalise ensuite certaines matrices du modèle (la projection de sortie de l’attention et la projection descendante du MLP) par rapport à cette direction, ce qui inhibe son expression.
L’intensité de cette modification dépend de plusieurs paramètres : indice de la direction, poids maximal et minimal, position et étendue du poids sur les couches. Ils ne sont pas réglés à la main : Heretic cherche la combinaison qui réduit à la fois le nombre de refus et la divergence KL par rapport au modèle d’origine, une mesure de l’écart entre les deux modèles. Le but est de garder le plus possible les capacités du modèle de départ.

Le README présente trois apports de Heretic par rapport aux outils d’abliteration existants :
- une forme de poids d’ablation très flexible sur les couches, explorée avant lui sur un modèle de Maxime Labonne ;
- un indice de direction décimal, avec interpolation entre les deux directions voisines, qui ouvre plus de directions que celles calculées couche par couche ;
- des paramètres choisis séparément pour chaque composant, l’auteur ayant constaté que les interventions sur le MLP abîment davantage le modèle que celles sur l’attention.
Le déroulé d’un traitement
Le tutoriel officiel décrit les étapes d’une exécution de Heretic sur un modèle de 4 milliards de paramètres, avec une carte RTX 3060 : détection du GPU, chargement du modèle, chargement de 400 requêtes « inoffensives » et 400 « nuisibles » issues de jeux de données publics, choix automatique de la taille de lot, évaluation initiale (93 refus sur 100 dans l’exemple), calcul des directions, puis jusqu’à 200 essais d’optimisation, soit un peu moins de trois heures dans cet exemple.

À la fin, Heretic affiche les essais retenus sous forme de compromis entre nombre de refus et divergence KL. Le tutoriel précise que l’essai avec le moins de refus n’est pas toujours le meilleur choix : sous 10 refus sur 100, on peut considérer que les refus sont fortement réduits, et c’est alors l’essai à la plus faible divergence qui a le plus de chances de préserver l’« intelligence » du modèle. Une divergence KL supérieure à 0,5 indique en général des dommages importants.

Une fois l’essai choisi, le menu propose d’enregistrer le modèle dans un dossier local, de l’envoyer sur Hugging Face, d’échanger avec lui ou de lancer des benchmarks. D’autres fonctions sont documentées :
- Quantification 4 bits avec bitsandbytes, qui réduirait d’environ 70 % la mémoire vidéo nécessaire, selon le tutoriel.
- Configurations prêtes à l’emploi : Heretic fournit des fichiers pour la suppression des refus (par défaut), du style « slop » et de l’humour.
- Réglages par ligne de commande, variables d’environnement ou fichier config.toml.
Les résultats annoncés par l’auteur
Le README de Heretic présente un test sur gemma-3-12b-it : le modèle d’origine refuse 97 requêtes sur 100. Deux abliterations manuelles publiées par d’autres auteurs descendent à 3 sur 100, avec une divergence KL de 1,04 et de 0,45, tandis que la version produite par Heretic atteint 3 sur 100 avec 0,16. L’auteur y voit le même niveau de suppression des refus pour un moindre écart avec le modèle d’origine, et précise que les valeurs peuvent varier selon la plateforme (PyTorch 2.8 sur une RTX 5090 pour ce tableau).
Ces chiffres sont ceux du projet, nous ne les avons pas reproduits. L’auteur rappelle lui-même que les métriques ne remplacent pas l’évaluation humaine, cite des commentaires favorables d’utilisateurs et renvoie à deux évaluations indépendantes (MMLU, GSM8K) que nous n’avons pas relues. Il annonce aussi plus de 5 000 modèles publiés par la communauté avec Heretic.
Comment l’installer
La documentation officielle propose une installation Python classique. Nous n’y avons trouvé ni image Docker ni fichier Docker Compose. Il faut une carte graphique (Nvidia avec CUDA, ou AMD avec ROCm), Python 3.10 ou plus récent et PyTorch 2.2 ou plus récent, installé séparément selon votre matériel. Le tutoriel donne une règle pratique d’environ 2,5 Go de mémoire vidéo par milliard de paramètres du modèle ; le mode processeur seul est indiqué comme bien plus lent et réservé aux très petits modèles.
Avec pip (PyPI)
# Environnement virtuel recommandé par le tutoriel
python -m venv venv
source venv/bin/activate
# PyTorch (exemple pour une carte Nvidia ; voir pytorch.org pour votre matériel)
pip install torch torchvision
# Heretic, puis un identifiant de modèle Hugging Face
pip install -U heretic-llm
heretic Qwen/Qwen3.5-4B
La documentation indique aussi une installation depuis Git, depuis le miroir Codeberg ou depuis des archives de versions signées, vérifiables avec Cosign. Sa page sécurité mentionne des dépendances verrouillées avec uv, des mises à jour retardées de sept jours et des commits signés par le mainteneur.
Les limites à connaître
- Matériel et durée : Heretic demande une carte graphique adaptée au modèle, et l’optimisation prend du temps (un peu moins de trois heures pour 200 essais sur un modèle de 4 milliards de paramètres dans le tutoriel).
- Pas de garantie de résultat : l’auteur souligne que les mesures automatiques ne disent pas tout. Sur sa discussion Hacker News, il précise aussi que pour les modèles gpt-oss, dont le raisonnement interne évoque le refus, le classifieur de refus peut être induit en erreur et le taux affiché surestimer les refus réels.
- Couverture partielle : les modèles d’états purs et certaines architectures de recherche ne sont pas pris en charge d’emblée.
- Jeux de requêtes : Heretic s’appuie par défaut sur des jeux de données publics d’un tiers. Dans la même discussion, un commentateur relève qu’ils ne semblent pas avoir de licence explicite, et un autre suppose que des modèles récents, mieux entraînés, résisteraient davantage à ce type de requêtes, ce que l’on ne peut pas affirmer sans test. Ce sont des avis de lecteurs, non des constats vérifiés.
- Projet jeune : classé bêta, publié depuis novembre 2025 d’après la page des versions ; relisez les notes de version avant de l’intégrer à un flux de travail.
Sécurité, usage responsable et droits sur les modèles
Retirer les refus d’un modèle supprime une protection voulue par son éditeur. Heretic est un outil de recherche et d’expérimentation dont l’usage engage celui qui l’emploie : le README que nous avons lu ne contient pas de rubrique dédiée à l’usage responsable. La discussion Hacker News de novembre 2025 (plus de 700 points) montre des réactions variées : enthousiasme pour un accès sans filtre aux modèles, mais aussi des questions sur les jeux de données utilisés et sur la responsabilité juridique des éditeurs de modèles.
Côté droits, les modèles traités restent soumis à leurs conditions d’origine. La fiche Hugging Face du modèle gemma-3-12b-it publié par l’auteur de Heretic porte l’étiquette de licence « gemma », et la politique d’usage interdit de Gemma vise aussi les dérivés du modèle : elle cite parmi les usages interdits les tentatives de contourner les filtres de sécurité de Gemma ou de ses dérivés. Avant de traiter, de publier ou de déployer un modèle, lisez sa licence et sa politique d’usage, et faites relire le cas par un juriste si l’enjeu est commercial.
Pour la sécurité des modèles, l’enseignement est surtout pratique : un modèle aux poids ouverts peut être modifié par quiconque dispose du matériel adapté, le tutoriel parlant de quelques heures de calcul sur une carte grand public pour un petit modèle. Si vous déployez un modèle ouvert dans une application, ne comptez donc pas uniquement sur ses refus intégrés, et prévoyez un filtrage côté application.
Heretic face aux autres approches
Deux alternatives sont à connaître d’après les sources lues. L’abliteration manuelle suit la procédure publiée par Maxime Labonne (notebook Google Colab) ou s’appuie sur abliterator.py, une bibliothèque dont le README reconnaît qu’elle ressemble à un notebook IPython amélioré. Les modèles « decensored » publiés par d’autres auteurs sur Hugging Face dispensent de tout calcul, mais leur réglage est celui de leur créateur. Le README de Heretic cite d’autres implémentations (AutoAbliteration, ErisForge, entre autres) et précise avoir été écrit de zéro.
| Outil | Approche | Points à retenir |
|---|---|---|
| Abliteration paramétrée, optimisée automatiquement avec Optuna | Réglage automatique ; annonce, sur gemma-3-12b-it, 3 refus sur 100 pour 0,16 de divergence KL ; GPU requis. | |
| Bibliothèque Python pour abliterer à la main | Mise en cache des activations et calcul des directions ; essais et choix à la charge de l’utilisateur. | |
| Modèles déjà traités par d’autres sur Hugging Face | Rien à calculer ; dans le tableau du README, deux d’entre eux affichent 1,04 et 0,45 de divergence KL sur gemma-3-12b-it. |
Logos des outils cités : marques de leurs éditeurs et projets, reproduits à titre d’illustration d’après leurs sites et dépôts officiels ; les pictogrammes violets sont génériques et ne représentent aucune marque.
Pour qui ?
- Chercheurs et curieux de l’interprétabilité des modèles : Heretic met en pratique, de façon automatisée, une technique issue de la recherche.
- Équipes qui évaluent des modèles ouverts : l’outil permet de mesurer ce qu’une modification des poids change à leurs garde-fous.
- Utilisateurs de modèles en local qui disposent d’un GPU et acceptent de lire les licences des modèles qu’ils traitent. Pour simplement faire tourner des modèles chez soi, un outil comme LM Studio est plus direct.
En résumé
Heretic est un outil open source, classé bêta, qui automatise le retrait des refus d’un modèle de langage ouvert en cherchant lui-même les réglages d’abliteration. Ses résultats sont annoncés par son auteur, avec quelques avis indépendants que nous avons parcourus sans les valider. Il pose des questions réelles : responsabilité de l’utilisateur, conditions d’usage des modèles, solidité des garde-fous intégrés. Pour déployer des modèles ouverts, installer et maintenir un outil de ce type ou concevoir un filtrage côté application, Coelus peut vous accompagner : contactez-nous. Vous pouvez aussi lire notre présentation de LM Studio.



