ORPO — метод одностадийного обучения предпочтениям, который объединяет supervised fine-tuning и оптимизацию предпочтений в один этап, упрощая пайплайн выравнивания.
Определение
ORPO — это метод обучения больших языковых моделей, разработанный как более простой и эффективный аналог RLHF и DPO. Его ключевая особенность — объединение двух этапов: supervised fine-tuning и preference optimization. В ORPO модель одновременно обучается воспроизводить корректные ответы и повышать вероятность предпочтительных вариантов по отношению к непреимущественным.
Это делает ORPO одностадийным процессом, уменьшая сложность пайплайна и вычислительные затраты.
Как работает
ORPO использует смешанную функцию потерь, объединяющую:
- SFT loss — обучение модели следовать эталонным ответам;
- Preference loss — повышение вероятности предпочтительных ответов и понижение вероятности нежелательных;
- Regularization term — контроль отклонения от исходного поведения модели (аналог reference model в DPO).
В отличие от DPO, ORPO не требует отдельной модели-эталона или строгого контроля через ratio clipping. В отличие от RLHF, ORPO не использует reward model и не требует RL-оптимизатора вроде PPO.
Таким образом, ORPO представляет собой гибрид между supervised learning и preference optimization, но без многосложных компонентов RLHF.
Где применяется
- Обучение ассистентов с умеренными ресурсами.
- Доменные модели, где важно быстрое выравнивание.
- Инструментальные LLM, которым требуется устойчивое поведение.
- Проекты с ограниченным бюджетом на вычисления.
- Замена RLHF на малых и средних моделях.
- Тонкая настройка корпоративных систем.
Практические примеры использования
В моделях среднего размера ORPO позволяет настроить поведение без тяжёлой RL-процедуры. Разработчики могут одновременно обучать правильные форматы ответов и корректировать модель под предпочтения пользователей.
В системах генерации кода ORPO улучшает читаемость и устойчивость решений, поскольку сразу учитывает эталонные примеры и предпочтения разработчиков.
В диалоговых ассистентах ORPO помогает снизить токсичность и поддерживать высокий уровень полезности без сложной двухэтапной архитектуры.
Ключевые свойства ORPO
- Одностадийность — обучение на инструкциях и предпочтениях одновременно.
- Упрощённая функция потерь — меньше компонентов, чем в DPO или RLHF.
- Контролируемое выравнивание — модель не уходит слишком далеко от исходного поведения.
- Экономия ресурсов — меньше вычислений и моделей в пайплайне.
Проблемы и ограничения
- Меньшая гибкость — ORPO уступает RLHF в сложных задачах с многошаговыми зависимостями.
- Требовательность к качеству данных — ошибки в примерах сразу отражаются в модели.
- Риск переоптимизации — необходимость аккуратно регулировать баланс SFT и preference loss.
- Отсутствие раздельного контроля — невозможно отдельно оптимизировать поведение и формат ответа.
Преимущества и ограничения
- Плюс: проще RLHF и DPO.
- Плюс: снижает стоимость обучения.
- Плюс: улучшает качество без тяжёлой оптимизации политики.
- Плюс: отлично работает в средних моделях.
- Минус: хуже подходит для крупных моделей и сложных задач.
- Минус: чувствителен к ошибкам в данных.
- Минус: ограниченный контроль над отдельными аспектами поведения.
Связанные термины
- DPO
- RLHF
- Preference optimization
- Supervised fine-tuning
- Reward model
- Value head
- Instruction tuning