LLM Training Stages

Практически полезная карта различает pre-training, mid-training / continued pre-training, SFT и обучение по reward. Это не обязательный конвейер из четырёх шагов: сначала диагностируют, не решается ли проблема контекстом, RAG, инструментом или кодовым ограничением, и только затем выбирают способ менять веса.

Суть

  • Pre-training — закладывают всевозможные знания о мире/языке через предсказание (восстановление замаскированных) токенов на дампе интернета. Самый долгий и дорогой этап (месяцы на огромных GPU). Факт мог быть в претрейне, но гарантии, что модель его «запомнила», нет.
  • Mid-training / continued pre-training — продолжают next-token training на целевом распределении: языке, доменных документах, коде или длинном контексте. Он чинит пробел основания, но требует retention-набора против catastrophic forgetting.
  • SFT — выбирают задачу (суммаризация, чат) и дообучают на парах «вход → желаемый выход» (1k–10k+ примеров, часы/дни). Превращает «базовую» модель в ассистентскую.
  • Alignment — вкладывают свойства ответов: стиль, формат, безопасность/вежливость (10k+ примеров).

Зачем это нужно

Объясняет ключевые вещи на практике: почему модель уверенно врёт (претрейн не гарантирует запоминание факта → отсюда RAG), почему «базовая» и «инструктивная» версии ведут себя по-разному, и почему именно alignment отвечает за «вежливость»/отказы. Это контекст для выбора модели (см. Model Selection).

Когда что (prompt → RAG → fine-tune): начинать с prompt engineering — в ~80% задач хватает без дообучения; RAG — когда база знаний обновляется или нужен внешний корпус (переобучать модель под меняющиеся факты дорого, проще подсунуть контекст); fine-tune — для устойчивого стиля/формата, доменного поведения или узкой повторяемой задачи. Fine-tune не первый инструмент для добавления фактов, особенно если они меняются (тогда RAG).

Диагностика перед изменением весов

Наблюдение Вероятный пробел Предпочтительный следующий шаг
актуальный факт должен цитироваться, удаляться или меняться knowledge access RAG / tool, не weights
prompts, schema, validator или tool constraint исправляют поведение harness оставить изменение внешним и проверяемым
pass@k остаётся около нуля при разумном sampling, модель не владеет языком, доменом или базовой операцией foundation небольшой mid-training pilot, затем retention eval
успешная траектория иногда получается, но формат, tool schema или фиксированная процедура нестабильны protocol constrained decoding или SFT
успех уже ненулевой, rollout проверяем, но хорошая стратегия маловероятна policy RL/RFT/preference optimization после проверки reward

pass@1 отвечает, насколько часто работает обычная попытка; pass@k помогает понять, существует ли успешное поведение в доступном модели распределении вообще. Если при разумном k нет ни успеха, ни проверяемого частичного прогресса, RL с terminal 0/1 почти не получает направления: сначала чинят основание, протокол или curriculum. Если успех есть, reward должен совпадать с реальной целью, иначе обучение лишь усиливает exploit.

Bad case становится обучающим материалом только после локализации первого ошибочного решения. Полный regression case даёт rollout task и outcome reward; trajectory-prefix case — decision-boundary пары для SFT/DPO; failure attribution — process label. После обучения нужны одновременно boundary set и retention set, иначе исправление преждевременного завершения легко вырождается в агента, который никогда не решается завершить задачу (Trajectory Prefix Evals, Agent Evals).

Как работает (RLHF / RLAIF)

  • После SFT качество сильно повысил этап RLHF (reinforcement learning from human feedback): отдельная reward-модель оценивает ответы, основная дообучается алгоритмами вроде PPO или DPO. Практическое отличие: PPO обычно работает через отдельную reward-модель (классический RLHF), DPO обучается прямо на парах предпочтений — без отдельной reward-модели.
  • RLAIF — обратная связь даёт не человек, а ИИ: достигает качества уровня RLHF без ручных меток, дешевле. Кейс: LLM-разметка в Поиске Яндекса — 105% качества относительно людей при −60% затрат; эта пара чисел внешним источником не подтверждается и стоит на одном учебном материале.
  • Подробный разбор трёх этапов — в статье InstructGPT.
  • Self-supervised механизм предобучения: текст одновременно и вход, и правильный ответ — для GPT «предскажи следующий токен», для BERT «угадай замаскированный» (MLM). Разметка не нужна, сигнал в самих данных (всё через Backpropagation). В начале веса случайны → ~100k токенов равновероятны → стартовый loss ≈ −log(1/100k) ≈ 11.5; за миллионы шагов модель учит условные вероятности P(токен|контекст).
  • RLHF детальнее: люди ранжируют ответы (A лучше B) → на этом обучается reward-модель → основная дообучается, максимизируя её оценку. Это превращает «сырой автодополнитель» в полезного ассистента.
  • Альтернативы выравнивания: Constitutional AI (Anthropic — обучение по принципам), DPO / ORPO / IPO (без отдельной reward-модели); дообучение под задачи часто через LoRA (continual fine-tuning).
  • base model (после pretraining) умеет продолжать текст, но не следовать инструкциям; SFT идёт с малым learning rate, чтобы не «забыть» pretrain.

Связано с

  • Transformer — что именно обучается на этих этапах
  • Model Selection — этапы объясняют разницу моделей/тиров
  • Prompt Engineering — почему few-shot работает «без дообучения» (in-context)
  • Backpropagation — механизм, которым идёт обучение на всех этапах
  • Continual Agent Evolution — как рабочие траектории становятся candidate-изменениями, включая параметры