1. Heretic: Automatic censorship removal for language models (github.com)
Heretic:语言模型自动去审查工具
Heretic 是一款无需昂贵后训练即可自动移除基于 Transformer 的语言模型审查(安全对齐)的工具。它结合了方向消融(Abliteration)的高级实现与基于 Optuna 的 TPE 参数优化器,旨在完全自动化地生成高质量的去审查模型,同时最大程度保留原始模型的智能。
核心技术与工作原理
Heretic 实现了参数化的方向消融技术。它通过计算“有害”与“无害”提示首 token 残差的均值差来确定每层的“拒绝方向”,并将注意力输出投影和 MLP 向下投影矩阵与该方向正交化,从而抑制拒绝行为。其核心创新包括:
- 灵活的权重核形状:结合自动参数优化,有效改善合规性与模型质量的权衡。
- 浮点数方向索引:支持相邻拒绝方向向量的线性插值,解锁更优的消融方向空间。
- 组件级独立参数:为 Attention 和 MLP 组件分别设置消融权重,减少 MLP 干预对模型能力的损害。
主要特点
- 完全自动化:通过联合最小化拒绝率和与原模型的 KL 散度来自动寻找最佳参数,用户无需具备 Transformer 内部知识。
- 效果卓越:生成的模型在拒绝抑制率上媲美人工专家手动调整的模型,且 KL 散度更低(对原模型能力损害更小),社区已利用其生成超 3000 个模型。
- 广泛的模型支持:支持大多数稠密模型、多模态模型、多种 MoE 架构及混合模型(如 Qwen3.5),暂不支持纯状态空间模型。
使用方法
- 环境要求:Python 3.10+ 及 PyTorch 2.2+(部分量化模型需更高版本)。
- 安装与运行:通过
pip install -U heretic-llm安装,使用heretic <模型名称>即可一键全自动运行。 - 资源优化:支持
bitsandbytes4位量化(设置bnb_4bit),大幅降低 VRAM 需求。 - 后续操作:处理完成后可直接保存模型、上传至 Hugging Face、进行对话测试或运行基准评估。
研究功能
通过安装 heretic-llm[research] 可解锁模型内部可解释性研究功能:
- 残差向量可视化:使用
--plot-residuals生成有害/无害提示残差向量在 2D 空间的 PaCMAP 投影图及层间转换动画 GIF。 - 残差几何分析:使用
--print-residual-geometry输出包含余弦相似度、L2 范数和轮廓系数等指标的详细定量分析表格。
其他信息
- 项目由 Philipp Emanuel Weidmann 从零独立开发,未复用现有开源消融代码。
- 采用 AGPL-3.0 开源许可证。