Генерация, у которой нет вкуса
Вы когда-нибудь просили LLM придумать три варианта поздравления с днём рождения и получали три почти одинаковых текста, отличающихся только порядком слов? Это не баг, это фича стандартного RLHF. Точнее — фича, которая бесит всех, кто пытается выжать из модели креативность. RLHF великолепно выравнивает ответы под ожидания человека, но одновременно убивает разнообразие. Модель находит одну «правильную» дорожку и ходит по ней до мозолей.
И вот в мае 2026 года на горизонте замаячил Vector Policy Optimization (VPO) — метод, который обещает сломать эту монотонность. Он не просто учит модель давать правильные ответы, а целенаправленно расширяет пространство возможных траекторий. Если обычный RL — это дрессировка, то VPO — это импровизационный театр.
Как RL съел всё разнообразие
Классический RLHF (Reinforcement Learning from Human Feedback) работает как строгий экзамен: есть один эталонный ответ (или преф-модель, которая оценивает ответы), и модель штрафуется за отклонения. Но что если отклонение — на самом деле не ошибка, а находка? Тонкий нюанс, который мы привыкли игнорировать.
Альтернативы вроде DPO (Direct Preference Optimization) ускоряют обучение, но всё равно ориентируются на парное сравнение ответов. В итоге топ-10 сэмплов от одной модели выглядят как клоны. О проблеме выбора правильного метода выравнивания мы подробно писали в статье «Выравнивание LLM: от RLHF до DPO, SimPO и KTO — что выбрать в 2026 году».
Здесь на сцену выходит VPO. Вместо того чтобы сравнивать два ответа и выбирать «лучший», VPO строит векторное поле предпочтений. Каждый токен имеет не одну оценку, а несколько векторов: один — за правильность, другой — за новизну, третий — за согласованность. Политика (policy) модели учится балансировать эти векторы, а не просто максимизировать одну скалярную награду.
Векторное мышление: три токена вместо одного
Технически VPO расширяет typical RL framework: вместо одного reward модели подаётся reward-вектор. За каждое действие (генерацию токена) модель получает не число, а кортеж из, например, трёх значений: правильность (как хорошо ответ соответствует фактам), разнообразие (насколько этот токен отличается от того, что модель обычно выдаёт в этом контексте), связность (лог-вероятность следующего токена не падает). Затем алгоритм (наподобие multi-objective RL) оптимизирует взвешенную сумму этих компонент, но веса не фиксированы — они меняются в зависимости от контекста и стадии обучения.
В результате модель не застревает в локальном минимуме «безопасного» ответа. Она начинает исследовать — потому что исследование вознаграждается само по себе. Переносим это на inference-time search: когда мы запускаем beam search или MCTS, у нас есть не одна оценка состояния, а целый вектор. Это позволяет отсекать не просто бесперспективные ветки, а те, что слишком похожи на уже пройденные.
Кстати, идея оценивать по нескольким аспектам перекликается с недавним методом Multiplex Thinking, где семплинг трёх токенов вместо одного даёт прирост точности на 15%. Только там векторизация шла на уровне вывода, а VPO закладывает её в обучение.
Как VPO выглядит на практике
Группа исследователей из лаборатории AlphaEvolve (да, той самой, которая год назад взломала PaLM-2) применила VPO к дообучению локальной модели класса 7B — той, что занимает лидирующие строчки в рейтинге локальных LLM 2025. На задачах генерации кода и креативного письма модель, обученная через VPO, показывала на 34% больше уникальных решений при задаче «найди 5 различных способов сделать X» по сравнению с моделью, обученной через DPO. При этом качество (pass@k) не проседало, а по некоторым бенчмаркам даже росло.
Особенно полезным VPO оказался для агентных сценариев. Вспомните статью про агентное RL от LinkedIn: там модель должна генерировать не просто текст, а последовательность действий. Если все действия похожи — агент зацикливается. VPO вводит внутреннюю мотивацию к исследованию новых шагов, что резко снижает число бесконечных циклов в песочнице.
Попытка применить VPO к модели, которая уже обучена на большом корпусе, может дать обратный эффект — если перекосить веса в сторону разнообразия, модель начнёт галлюцинировать. Поэтому AlphaEvolve использует управляемый векторный коэффициент, который растёт по мере обучения, но не превышает 0.3 от основного reward.
Inference-time search: новая жизнь beam search
Одно из главных обещаний VPO — улучшение поиска во время инференса. Стандартный beam search страдает от однообразия: гипотезы на ранних шагах слишком похожи. С VPO у каждой гипотезы есть «вектор уникальности», и алгоритм поиска может выбирать не только самые вероятные, но и самые непохожие пути. Это особенно ценно при построении RAG-систем, где надо выдать несколько альтернативных ответов на основе извлечённых документов. Если модель генерирует три варианта, и все они — перефраз одного и того же, пользы от RAG ноль. Хороший пример — задача, описанная в нашем эксперименте: «Почему RAG-система извлекает правильные данные, но даёт неверный ответ». Там проблема как раз в том, что модель не умела семплировать разные трактовки фактов.
VPO решает это на уровне обучения: модель усваивает, что в одном и том же контексте можно дать два корректных, но разных ответа, и оба будут вознаграждены. При инференсе достаточно лишь немного поднять температуру и включить penalty за повторяющиеся n-граммы — и вы получаете настоящий дивергентный поиск.
Сырые места и почему не взлетит мгновенно
VPO пока — прототип. Статья AlphaEvolve не выложена в открытый доступ, код не опубликован. Есть подозрение, что обучение с векторным reward требует как минимум вдвое больше GPU-часов, чем DPO. Плюс неясно, как подбирать веса под разные домены: для кода разнообразие менее критично, чем для маркетингового текста.
Но главная проблема — оценка. Если у нас две цели (правильность и новизна), то как измерить, что модель стала «лучше»? Традиционные метрики (bleu, rouge, rougeL) заточены на близость к референсу, а близость к референсу убивает новизну. Нужны принципиально новые бенчмарки, измеряющие «широту покрытия» и «информационное расстояние между ответами».
На рынке уже появляются стартапы, которые пытаются продавать «креативные LLM API». Возможно, именно VPO станет технологией, которая выведет их на уровень product-market fit. А пока — следим за репозиторием AlphaEvolve и молимся, чтобы они выложили веса для 7B модели. Тогда можно будет протестировать на локальной машине и понять, насколько это реально работает.
Для тех, кто хочет понять контекст: рекомендую начать с нашей большой статьи про выравнивание LLM — там разжёваны все семейства методов от PPO до KTO. А затем уже вкатываться в VPO, когда появится код. Или не вкатываться — если вас устраивают ответы-близнецы.