Языковая модель после предобучения на корпусе текстов умеет предсказывать следующий токен, но не понимает, какой ответ полезен, безопасен и соответствует ожиданиям пользователя. Выравнивание (alignment) — этап постобучения, на котором модель учат предпочитать одни ответы другим. Два наиболее распространённых подхода: RLHF (Reinforcement Learning from Human Feedback) и DPO (Direct Preference Optimization).
Предобученная модель оптимизирует правдоподобие следующего токена. Это значит, что она с равной вероятностью выдаст полезный ответ, галлюцинацию, токсичный текст или бессмыслицу — лишь бы продолжение было статистически вероятным в контексте. Выравнивание добавляет второй сигнал: человеческое суждение о качестве ответа.
Типичные цели выравнивания:
RLHF — это пайплайн из трёх последовательных стадий. Каждая требует отдельного набора данных и отдельной модели.
Аннотаторам показывают промпт и несколько ответов модели (обычно два). Задача — выбрать лучший. Результат — датасет пар (chosen, rejected) для каждого промпта.
Качество этого датасета критично: если аннотаторы непоследовательны или инструкции размыты, reward-модель выучит шум вместо реальных предпочтений.
На данных предпочтений обучают отдельную модель, которая для пары ответов предсказывает, какой из них лучше. Функция потерь обычно строится на логистической регрессии:
где
Reward-модель не генерирует текст; она присваивает числовую оценку. После обучения её замораживают и используют как источник сигнала для следующего этапа.
Языковая модель (политика) генерирует ответы на промпты, reward-модель оценивает их, а алгоритм PPO (Proximal Policy Optimization) обновляет веса политики так, чтобы максимизировать ожидаемую награду.
Чтобы модель не «взломала» reward-модель (не нашла вырожденные последовательности с высокой оценкой, но бессмысленные для человека), в целевую функцию добавляют KL-штраф:
Direct Preference Optimization (Rafailov et al., 2023) предлагает обойти этап обучения RM и PPO. Идея: если существует оптимальная политика, максимизирующая reward с KL-ограничением, то между reward и политикой есть аналитическая связь. Подставив её в функцию потерь reward-модели, получают прямой лосс на политику:
Здесь модель обучается напрямую на парах предпочтений, без отдельной RM и без итеративной генерации. По сути, DPO увеличивает лог-вероятность предпочтённого ответа относительно отвергнутого, контролируя отклонение от reference-модели через коэффициент β.
Оба подхода породили семейство модификаций:
После успешного выравнивания наблюдаются характерные изменения:
При этом выравнивание может давать побочные эффекты: чрезмерная осторожность (модель отказывается от безобидных запросов), потеря креативности, шаблонность формулировок. Баланс между безопасностью и полезностью — одна из открытых проблем.
RLHF остаётся предпочтительным, когда нужен максимум качества и есть ресурсы на сложную инфраструктуру. DPO подходит для быстрого прототипирования, ограниченных вычислительных бюджетов и случаев, когда уже есть качественный датасет пар. На практике крупные лаборатории часто комбинируют: DPO для начального выравнивания, затем итеративный RLHF или online-DPO для доводки.
Что решает выравнивание
Предобученная модель оптимизирует правдоподобие следующего токена. Это значит, что она с равной вероятностью выдаст полезный ответ, галлюцинацию, токсичный текст или бессмыслицу — лишь бы продолжение было статистически вероятным в контексте. Выравнивание добавляет второй сигнал: человеческое суждение о качестве ответа.
Типичные цели выравнивания:
- Полезность — ответ решает задачу пользователя.
- Безопасность — модель отказывается от вредных запросов, не генерирует опасные инструкции.
- Честность — модель не выдумывает факты, признаёт неопределённость.
- Стиль — ответы соответствуют формату и тону, ожидаемому от ассистента.
Классический RLHF: три этапа
RLHF — это пайплайн из трёх последовательных стадий. Каждая требует отдельного набора данных и отдельной модели.
Этап 1. Сбор данных предпочтений
Аннотаторам показывают промпт и несколько ответов модели (обычно два). Задача — выбрать лучший. Результат — датасет пар (chosen, rejected) для каждого промпта.
Качество этого датасета критично: если аннотаторы непоследовательны или инструкции размыты, reward-модель выучит шум вместо реальных предпочтений.
Этап 2. Обучение reward-модели (RM)
На данных предпочтений обучают отдельную модель, которая для пары ответов предсказывает, какой из них лучше. Функция потерь обычно строится на логистической регрессии:
Код:
L_RM = -log σ(r(x, y_w) - r(x, y_l))
где
r(x, y) — скалярная оценка пары (промпт, ответ), y_w — предпочтённый ответ, y_l — отвергнутый.Reward-модель не генерирует текст; она присваивает числовую оценку. После обучения её замораживают и используют как источник сигнала для следующего этапа.
Этап 3. Оптимизация политики через PPO
Языковая модель (политика) генерирует ответы на промпты, reward-модель оценивает их, а алгоритм PPO (Proximal Policy Optimization) обновляет веса политики так, чтобы максимизировать ожидаемую награду.
Чтобы модель не «взломала» reward-модель (не нашла вырожденные последовательности с высокой оценкой, но бессмысленные для человека), в целевую функцию добавляют KL-штраф:
Код:
R_total = r(x, y) - β · KL(π_θ || π_ref)
π_ref — исходная модель до RLHF (reference policy), β — коэффициент, контролирующий допустимое отклонение.Практические сложности RLHF
| Проблема | Проявление |
|---|---|
| Reward hacking | Модель находит шаблонные фразы, которые завышают оценку RM, но не улучшают ответ |
| Нестабильность PPO | Обучение расходится или деградирует при неудачных гиперпараметрах |
| Стоимость инфраструктуры | Одновременно в памяти: политика, reference-модель, reward-модель, value-модель |
| Качество аннотаций | Противоречивые разметки приводят к противоречивому поведению |
DPO: выравнивание без reward-модели
Direct Preference Optimization (Rafailov et al., 2023) предлагает обойти этап обучения RM и PPO. Идея: если существует оптимальная политика, максимизирующая reward с KL-ограничением, то между reward и политикой есть аналитическая связь. Подставив её в функцию потерь reward-модели, получают прямой лосс на политику:
Код:
L_DPO = -log σ(β · (log π_θ(y_w|x)/π_ref(y_w|x) - log π_θ(y_l|x)/π_ref(y_l|x)))
Здесь модель обучается напрямую на парах предпочтений, без отдельной RM и без итеративной генерации. По сути, DPO увеличивает лог-вероятность предпочтённого ответа относительно отвергнутого, контролируя отклонение от reference-модели через коэффициент β.
Что DPO упрощает
- Нет reward-модели. Одна модель вместо двух на этапе обучения.
- Нет PPO. Обучение сводится к стандартному supervised-циклу: батч пар → прямой проход → обратное распространение.
- Стабильнее. Нет проблем с расходимостью, характерных для RL-оптимизации.
- Дешевле по памяти. Не нужны value-модель и reward-модель одновременно в GPU-памяти.
Ограничения DPO
- Зависимость от качества пар. Если данные предпочтений зашумлены, DPO выучит шум напрямую — нет промежуточного буфера в виде RM, который мог бы усреднить ошибки.
- Отсутствие online-генерации. Модель не генерирует новые ответы в процессе обучения, поэтому не исследует пространство ответов за пределами датасета. Это может ограничивать обобщение.
- Чувствительность к β. Слишком малый β позволяет модели далеко уйти от reference; слишком большой — почти не меняет поведение.
- Деградация при длинном обучении. Без ранней остановки модель может переобучиться на конкретные пары и потерять общее качество генерации.
Сравнение подходов
| Критерий | RLHF (PPO) | DPO |
|---|---|---|
| Reward-модель | Нужна | Не нужна |
| Алгоритм оптимизации | PPO (RL) | Прямой лосс (SL-подобный) |
| Онлайн-генерация | Да | Нет |
| Стабильность обучения | Требует тюнинга | Выше |
| Вычислительная стоимость | Высокая (4 модели в памяти) | Ниже (2 модели) |
| Чувствительность к шуму в данных | Частично смягчается RM | Прямая |
| Потенциал исследования | Выше (модель генерирует новые ответы) | Ограничен датасетом |
Варианты и расширения
Оба подхода породили семейство модификаций:
- IPO (Identity Preference Optimization) — заменяет логистический лосс DPO на квадратичный, снижая риск переобучения при высокой уверенности модели.
- KTO (Kahneman-Tversky Optimization) — работает с бинарными оценками (хорошо/плохо) вместо пар, что упрощает сбор данных.
- ORPO — объединяет SFT и выравнивание в одном лоссе, убирая необходимость в отдельном reference-модели.
- Online DPO / Iterative DPO — добавляют генерацию новых ответов в цикл обучения, частично возвращая преимущество RLHF по исследованию пространства.
- Constitutional AI (RLAIF) — заменяет человеческих аннотаторов на AI-судью, который оценивает ответы по заданному набору принципов.
Как выравнивание влияет на поведение модели
После успешного выравнивания наблюдаются характерные изменения:
- Форматирование. Модель начинает структурировать ответы: списки, заголовки, разделение на абзацы.
- Отказы. Появляются корректные отказы на опасные или некорректные запросы.
- Калибровка уверенности. Модель чаще говорит «не знаю» вместо галлюцинации.
- Следование инструкциям. Ответы становятся более релевантными формулировке промпта.
- Снижение многословия. Без выравнивания модели склонны к избыточным продолжениям; после — ответы становятся компактнее.
При этом выравнивание может давать побочные эффекты: чрезмерная осторожность (модель отказывается от безобидных запросов), потеря креативности, шаблонность формулировок. Баланс между безопасностью и полезностью — одна из открытых проблем.
Практический чек-лист перед запуском выравнивания
- Датасет предпочтений содержит не менее 10–50 тысяч пар (зависит от размера модели и сложности задачи).
- Аннотаторы прошли калибровку: согласие между разметчиками (inter-annotator agreement) измерено и приемлемо.
- Reference-модель зафиксирована и не обновляется в процессе обучения.
- Коэффициент β подобран на валидационном подмножестве (типичный диапазон для DPO: 0.1–0.5).
- Мониторинг включает не только лосс, но и качество генерации на контрольных промптах.
- После обучения проведена оценка на отдельном тестовом наборе, не пересекающемся с тренировочным.
Когда что выбирать
RLHF остаётся предпочтительным, когда нужен максимум качества и есть ресурсы на сложную инфраструктуру. DPO подходит для быстрого прототипирования, ограниченных вычислительных бюджетов и случаев, когда уже есть качественный датасет пар. На практике крупные лаборатории часто комбинируют: DPO для начального выравнивания, затем итеративный RLHF или online-DPO для доводки.
