Запись архива

DeepSeek-R1: что на самом деле значит «рассуждение из чистого RL»

Разбираем DeepSeek-R1 в исторической рамке релиза января 2025 года: что именно было обучено чистым RL, зачем понадобились cold-start и SFT, и как правильно читать benchmark-результаты модели.

Схема пайплайна DeepSeek-R1: DeepSeek-V3-Base, ветка DeepSeek-R1-Zero на чистом RL и финальная сборка DeepSeek-R1 с cold-start, SFT, rejection sampling и двумя этапами RL

DeepSeek-R1 — серия reasoning-моделей DeepSeek, выпущенная 20 января 2025 года; технический отчет появился на arXiv 22 января 2025 года, а peer-reviewed версия — в Nature 17 сентября 2025 года. Но главный нюанс работы часто теряется в пересказах: строго «рассуждение из чистого RL» авторы показывают на DeepSeek-R1-Zero, тогда как финальная DeepSeek-R1 уже строится на многостадийной схеме с cold-start, SFT и дополнительным RL.

Для практиков это важное различие. Работа не доказывает, что production-ready reasoning-модель можно полностью собрать без разметки; она показывает более узкий, но ценный тезис: на задачах с надежной автоматической проверкой длинное рассуждение действительно может вырасти из reinforcement learning, а затем быть доведено до пригодной модели через выравнивание и дистилляцию.

Коротко

  • Историческая рамка этого разбора — релиз DeepSeek-R1 от 20 января 2025 года и исходный technical report, а не более поздние обновления линейки.
  • Строго «pure RL» относится к DeepSeek-R1-Zero: модель обучали на базе DeepSeek-V3-Base с GRPO и rule-based reward, без предварительного SFT.
  • Финальная DeepSeek-R1 уже не pure RL: в пайплайне есть cold-start данные, rejection sampling, два этапа SFT и второй RL-этап для helpfulness и harmlessness.
  • По официальному отчету и карточке модели DeepSeek-R1 выглядит сильнее DeepSeek-V3 на reasoning-бенчмарках и близка к OpenAI o1-1217 на части математических и кодовых задач, но не везде лидирует.
  • Ключевые ограничения авторы описывают сами: зависимость pure RL от надежного reward, чувствительность к prompting, language mixing вне китайского и английского, а также умеренный прирост на software-engineering задачах.

Контекст

В конце 2024-го и начале 2025-го разговор о reasoning-моделях обычно сводился к одному вопросу: нужны ли для сильного многошагового рассуждения большие наборы размеченных chain-of-thought-трасс. DeepSeek-R1 важна тем, что смещает акцент. Авторы предлагают смотреть не только на наличие человеческих рассуждений, но и на то, можно ли вообще построить надежный автоматический сигнал награды.

Именно поэтому в paper так много внимания уделено задачам с проверяемым ответом: математике, competitive coding, логическим задачам. Если правильность можно проверить правилом, компилятором или тестами, RL получает ясный сигнал. Если задача открытая и оценка размыта — например, письмо, помощь пользователю или широкий open-domain QA, — «чистый RL» начинает упираться в слабость reward-модели, и тогда в дело возвращаются SFT и preference alignment.

В этом смысле DeepSeek-R1 — не просто еще одна модель рядом с OpenAI o1. Это демонстрация границы применимости подхода: где pure RL уже работает, а где пока нужен гибридный пайплайн.

Метод

Что именно в работе обучали «из чистого RL»

Базовый эксперимент называется DeepSeek-R1-Zero. Авторы берут DeepSeek-V3-Base и обучают его через Group Relative Policy Optimization (GRPO), не проводя предварительный supervised fine-tuning. Важная деталь: модель не учат конкретным человеческим паттернам рассуждения; ей задают структуру ответа и reward за результат и формат.

Структура была простой: сначала внутреннее рассуждение, затем ответ, то есть схема вида <think>...</think> и <answer>...</answer>. На reasoning-задачах reward складывался из двух частей: correctness reward и format reward. Для математики корректность можно проверять по точному ответу, для кода — по тестам, а формат нужен, чтобы модель вообще поддерживала отделение рассуждения от финального ответа.

Как работает GRPO в этой работе

GRPO в DeepSeek-R1 опирается на идею группового сравнения ответов. Для каждого вопроса модель семплирует группу кандидатов; в настройке DeepSeek-R1-Zero это 16 выходов на вопрос. Дальше advantage считается не через отдельную critic-сеть, а по относительному положению ответа внутри своей группы наград. В статье DeepSeekMath, где GRPO был предложен раньше, авторы описывают этот алгоритм как более экономичную альтернативу PPO; в версии Nature для DeepSeek-R1 дополнительно подчеркивается, что GRPO убирает отдельную value network и оценивает преимущества по внутригрупповому распределению reward.

Если упростить до инженерной интуиции, GRPO здесь похож на мини-турнир: один вопрос, несколько попыток, и модель постепенно сдвигает вероятность тех траекторий, которые оказались лучше соседних. Это не магия «самозарождения мышления», а достаточно приземленная связка из семплирования, относительного сравнения и хорошо определенного сигнала награды.

Что произошло с DeepSeek-R1-Zero

Самый сильный кусок работы — не итоговая leaderboard-таблица, а динамика R1-Zero во время RL-обучения. В technical report и в статье Nature показано, что на AIME 2024 средний pass@1 вырос с 15,6% до 77,9%, а с self-consistency decoding — до 86,7%. Одновременно увеличивалась длина ответов: модель тратила больше токенов на рассуждение, чаще перепроверяла себя и пробовала альтернативные ходы.

Авторы отдельно описывают характерный «aha moment»: на промежуточной стадии модель начинает чаще использовать маркеры самопроверки вроде wait и пересматривать собственные шаги. Это не доказательство «понимания» в сильном философском смысле, но это полезный эмпирический факт: при подходящем reward длинное рефлексивное поведение действительно может возникать без заранее размеченных человеческих chain-of-thought.

Почему финальная DeepSeek-R1 уже не pure RL

На этом месте и появляется главный нюанс. R1-Zero показывает способность к рассуждению, но авторы прямо пишут о проблемах: poor readability, endless repetition, language mixing, а также слабость на более широких пользовательских сценариях. Поэтому финальная DeepSeek-R1 строится иначе.

  1. Сначала собирают тысячи cold-start примеров с более «человеко-совместимым» стилем рассуждения.
  2. Затем запускают первый RL-этап, где, помимо reasoning reward, добавляют language consistency reward, чтобы уменьшить смешение языков.
  3. После этого делают rejection sampling с промежуточного RL-чекпойнта и еще один SFT-этап, уже смешивая reasoning и non-reasoning данные.
  4. Наконец, следует второй RL-этап, нацеленный на helpfulness, harmlessness и дополнительную шлифовку reasoning-поведения.

Именно поэтому корректнее говорить так: DeepSeek-R1-Zero — это доказательство концепции «рассуждения из чистого RL», а DeepSeek-R1 — попытка превратить эту идею в пригодную для более широкого использования модель. В supplemental statistics paper объем SFT-данных описан как порядка 800 тысяч примеров; в репозитории и карточке модели дистилляция также привязана к 800k samples, сгенерированным DeepSeek-R1.

DeepSeek-V3-Base → DeepSeek-R1-Zero (pure RL) → cold-start SFT → RL → rejection sampling + SFT → RL → DeepSeek-R1

Результаты

Сравнивать DeepSeek-R1 с другими моделями нужно аккуратно. В official report и в Hugging Face model card указано, что для оценки reasoning-моделей использовались длинные генерации до 32 768 токенов; на sampling-бенчмарках применялись temperature 0.6 и top-p 0.95, а число сэмплов зависело от теста. Для AIME и GPQA в paper обычно использовали 64 ответа на запрос, для MATH и Codeforces — 16, для LiveCodeBench — 8. Это важно, потому что такие pass@1 числа нельзя безоговорочно сравнивать с лидербордами, где модель проверяли в другом decoding-режиме.

Бенчмарк DeepSeek-V3 OpenAI o1-mini OpenAI o1-1217 DeepSeek-R1
AIME 2024 (Pass@1) 39.2 63.6 79.2 79.8
MATH-500 (Pass@1) 90.2 90.0 96.4 97.3
LiveCodeBench (Pass@1-COT) 36.2 53.8 63.4 65.9
SWE-bench Verified (Resolved) 42.0 41.6 48.9 49.2
GPQA Diamond (Pass@1) 59.1 60.0 75.7 71.5
Codeforces (Rating) 1134 1820 2061 2029

По этим строкам видно две вещи. Во-первых, DeepSeek-R1 заметно сильнее DeepSeek-V3 именно на reasoning-нагрузке. Во-вторых, с OpenAI o1-1217 картина смешанная: DeepSeek-R1 немного выше на AIME 2024, MATH-500, LiveCodeBench и SWE-bench Verified, но ниже на GPQA Diamond и Codeforces rating. То есть честная формулировка здесь — не «победила o1 вообще», а «оказалась сопоставимой на части ключевых reasoning-бенчмарков и лучше DeepSeek-V3 на большинстве из них».

Практический вывод из таблицы простой: прежде чем повторять чужой benchmark-claim, проверьте не только датасет, но и decoding protocol. Для reasoning-моделей это уже не косметическая деталь, а часть самой методики измерения.

Еще один важный результат — открытие линейки distilled checkpoints. В paper, релиз-заметке и model card перечислены шесть плотных моделей: 1.5B, 7B, 8B, 14B, 32B и 70B. Это не просто бонус к анонсу: работа явно показывает, что практическая ценность long-CoT может переноситься вниз по размеру через дистилляцию, а не только через дорогое RL на каждом масштабе отдельно.

Интерпретация

Наш комментарий

На наш взгляд, главный вклад DeepSeek-R1 — не в том, что это «еще одна сильная reasoning-модель», а в смене инженерной рамки. После этой работы вопрос звучит уже не «обязательны ли человеческие chain-of-thought для сильного reasoning», а «есть ли у вас в домене надежный верификатор, который выдержит large-scale RL».

Если такой верификатор есть — точный ответ, unit tests, символьная проверка, компилятор, формальная валидация, — то DeepSeek-R1-Zero делает гипотезу о pure RL гораздо серьезнее. Если верификатора нет, финальная DeepSeek-R1 сама подсказывает более реалистичный рецепт: cold-start, curated SFT, preference modeling и только затем RL там, где reward достаточно надежен.

Для прикладных команд это означает следующее. Повторять буквально всю схему DeepSeek имеет смысл немногим. Но идея разделить post-training на две зоны — «верифицируемое reasoning через RL» и «размытые пользовательские предпочтения через SFT и reward models» — выглядит гораздо более переносимой, чем конкретная гонка за одним benchmark score.

Ограничения и критика

  • Тезис о pure RL имеет узкую область действия. Финальная DeepSeek-R1 не обучалась только RL. Если говорить строго, чистый RL относится к R1-Zero, а production-like модель R1 — это уже гибридный пайплайн.
  • Pure RL зависит от надежного reward. В версии Nature авторы прямо пишут, что для задач без устойчивого сигнала награды масштабирование pure RL остается открытой проблемой, а model-based rewards подвержены reward hacking.
  • Есть языковые ограничения. И paper, и статья Nature отмечают language mixing; модель в первую очередь оптимизирована под китайский и английский, а на других языках может вести себя хуже и смешивать языки рассуждения и ответа.
  • Есть чувствительность к prompting. Авторы сообщают, что few-shot prompting стабильно ухудшал результаты. В официальных рекомендациях в GitHub и Hugging Face советуют zero-shot, отсутствие system prompt, temperature 0.5-0.7 и, при необходимости, принудительный старт ответа с <think>.
  • Software engineering пока не главный выигрышный кейс. И paper, и Nature отдельно уточняют, что large-scale RL не был широко применен к software-engineering задачам из-за дорогой оценки, поэтому прирост над DeepSeek-V3 там ограничен.
  • Часть громких сравнений легко прочитать неверно. Reported pass@1 здесь часто считается по нескольким сэмплам, а не по одному greedy-output. Без учета этого нюанса сравнения между моделями и особенно с внешними лидербордами могут вводить в заблуждение.

Вывод

DeepSeek-R1 стала важной не потому, что «окончательно решила reasoning», а потому, что показала рабочую связку из verifiable rewards, масштабируемого RL и последующей доводки модели до более пригодного состояния. Самая чистая научная часть работы — DeepSeek-R1-Zero: именно она демонстрирует, что длинное рассуждение может появляться без предварительного SFT на человеческих reasoning-трассах.

Но не менее важен и второй вывод: чтобы получить финальную модель, одной этой идеи пока недостаточно. DeepSeek-R1 сама же показывает предел pure RL и честно возвращает в пайплайн cold-start, SFT, preference rewards и дистилляцию. Для практиков это, возможно, и есть главный урок работы.

Источники

FAQ

Что именно в работе было обучено «из чистого RL»?

Строго говоря, только DeepSeek-R1-Zero. Финальная DeepSeek-R1 использует многостадийный пайплайн с cold-start данными, SFT, rejection sampling и дополнительным RL.

Почему тогда все говорят о DeepSeek-R1, а не о R1-Zero?

Потому что R1-Zero — это доказательство концепции, а DeepSeek-R1 — версия, которую пытались сделать пригодной для более широких пользовательских сценариев. На практике именно разница между ними и есть главный смысл paper.

Можно ли воспроизвести reported benchmark-числа локально «как есть»?

Не всегда. В official report и model card результаты завязаны на конкретный decoding protocol: длинные генерации, non-zero temperature, top-p и несколько сэмплов на запрос. Если запускать модель в другом режиме, цифры могут заметно отличаться.

Где этот рецепт особенно полезен?

Там, где ответ можно дешево и надежно проверять автоматически: в математике, на части coding-задач, в задачах с формальной валидацией или явным тестовым контуром. Для открытых творческих задач paper сам показывает, что без SFT и preference alignment пока не обойтись.

Читайте также