Недавно писали про GLM-5.3 Flash без цензуры и похожие версии Qwen и Gemma. Но как вообще создают такие «анархичные» модели? Что в них меняют, чтобы вместо «извините, я не могу...», всё же получить ответ?
Иногда для этого даже не требуется дообучение, отказы можно сильно ослабить точечной правкой весов.
Когда LLM обучают быть помощником, ей показывают в том числе примеры отказов и поощряют безопасные ответы. Это поведение закрепляется в весах: на определённые запросы модель привыкает отвечать «не могу помочь».
Её можно переучить на примерах прямых ответов. Или изначально обучать базовую модель диалогу на данных без отказов.
Но есть и более любопытный способ, который получил название abliteration.
Работает этот способ следующим образом:
1. Сначала сравнивают внутренние состояния модели на обычных запросах и запросах, вызывающих отказ
2. Затем находят направление, связанное с этим поведением, и правят веса так, чтобы подавить его влияние
3. После этого модель отказывается заметно реже, хотя заново её никто не обучал
Но отказ может исходить не только от самой модели. Ограничения могут быть в разных частях харнесса: системный промпт запрещает определённые действия, входной фильтр блокирует подозрительный запрос, проверка прав не даёт агенту вызвать инструмент, а выходной фильтр скрывает уже готовый ответ. Даже если сама модель готова помочь, её может остановить любой из этих механизмов.
Поэтому за припиской Uncensored могут стоять разные методы и их комбинации.
Откуда берутся отказы, пять способов снять ограничения и примеры «безотказных» моделей — в новой статье на Хабре.
@ai_for_devs
