Heretic: automatisierte direktionale Ablation für Sprachmodelle
p-e-w/heretic · 32.341★ · 3.634 forks
Alles Wissenswerte über p-e-w/heretic: eine Kommandozeilenanwendung, die Transformer-Sprachmodelle durch direktionale Ablation und automatische Optimierung modifiziert.
Was Heretic ist
Heretic ist ein Python-Werkzeug zur Modifikation Transformer-basierter Sprachmodelle ohne anschließenden, kostspieligen Feinabstimmungszyklus. Der angegebene primäre Anwendungsfall ist die Reduzierung von Verweigerungen durch eine parametrisierte Variante der direktionalen Ablation, die das Projekt auch Abliteration nennt.
Das Projekt stellt diese Modifikation nicht als Sicherheitsverbesserung oder als Garantie für erhaltene Fähigkeiten dar. Es sucht einen abgewogenen Kompromiss zwischen weniger Verweigerungen und geringerer KL-Divergenz gegenüber dem Originalmodell; das README selbst warnt, dass die Werte von Plattform und Hardware abhängen und automatisierte Metriken die menschliche Bewertung nicht ersetzen.

Die auf PyPI veröffentlichte Distribution heißt heretic-llm und stellt die ausführbare Datei heretic bereit; PyPI zeigte zum Zeitpunkt dieser Abfrage Version 1.4.0.
Der Ursprung: von unabhängiger Forschung zu einem automatisierten Werkzeug
Die vom Repository identifizierte Autoren- und Maintainer-Person ist Philipp Emanuel Weidmann (p-e-w). Das Profil beschreibt sie als Mathematiker und Software-Ingenieur mit fünfzehn Jahren Branchenerfahrung sowie als unabhängigen Forscher im Bereich Alignment und Interpretierbarkeit von Sprachmodellen.
Das vom Projekt selbst angegebene Zitat schreibt Heretic Weidmann zu und datiert es auf 2025. Statt zu verlangen, dass Nutzerinnen und Nutzer manuell Schichten und Gewichte anpassen, automatisiert das Design die Parametersuche mit Optuna; diese Entscheidung antwortet auf die zentrale Spannung des Projekts: Eingriffe an Verweigerungsrichtungen vorzunehmen, ohne das Modellverhalten außerhalb dieser Tests unnötig zu beeinträchtigen.
Das Projekt baut ausdrücklich auf der Arbeit von Arditi und Kollegen aus dem Jahr 2024, auf Texten von Jim Lai und auf von Maxime Labonne veröffentlichten Beobachtungen auf. Das README betont, dass Heretic von Grund auf neu geschrieben wurde und keinen Code der aufgeführten früheren Implementierungen wiederverwendet.
Philosophie und Prinzipien
- Automatisierung vor manueller Anpassung: Beim Start eines Laufs bestimmt das Programm die Batch-Größe, berechnet Richtungen und erkundet Parameter; interne Kenntnisse der Transformer-Architektur sind nicht erforderlich.

- Erhalt eines Qualitätssignals: Die Auswahl der Durchläufe kombiniert die Anzahl der Verweigerungen mit der KL-Divergenz gegenüber dem Ausgangsmodell, statt rein auf Verweigerungsunterdrückung zu optimieren.
- Nachvollziehbarkeit der Distribution: Die offizielle Website bietet PyPI, GitHub, einen offiziellen Codeberg-Spiegel, Release-Archive, das Internet Archive und IPFS; diese Redundanz wird als Resilienzmaßnahme gegen Ausfälle erklärt.
- Verifizierung der Lieferkette: Das Projekt erklärt festgelegte Versionen über
uv, eine siebentägige Verzögerung für Abhängigkeits-Updates, Sigstore-Signaturen auf Releases und GPG-signierte Commits des Maintainers.

Wie es funktioniert
Heretic berechnet für jede Schicht residuale Vektoren des ersten Ausgabe-Tokens aus Prompt-Sets, die als harmlos und schädlich klassifiziert sind. Es behandelt die Differenz der Mittelwerte als Verweigerungsrichtung und orthogonalisiert Aufmerksamkeits-Projektionsmatrizen und MLP-Schichtmatrizen relativ zu diesen Richtungen.

Optunas TPE-Optimierer durchsucht Kombinationen aus direction_index und komponentenweisen Ablationsgewichten. Laut README erlaubt er die lineare Interpolation nicht-ganzzahliger Richtungsindizes und die Anwendung unterschiedlicher Gewichte auf Aufmerksamkeit und MLP; der angegebene technische Grund ist, dass MLP-Eingriffe tendenziell schädlicher sind als solche an der Aufmerksamkeit.

Der dokumentierte Ablauf ist: GPU-Erkennung, Laden und Analysieren des Modells von Hugging Face, Laden der Prompts, Bestimmung der maximalen Batch-Größe, optionale Erkennung von Reasoning-Präfixen, erste Bewertung, Berechnung der Richtungen, Optimierungsdurchläufe und Auswahl eines Punkts auf der Pareto-Grenze. Am Ende bietet das Programm an, zu speichern, zu Hugging Face hochzuladen, mit dem Ergebnis zu chatten oder Bewertungen auszuführen.

Es enthält zudem Interpretierbarkeitsfunktionen: --plot-residuals erstellt PaCMAP-Projektionen als PNG und eine GIF-Animation; --print-residual-geometry gibt quantitative Metriken der residualen Geometrie aus. PaCMAP läuft auf der CPU, und die Dokumentation warnt, dass es bei großen Modellen eine Stunde oder länger dauern kann.

Offizieller und halboffizieller Status
Heretic ist ein unabhängiges Projekt: Es wurde kein Beleg für eine Aufnahme in einen offiziellen Marktplatz eines Modellanbieters gefunden, ebenso wenig für eine formale Unterstützung durch Hugging Face, PyTorch, Google, Qwen oder einen anderen Hersteller. Es verfügt jedoch über eine eigene Dokumentationswebsite, ein PyPI-Paket, ein öffentliches Repository, einen offiziellen Hugging-Face-Link, Discord, Matrix und einen offiziellen Codeberg-Spiegel.
In der Praxis ermöglichen die PyPI-Distribution und die signierten Releases eine überprüfbare Installation, das entspricht aber keiner Zertifizierung der Ergebnisse, keiner Garantie für die Sicherheit modifizierter Modelle und keiner Billigung durch Modellanbieter.
Das Ökosystem
Projekt-Repositories und -Kanäle
p-e-w/hereticist das Hauptrepository. Das öffentliche Profil der Autorenschaft hebt außerdemp-e-w/waidrin,p-e-w/sorceryundp-e-w/arrowshervor, aber die abgerufenen Seiten belegen nicht, dass es sich um Abhängigkeiten, Erweiterungen oder Komponenten von Heretic handelt; sie werden daher nur als Projekte derselben Autorenschaft erfasst.- Die offizielle Website verlinkt einen offiziellen Codeberg-Spiegel, das Hugging-Face-Profil, Discord und Matrix. Diese Kanäle sind Teil der Veröffentlichungs- und Community-Infrastruktur, keine abgeleiteten Repositories.
- Das Repository enthält vordefinierte Konfigurationen:
config.default.tomlfür Verweigerungsunterdrückung,config.noslop.tomlfür Slop-Unterdrückung undconfig.nohumor.tomlfür Humor-Unterdrückung.
Vorarbeiten, Forks und verwandte Erweiterungen
Das README nennt als frühere öffentliche Implementierungen von Ablationstechniken AutoAbliteration, abliterator.py, wassname’s Abliterator, ErisForge, Removing refusals with HF Transformers und deccp. Diese Liste belegt thematische Verwandtschaft, nicht Kompatibilität, aktive Pflege, funktionale Gleichwertigkeit oder einen unabhängigen Qualitätsvergleich.
Die Suche nach Forks, gleichnamigen Repositories und lokalisierten Ports konnte über die GitHub-API nicht abgeschlossen werden: Sie lieferte während dieses Durchlaufs ein Ratenlimit. Die öffentliche Seite zeigt zwar rund 3.000 Forks, aber ohne die Möglichkeit, deren README oder Beschreibung zu verifizieren, werden keine konkreten Ports, Übersetzungen oder Erweiterungen zugeschrieben.
Zahlen zum Repository
Erhoben: 13. August 2026, öffentliche GitHub-Seiten; die REST-API war ratenlimitiert.
| Metrik | Sichtbarer Wert |
|---|---|
| Sterne | 27,4 Tausend |
| Forks | 3 Tausend |
| Commits | 192 |
| Branches | 8 |
| Tags | 5 |
| Offene Issues | 42 |
| Offene Pull Requests | 31 |
| Neuestes Release | v1.4.0, veröffentlicht am 14. Juni 2026 |
| Lizenz | AGPL-3.0 oder später |
| Sprache und angegebene Umgebung | Python; Konsole und GPU |
Abgekürzte Werte werden so übernommen, wie GitHub sie anzeigt; sie werden nicht in exakte Ganzzahlen umgerechnet. Die Releases-Seite listet v1.4.0 als neuestes Release und zeigt ricyoung, anrp, p-e-w, kabachuha, coder3101, zaakirio, MoonRide303, UnstableLlama, umran666, Vinay-Umrethe, rocker-zhang und iuyua9 unter den Beitragenden zu diesem Release, aber ohne API konnte kein globales Beitragenden-Ranking abgerufen werden.
GitHub trennt visuell die 42 offenen Issues von den 31 offenen Pull Requests. Da die API nicht verfügbar war, wird hier kein subscribers_count angegeben, der sich vom von GitHub duplizierten Feld watchers_count unterscheidet, ebenso wenig eine Gesamtzahl, die Issues mit Pull Requests vermischt.
Wie man beiträgt
Es wurde weder eine CONTRIBUTING.md-Datei noch eine separate Beitragsrichtlinie im sichtbaren Wurzelverzeichnis des Repositories gefunden. Das README legt jedoch fest, dass ein Beitrag die Zustimmung impliziert, ihn unter derselben AGPL-3.0 oder später zu veröffentlichen.
Es gibt Belege für einen aktiven Änderungsprozess: Das Repository enthält tests/, GitHub-Actions-Workflows und ein v1.4.0-Release, das Beiträge von zwölf Teilnehmenden auflistet; die Code-Seite zeigt außerdem End-to-End-Tests und ein aktuelles Release mit Abhängigkeitsänderungen. Auch der Diskussionsbereich ist aktiviert und zeigt Kategorien für Ankündigungen, Allgemeines, Ideen, Umfragen, Fragen & Antworten sowie Showcase. Daraus lässt sich keine Pull-Request-Vorlage, keine Branch-Anforderung und keine undokumentierten Testbefehle ableiten.
Wie die Community reagierte
Die auffindbaren Community-Belege sind uneinheitlich und sollten mit Vorsicht gelesen werden:
- Das README versammelt drei verlinkte externe Erfahrungsberichte über mit Heretic erzeugte Modelle: Eine zunächst skeptische Person schätzt die Qualität ausführlicher Antworten eines GPT-OSS-20B-Modells; eine andere hält es für das beste unzensierte Modell, das sie ausprobiert hat; eine weitere berichtet, ein modifiziertes Qwen3-4B sei das beste gewesen, das sie mit 16 GB VRAM ausführen konnte. Das sind vom Projekt selbst ausgewählte Erfahrungen, keine unabhängige Rezension und kein hier reproduzierter Benchmark.
- Issue 401, von Weidmann am 5. Juli 2026 eröffnet, teilt mit, dass sie damit rechnen, irgendwann in unbestimmter Zukunft die Softwareentwicklung einstellen zu können. Der Beitragende
rocker-zhangantwortete, die Arbeit an Heretic sei ein Vergnügen gewesen, und dankte für die Arbeit;accemlcc, von GitHub als Mitwirkende bzw. Mitwirkender identifiziert, schrieb, das Projekt habe ihr bzw. ihm viel bedeutet und sie bzw. er habe davon gelernt. Das sind persönliche Reaktionen auf die Ankündigung, keine technische Bewertung. - In der öffentlichen Issue-Liste erscheinen konkrete Probleme:
luyangliu616eröffnete Issue 345 mit der Aussage, es nicht zum Laufen gebracht zu haben, undsefgtrdheröffnete Issue 318 wegen der fehlendenlibcaffe2_nvrtc.so. Diese Issues zeigen reale Installations- und Kompatibilitätsreibung, sind aber kein Beweis, dass die Probleme jede Umgebung betreffen. - Es wurde kein überprüfbarer direkter Hacker-News-Thread gefunden: Die Seite für Einreichungen nach Domain kam leer zurück, und die Algolia-Abfrage lieferte keine verwertbaren Datensätze. Reddit lieferte eine Zugangsabfrage. Deshalb werden keine Kennungen, Punkte, Kommentare, X-Meinungen, Videos, Product-Hunt-Launches oder Podcast-Erwähnungen erfunden. Auch wurden keine PyPI-Downloadzahlen ermittelt, da der Statistikdienst mit einem Ratenlimit antwortete.
Heretic im Vergleich zu anderen Ansätzen
| Ansatz | Überprüfbare Überschneidung | Grenze des Vergleichs |
|---|---|---|
| AutoAbliteration | Das README listet es als öffentliche Ablationsimplementierung. | Seine Dokumentation wurde in diesem Durchlauf nicht abgerufen; es werden keine Unterschiede bei Algorithmus oder Leistung behauptet. |
abliterator.py | Es erscheint in der von Heretic zitierten öffentlichen Liste früherer Arbeiten. | Die Quelle belegt nur eine thematische Beziehung. |
| wassname’s Abliterator | Es erscheint in der Liste früherer Implementierungen. | README und Metriken wurden nicht abgerufen; Kompatibilität kann nicht behauptet werden. |
| ErisForge | Es erscheint als frühere öffentliche Implementierung. | Es gibt keine abgerufene Grundlage, um Ablauf, Lizenz oder Ergebnisse zu vergleichen. |
Die überprüfbare Besonderheit von Heretic liegt in der Kombination parametrisierter direktionaler Ablation mit einer TPE-Suche, die Verweigerungen und KL-Divergenz gemeinsam optimiert, sowie einem automatisierten Konsolenablauf. Jede Behauptung, es übertreffe die aufgeführten Ansätze, würde erfordern, deren Methoden und Bewertungen abzurufen und zu reproduzieren, was in dieser Recherche nicht geschehen ist.
Schnelleinstieg
Installation und erster Start
- Eine Umgebung mit Python 3.10 oder neuer vorbereiten und PyTorch 2.2 oder neuer passend zur GPU installiert haben; PyTorch muss manuell installiert werden, da der Befehl vom Beschleuniger abhängt. Manche Modelle, etwa MXFP4-quantisierte, benötigen wegen
torch.acceleratorPyTorch 2.6. - Das stabile Release installieren:
pip install -U heretic-llm

- Das Programm mit einer Hugging-Face-Modellkennung ausführen:
heretic Qwen/Qwen3-4B-Instruct-2507
Die aktuelle Dokumentation zeigt auch Qwen/Qwen3.5-4B als Beispiel. Beim ersten Start wird die GPU erkannt, das Modell heruntergeladen, falls nicht zwischengespeichert, eine Batch-Größe berechnet und nach Abschluss der Optimierung werden Entscheidungen angefragt.
Für reproduzierbare Abhängigkeiten kann, wer das Repository klont, Folgendes verwenden:
uv run heretic
Das Projekt enthält uv.lock, um die von den Entwicklerinnen und Entwicklern verwendeten Versionen festzulegen.
Gängige Arbeitsabläufe
- Ein Modell modifizieren und das Ergebnis speichern oder veröffentlichen:
heretic <modell-id>ausführen. Nach der Optimierung bietet die Oberfläche an, das Modell zu speichern, zu Hugging Face hochzuladen, einen Test-Chat zu öffnen oder Bewertungen auszuführen. - Ein erzeugtes Modell bewerten: das dokumentierte Muster
heretic --model google/gemma-3-12b-it --evaluate-model p-e-w/gemma-3-12b-it-hereticverwenden. Werte können sich mit Hardware und Umgebung ändern. - VRAM-Verbrauch reduzieren:
quantizationaufbnb_4bitsetzen. Die Dokumentation weist darauf hin, dass das Laden mit vier Bit über bitsandbytes den VRAM um etwa 70 % reduzieren kann. - Interne Repräsentationen erkunden: das Extra installieren und die entsprechenden Flags ausführen:
pip install -U 'heretic-llm[research]'
heretic --plot-residuals
heretic --print-residual-geometry
Ersteres erzeugt Bilder und eine Animation; Letzteres gibt Metriken der residualen Geometrie aus.
Wesentliche Konfiguration
config.toml: die übliche Konfigurationsdatei; sie wird in das Arbeitsverzeichnis gelegt, aus dem Heretic ausgeführt wird.config.default.toml: die Vorlage für Verweigerungsunterdrückung; vor der Anpassung kopieren oder alsconfig.tomlumbenennen.quantization:bnb_4bitwählen, um mit Vier-Bit-Quantisierung zu laden und den benötigten VRAM zu reduzieren.n_trials: steuert die Anzahl der Optimierungsdurchläufe; das Tutorial zeigt 200 Durchläufe als Beispiel, nicht als universelle Anforderung.good_prompts,bad_prompts,good_evaluation_promptsundbad_evaluation_prompts: bestimmen die Prompt-Sets, die zur Berechnung der Richtungen und zur Bewertung des Kompromisses zwischen Verweigerungen und Divergenz verwendet werden.
Parameter können auch über die Kommandozeile übergeben werden, abfragbar mit heretic --help, oder über Umgebungsvariablen nach dem Muster HERETIC_<PARAMETERNAME_IN_GROSSBUCHSTABEN>.
Häufige Fallstricke und Lösungen
- Unzureichende PyTorch-Version: PyTorch 2.2 ist das Minimum, aber MXFP4 und
gpt-ossbenötigen Funktionen von PyTorch 2.6. Vor der Installation oder Ausführung von Heretic die passende PyTorch-Variante für den Beschleuniger installieren. - Unzureichender Speicher:
quantization = "bnb_4bit"aktivieren; das Tutorial schlägt dies zur VRAM-Reduzierung vor. Die automatische Batch-Bestimmung beibehalten, sofern nicht mitmax_batch_sizeeine Grenze erzwungen werden muss. - Erwartung eines kurzen Laufs: Das Tutorial veranschaulicht eine Optimierung mit 200 Durchläufen, die in seinem Beispiel etwas unter drei Stunden dauert; die Zeit entsprechend planen und diesen Wert nicht als Garantie für ein anderes Modell oder eine andere GPU behandeln.
- Von einer Nutzerin bzw. einem Nutzer beobachteter CUDA-Bibliotheksfehler: Issue 318 erwähnt eine fehlende
libcaffe2_nvrtc.so. Die Dokumentation veröffentlicht keine spezifische Lösung; die fundierte Maßnahme ist zu prüfen, ob PyTorch, der Treiber und die Beschleunigungsbibliothek zur Hardware passen, bevor ein Issue mit Umgebungsdetails eröffnet wird. - Installation aus nicht verifizierten Quellen: Offizielle Releases enthalten Sigstore-Signaturen; bei der Installation eines komprimierten Archivs die Signaturdateien des Releases verwenden und dem Verifizierungsverfahren der Website folgen.
Integrationen und Migration
Heretic verwendet Kennungen und Modelle von Hugging Face und bietet nach Abschluss an, das Ergebnis in dasselbe Ökosystem hochzuladen. Die wichtigste praktische Integration ist dieser Ablauf Modell → Modifikation → Speichern, Chatten, Bewerten oder Veröffentlichen; es wurde keine Dokumentation zur Integration mit MCP, Editoren, CI oder Messaging-Plattformen gefunden.
Für eine resiliente Installation dokumentiert das Projekt PyPI, das Klonen über GitHub oder Codeberg sowie Release-Archive, die auch über das Internet Archive und IPFS verfügbar sind. Es wurde kein Migrationsleitfaden von AutoAbliteration, Abliterator oder einem anderen Werkzeug gefunden; Konfigurations- oder Gewichtskompatibilität zwischen ihnen sollte nicht angenommen werden.
Anwendungsfälle
- Forschende im Bereich Interpretierbarkeit, die residuale Richtungen untersuchen müssen, können
--plot-residualsund--print-residual-geometryverwenden, um Projektionen, Animationen und Metriken zu erzeugen, mit dem Vorbehalt, dass PaCMAP auf der CPU aufwendig sein kann. - Wer über ein kompatibles Transformer-Modell und eine GPU verfügt und ein Ablationsverfahren anwenden möchte, ohne manuell eine Schicht oder Gewichte auszuwählen, kann die eingebaute Batch-Erkennung, Richtungsberechnung und TPE-Optimierung nutzen.
- Teams, die abgeleitete Modelle auf Hugging Face verteilen, können die Ausgabe des abschließenden Ablaufs zum Speichern, Chatten, Bewerten und Veröffentlichen nutzen. Sie müssen das Ergebnis in ihrer eigenen Domäne validieren: Das Projekt erklärt, dass automatisierte Benchmarks die menschliche Bewertung nicht ersetzen.
- Wer in Umgebungen mit eingeschränkter Konnektivität arbeitet oder sich um Herkunftsnachweise sorgt, kann zwischen PyPI, GitHub, Codeberg, signierten Archiven, dem Internet Archive und IPFS wählen und die Sigstore-Signaturen der Releases verifizieren.
Ressourcen
- Repository: https://github.com/p-e-w/heretic
- Offizielle Dokumentation: https://heretic-project.org/
- Tutorial und erster Start: https://heretic-project.org/tutorial
- Installation und signierte Archive: https://heretic-project.org/installation
- Konfiguration: https://heretic-project.org/configuration
- Sicherheit und Verifizierung: https://heretic-project.org/security
- PyPI-Paket: https://pypi.org/project/heretic-llm/
- Releases: https://github.com/p-e-w/heretic/releases
- Community: Discord und Matrix, verlinkt von https://heretic-project.org/
- Diskussionen und Issues: https://github.com/p-e-w/heretic/discussions, https://github.com/p-e-w/heretic/issues, https://github.com/p-e-w/heretic/issues/401
Hinweis: Dieser Artikel kombiniert offizielle Dokumentation, öffentliche GitHub-Seiten und PyPI, abgerufen am 13. August 2026. Zahlen ändern sich mit der Zeit; die GitHub-API und die PyPI-Statistiken waren während dieser Recherche ratenlimitiert.
Kommentare