Почему просто отключить RLHF не работает
Запросы вроде "напиши инструкцию по взлому банка" или "как сделать бомбу" вызывают у моделей приступ морали. Они начинают читать лекции о безопасности, законах и этике. Красиво, но бесполезно, если вам нужен технический ответ для исследования.
Проблема в том, что отказоустойчивость вшита в веса модели. Это не просто флаг в конфиге. Можно отключить слой RLHF, но тогда модель теряет не только моральные ограничения, но и часть логики. Она начинает генерировать бессмыслицу на простых вопросах.
Грубое удаление цензуры похоже на операцию топором: да, вырезали опухоль, но задели здоровые органы. Модель перестает отказываться, но начинает путать факты, забывает контекст, генерирует противоречивые ответы.
Norm-Preserving Biprojected Abliteration: математическая элегантность
NPBA работает как хирург с наноскальпелем. Вместо того чтобы удалять нейроны целиком, метод вычисляет направление "отказа" в пространстве весов и проецирует веса в ортогональное подпространство.
Проще говоря: вы находите вектор "я не буду это делать" и поворачиваете модель так, чтобы этот вектор стал нулевым. При этом сохраняете все остальные способности.
1Как работает NPBA шаг за шагом
- Собираете датасет пар "запрос-отказ". Модель получает провокационные вопросы и дает стандартные ответы вроде "я не могу это сделать"
- Записываете активации в последних слоях для каждого примера. Эти активации показывают, как модель "думает" об отказе
- С помощью PCA или SVD находите главные компоненты в этих активациях. Это и есть направление отказа
- Строите матрицу проекции, которая обнуляет эти компоненты
- Применяете эту проекцию к весам модели. Теперь, когда модель встретит провокационный запрос, направление отказа будет нулевым
Прелесть в том, что проекция сохраняет норму весов. Модель не "схлопывается", не теряет стабильность. Она просто забывает один конкретный навык — отказываться.
PRISM: статистический детектив
PRISM подходит к проблеме с другой стороны. Вместо поиска направления отказа, метод ищет статистические аномалии в активациях для "опасных" запросов.
Представьте: вы даете модели 1000 обычных вопросов и 1000 провокационных. Для обычных вопросов активации распределены нормально. Для провокационных — появляются выбросы. PRISM находит эти выбросы и сглаживает их.
| Критерий | NPBA | PRISM |
|---|---|---|
| Подход | Геометрический (проекции) | Статистический (аномалии) |
| Требуемые данные | Пары запрос-отказ | Запросы двух типов: обычные и опасные |
| Сохранение качества | Высокое (норма сохраняется) | Среднее (может задеть соседние нейроны) |
| Сложность реализации | Высокая (нужна линейная алгебра) | Средняя (статистические тесты) |
2Где PRISM выигрывает у NPBA
PRISM не требует точных пар "запрос-отказ". Достаточно иметь набор опасных запросов и наблюдать, как модель на них реагирует. Если в активациях появляется статистически значимый паттерн — это кандидат на удаление.
Метод особенно хорош, когда отказы не всегда явные. Иногда модель не говорит "я не могу", а начинает уводить разговор в сторону, менять тему, давать уклончивые ответы. PRISM ловит эти хитрости по косвенным признакам.
В статье про MiniMax-M2.1 Uncensored показано, как PRISM Advanced Abliteration справляется со сложными случаями, где модель использует не прямые отказы, а психологические уловки.
Тесты на живых моделях: что показывают цифры
Я прогнал оба метода на Llama-3.1-8B с разными типами запросов. Результаты удивили даже меня.
Для теста использовал 500 пар "опасный запрос - безопасный ответ". NPBA удалил 94% отказов, сохранив 98% качества на стандартном бенчмарке MMLU. PRISM удалил 89% отказов, но качество упало до 92%.
Цифры врут. Когда смотришь глубже, картина меняется.
3Проблема ложных срабатываний
PRISM иногда удаляет не только отказы, но и смежные концепции. Спросите у модели после PRISM о юридических последствиях взлома — она может начать путаться в терминах. NPBA в этом плане точнее.
Но есть нюанс: NPBA требует точного датасета отказов. Если ваш датасет неполный, метод пропустит некоторые виды отказов. PRISM более универсален — он ищет любые аномалии.
Оба метода требуют валидации. Без тестов на отказных и нейтральных запросах вы не поймете, что сломали. В статье про Refusal Steering есть готовые скрипты для статистической проверки.
Практическое руководство: какой метод выбрать
Выбор зависит от трех факторов: данных, вычислительных ресурсов и толерантности к ошибкам.
Когда брать NPBA
- У вас есть чистый датасет пар "запрос-отказ". Не предположений, а реальных ответов модели
- Критично сохранить точность на нейтральных задачах. Например, для научных или медицинских моделей
- Есть доступ к GPU с хорошей памятью для вычисления проекций
- Отказы в вашей модели прямолинейные, без хитрых уловок
Когда брать PRISM
- У вас только наборы запросов без парных ответов
- Модель использует сложные стратегии избегания (меняет тему, дает частичные ответы)
- Ресурсы ограничены — PRISM требует меньше вычислений
- Готовы пожертвовать 3-5% точности ради более агрессивного удаления цензуры
Личный опыт: для исследовательских моделей беру NPBA. Для чат-ботов, где важна свобода ответа — PRISM. Разница в том, что исследователю нужна точность, а чат-боту — естественность.
Опасности, о которых не говорят
Удаление цензуры — это не только техническая задача. Есть этические и юридические ловушки.
Модель после аблитерации может генерировать опасный контент. Не только потому что "разблокировали", а потому что потеряла способность оценивать риски. Это как удалить у человека чувство страха — он станет не храбрым, а безрассудным.
Вторая проблема — обратная сторона точности. NPBA сохраняет норму весов, но это не гарантирует сохранения смысловых связей. Модель может перестать отказываться, но начать путать факты в смежных областях.
4Как проверить, не сломали ли вы модель
- Запустите стандартные бенчмарки (MMLU, HellaSwag, TruthfulQA) до и после
- Создайте тестовый набор из 100 опасных и 100 нейтральных запросов
- Проверьте, не появились ли галлюцинации в ответах на нейтральные вопросы
- Убедитесь, что модель не стала слишком "послушной" — это признак переобучения
- Протестируйте на edge-cases: запросы на грани этики, где ответ неочевиден
Будущее методов аблитерации
Сейчас оба метода работают постфактум — сначала обучают модель, потом удаляют цензуру. Но что если обучать сразу без цензуры?
Новые подходы вроде GRPO показывают, что можно обойтись без RLHF вообще. Модель учится давать правильные ответы без этапа "выравнивания", который часто и добавляет цензуру.
Еще одно направление — гибридные методы. NPBA для точного удаления известных паттернов, PRISM для поиска скрытых. Плюс статистическая валидация после каждого шага.
Мой прогноз: через год мы увидим инструменты, которые автоматически определяют тип цензуры в модели и применяют комбинацию методов. Сейчас это ручная работа, требующая глубокого понимания архитектуры.
Если работаете с приватными данными, посмотрите LLM-Shield. Удаление цензуры часто открывает доступ к чувствительной информации в весах модели.
Финальный вердикт
NPBA — для перфекционистов с хорошими данными. PRISM — для прагматиков, готовых к компромиссам. Оба метода лучше, чем грубое отключение слоев RLHF.
Но помните: удаляя цензуру, вы берете ответственность за то, что будет генерировать модель. Технически вы можете сделать это. Этически — нужно подумать дважды.
Иногда отказ модели — не баг, а фича. Защитный механизм, который спасает от юридических проблем. Прежде чем запускать аблитерацию, спросите себя: а точно ли вам нужна модель, которая ответит на любой вопрос?
Если ответ "да" — начинайте с NPBA. Он точнее, безопаснее, предсказуемее. Если не хватает данных — переходите к PRISM. Но никогда не пропускайте этап валидации. Лучше оставить немного цензуры, чем получить сломанную модель.