3,583 papers
arXiv:2510.14901 68 16 окт. 2025 г. FREE

Power Sampling: базовые модели умнее чем кажется при обычной генерации

КЛЮЧЕВАЯ СУТЬ
Power Sampling — метод сэмплирования из базовой LLM, который возводит вероятность каждой последовательности в степень α (обычно α=4) и сэмплирует из этого распределения. Звучит технически, но суть простая: вместо того чтобы дообучать модель с RL, исследователи берут базовую модель и заставляют её генерировать текст так, чтобы она сильнее предпочитала высоковероятные пути. Результат — на задачах по математике, коду и науке базовая модель показывает результаты как после RL-дообучения, а иногда даж
Адаптировать под запрос

TL;DR

Power Sampling — метод сэмплирования из базовой LLM, который возводит вероятность каждой последовательности в степень α (обычно α=4) и сэмплирует из этого распределения. Звучит технически, но суть простая: вместо того чтобы дообучать модель с RL, исследователи берут базовую модель и заставляют её генерировать текст так, чтобы она сильнее предпочитала высоковероятные пути. Результат — на задачах по математике, коду и науке базовая модель показывает результаты как после RL-дообучения, а иногда даже лучше.

Главная находка: low-temperature сэмплирование (температура <1) работает не так как все думают. Когда мы понижаем температуру, модель просто делает каждый следующий токен более "жадным". Но она не учитывает что будет дальше — выбирает токен с высокой вероятностью сейчас, даже если он ведёт в тупик через 10 токенов. Power sampling учитывает "будущие пути": он предпочитает токен, у которого мало продолжений, но они все высоковероятные, а не токен с кучей продолжений, но все посредственные. Это критично для reasoning — одна ошибка в середине рассуждения убивает весь ответ.

Метод требует доступа к вероятностям токенов и MCMC-сэмплирования (Metropolis-Hastings), что невозможно в обычном чате. Но принцип применим: генерируй несколько вариантов ответа, выбирай тот который модель считает наиболее вероятным (уверенным), а не первый попавшийся. Вместо одного прохода с низкой температурой — несколько проходов с выбором лучшего. Исследование объясняет ПОЧЕМУ это работает: базовая модель уже знает правильный ответ, просто стандартное сэмплирование часто его пропускает.


🔬

Схема метода

Power Sampling (исследовательский вариант, требует API):

ИНИЦИАЛИЗАЦИЯ: Сгенерируй первый блок токенов (192 токена) базовой моделью

ЦИКЛ (для каждого следующего блока из 192 токенов):
  ШАГ 1: Сгенерируй продолжение → получи кандидат полной последовательности

  ШАГ 2: (повтори N раз, обычно 10-20):
    - Выбери случайную позицию в тексте
    - Пересэмплируй от неё до конца
    - Вычисли p(новый_вариант)^α / p(старый_вариант)^α
    - Прими новый вариант с вероятностью = этому отношению
    - Если принял → используй новый, если нет → оставь старый

  ШАГ 3: Зафиксируй этот блок, переходи к следующему

ВЫХОД: Итоговая последовательность из высоковероятных путей

Весь процесс идёт в коде/API — модель многократно пересэмплирует и сравнивает варианты по их вероятностям.


🚀

Пример применения

⚠️ Оригинальный метод требует API. Ниже — адаптация принципа для чата.

Задача: Нужно решить нетривиальную задачу по комбинаторике для подготовки олимпиадника — "Сколькими способами можно расставить 8 ладей на шахматной доске так, чтобы они не били друг друга?"

Промпт:

Реши задачу: Сколькими способами можно расставить 8 ладей на шахматной доске 8×8 
так, чтобы они не били друг друга?

Сгенерируй 3 независимых решения. Для каждого:
1. Покажи ход рассуждений
2. В конце укажи свою уверенность в правильности (0-100%)

После трёх решений выбери то, в котором ты наиболее уверен, и объясни почему.

Результат:

Модель выдаст три разных подхода к решению. В каждом будет своя логика рассуждений. Какие-то варианты могут начаться правильно, но зайти в тупик (модель поставит низкую уверенность). Другие пройдут чисто от начала до конца — там уверенность будет выше.

В финале модель выберет решение с наивысшей собственной оценкой уверенности — это аналог выбора высоковероятного пути в power sampling. Вы получите не первый попавшийся ответ, а лучший из нескольких попыток.


🧠

Почему это работает

Слабость LLM: При обычном сэмплировании модель выбирает каждый следующий токен жадно — берёт тот, что выглядит хорошо прямо сейчас. Но она не заглядывает вперёд. Результат — выбрала токен с вероятностью 0.6, у него 10 продолжений по 0.1 каждое. Альтернативный токен имел вероятность 0.4, но у него было одно продолжение с вероятностью 0.8. Модель выбрала первый → завела рассуждение в тупик.

Сильная сторона LLM: Модель умеет оценивать вероятность целых последовательностей, не только следующего токена. Если дать ей готовый текст, она скажет насколько он вероятен. Базовые модели уже содержат правильные ответы в своём распределении — просто они "размазаны" среди множества вариантов.

Как метод использует это: Power sampling возводит вероятности в степень — это резко увеличивает разницу между "хорошими" и "плохими" последовательностями. Вместо p(хорошая)=0.01 и p(плохая)=0.001 получаем p(хорошая)^4=0.0000000001 vs p(плохая)^4=0.000000000000001 — в миллион раз больше разница! Дальше MCMC-сэмплирование многократно пересэмпливает куски текста и выбирает варианты с высокими вероятностями. Это как "выуживание" редких правильных ответов из базовой модели.

Рычаги управления (для API-версии): - Степень α (обычно 4.0) — больше = жёстче фильтрация, но можно пропустить разнообразные решения - Число MCMC шагов (10-20) — больше = точнее сэмплирование, но дольше - Размер блока B (192 токена) — меньше = чаще проверки, лучше для коротких задач - Температура proposal (0.25) — влияет на разнообразие кандидатов при пересэмплировании


📌

Принципы для чата (адаптация)

Сам power sampling требует API, но принципы применимы:

1. Генерируй несколько — выбирай лучший

Вместо одного ответа с низкой температурой делай 3-5 попыток и выбирай.

Реши задачу: {задача}

Сгенерируй 3 независимых решения.
В каждом в конце укажи свою уверенность (0-100%).
Потом выбери решение с наивысшей уверенностью.

Почему работает: Модель сама оценивает "вероятность правильности" каждого пути. Это приближение к выбору высоковероятной последовательности.


2. Думай о будущих шагах, не только о следующем

Проси модель планировать наперёд, не действовать жадно.

Перед решением:
1. Набросай 2-3 возможных подхода к задаче
2. Для каждого оцени: куда он приведёт через 3-4 шага
3. Выбери подход, который выглядит наиболее "гладким" от начала до конца
4. Реши выбранным подходом

Почему работает: Явно заставляем модель учитывать "будущие пути", а не хватать первый пришедший в голову токен.


3. Используй температуру осторожно

Low temperature делает каждый шаг жадным, но не улучшает планирование.

# Вместо этого:
temperature=0.1 → один проход

# Делай это:
temperature=0.7 → три прохода → выбор лучшего

Почему работает: Небольшая температура даёт разнообразие. Несколько попыток покрывают разные ветки рассуждений. Выбор лучшего = аналог power sampling.


⚠️

Ограничения

⚠️ Требует API для полной версии: Настоящий power sampling работает только через API с доступом к token probabilities и программируемому сэмплированию. В ChatGPT/Claude веб-интерфейсе нет доступа к этим настройкам.

⚠️ Медленно: Метод делает десятки inference вызовов для одного ответа. На сложной задаче по математике — 10-20× больше токенов чем обычная генерация. В API это дорого. В чате — долго ждать при ручной адаптации (регенеришь 5 раз).

⚠️ Не для творческих задач: Метод оптимизирован для задач где есть "правильный ответ" (математика, код, наука). На AlpacaEval (общая полезность) прирост скромнее. Для креатива нужно разнообразие, а power sampling делает наоборот — сужает к высоковероятному.

⚠️ Адаптация в чате — приближённая: Промпты выше используют модельную самооценку уверенности, а не истинные вероятности. Модель может врать о своей уверенности. Это слабее чем математически точный power sampling, но лучше чем ничего.


🔍

Как исследовали

Исследователи взяли три базовые модели (Qwen2.5-Math-7B, Qwen2.5-7B, Phi-3.5-mini) и протестировали их в трёх режимах: обычное сэмплирование, после RL-дообучения (GRPO), и power sampling без дообучения.

Проверяли на четырёх бенчмарках: MATH500 (математика), HumanEval (код), GPQA (наука), AlpacaEval 2.0 (общая полезность). Измеряли два типа метрик: pass@1 (правильный ли первый ответ) и pass@k (есть ли правильный среди k попыток, обычно k=10).

Сравнение показало неожиданное: RL-модели бьют базовые на pass@1, но на pass@10 базовые часто лучше! То есть базовая модель "знает" правильный ответ, просто с первой попытки не всегда его выдаёт. RL как бы "перераспределяет" эту способность — делает первую попытку успешнее, но убивает разнообразие (все 10 попыток становятся почти одинаковыми).

Power sampling показал лучшее из двух миров: на pass@1 сравнялся с RL (на MATH500: base=60.4%, GRPO=79.2%, power=78.0%), а на pass@10 обогнал всех (base=83.6%, GRPO=82.8%, power=95.4%). Более того, на out-of-domain задачах (HumanEval, GPQA) power sampling переиграл RL даже на pass@1.

Почему так? Команда проанализировала вероятности сгенерированных ответов. Оказалось, правильные ответы после RL имеют высокую вероятность под базовой моделью. То есть RL не учит модель новому — он просто сдвигает сэмплирование к тому, что базовая модель уже считала вероятным. Power sampling делает то же самое, но без дообучения и потери разнообразия.

Интересная деталь: они доказали математически (Proposition 1), что low-temperature sampling ≠ sampling from p^α. Все думали что это одно и то же, а на самом деле low-temp работает "жадно" на каждом токене, а power distribution учитывает будущие пути. Это объясняет почему низкая температура помогает, но не так хорошо как могла бы.


🔗

Ресурсы

Reasoning with Sampling: Your Base Model is Smarter Than You Think

Website · Code

Aayush Karan, Yilun Du (Harvard University)


Концепты не выделены.

📖 Простыми словами

Power Sampling: базовые модели умнее чем кажется при обычной генерации

arXiv: 2510.14901

Суть в том, что обычные нейронки — это заложники момента. Когда модель пишет текст, она выбирает следующее слово, основываясь только на том, что уже написано, и не видит всей картины. В итоге она часто заходит в тупик: выбирает «красивое» начало предложения, которое неизбежно ведет к логическому провалу в конце. Это называется проблемой локальной вероятности. Модель просто не умеет смотреть вперед, поэтому даже умные базовые версии часто выдают откровенную чушь.

Это как если бы ты шел по лесу, выбирая каждый следующий шаг только по принципу «где трава мягче». В моменте тебе кайфово, но через десять метров ты обнаруживаешь себя посреди болота, из которого нет выхода. Обычная генерация — это путь в болото, потому что модель не оценивает вероятность всей фразы целиком, а просто цепляется за ближайший симпатичный токен.

Метод Power Sampling решает это через математический «откат». Вместо того чтобы просто гнать текст вперед, алгоритм использует Metropolis-Hastings — это такой механизм, который позволяет модели передумать. Она генерирует блок текста, а потом начинает точечно менять в нем куски, проверяя: «А если я заменю это слово, станет ли вся фраза логичнее?». Через степенное распределение с коэффициентом альфа больше единицы метод искусственно завышает вес правильных ответов и безжалостно отсекает мусор. Модель как бы шлифует результат, пока не получится идеальная последовательность.

Самое крутое, что этот принцип универсален и не требует дообучения. Исследователи гоняли метод на математических задачах и коде, но это работает для любой сложной логики. Тебе не нужно учить модель заново или вливать в нее терабайты данных — достаточно просто изменить способ, которым она «достает» слова из своей головы. Базовая модель умнее, чем кажется, просто ей нужно дать право на черновик и редактирование.

Короче, хватит надеяться на первый попавшийся ответ нейронки. Power Sampling доказывает, что итеративная проверка вероятностей внутри одного ответа выжимает из LLM максимум. Это превращает модель из импульсивного подростка в вдумчивого редактора, который сначала прикидывает варианты, а потом выдает результат. Если нужно качество без лишних затрат на обучение — это единственный верный путь.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с