Как устроены архитектуры LLM
Мы все пользуемся LLM, но мало кто представляет, что происходит между отправкой промпта и получением ответа. В этой статье разберем, как архитектурно устроены большие языковые модели: от трансформера до современных гибридов, и чем реально отличаются модели друг от друга.
1. База: трансформер за 5 минут
Все началось в 2017 со статьи Attention is All You Need. Ключевая идея: вместо обработки текста слово за словом (как в RNN), трансформер смотрит на весь текст сразу и учится тому, какие токены важны друг для друга.
Пайплайн от текста до ответа:
- Токенизация. Текст режется на токены (куски слов, подслова). Привет может стать одним токеном, а дообучение тремя.
- Эмбеддинги. Каждый токен превращается в вектор, скажем, из 4096 чисел. Плюс информация о позиции токена в тексте.
- Слои трансформера. Десятки одинаковых слоев, каждый состоит из внимания (attention) и небольшой обычной нейросети (MLP). На каждом слое вектора все точнее кодируют смысл.
- Выход. Финальный вектор последнего токена проецируется на весь словарь, получаем вероятности следующего токена. Выбираем один, дописываем, повторяем. Это авторегрессия.
Все остальное это детали и оптимизации этой схемы. Но детали важные, именно в них разница между моделями.
Внимание
Сердце трансформера. Для каждого токена модель считает три вектора: query (что я ищу), key (что я предлагаю) и value (что я несу). Скалярное произведение query одного токена с key всех остальных дает веса внимания: на кого и насколько сильно я должен смотреть.
Механизм называется self-attention, потому что текст взаимодействует сам с собой: слово она через внимание находит в предложении того, к кому относится.
У этого есть жесткое следствие: вычисления растут квадратично от длины текста. Удвоили контекст, вычисления внимания выросли вчетверо. Вся современная гонка за длинными контекстами это, по сути, война с этой квадратичностью.
2. Decoder-only: почему все модели устроены так
Оригинальный трансформер 2017 был encoder-decoder (для перевода). Дальше пути разошлись:
- Encoder-only (BERT): кодирует текст в векторы, хорош для классификации и эмбеддингов. Не генерирует.
- Decoder-only (GPT и все современные LLM): предсказывает следующий токен. Генерирует.
- Encoder-decoder (T5): живет в нишах, для больших LLM практически умер.
Почему победил decoder-only? Простота (одна схема, один объект обучения предскажи следующий токен), масштабируемость и то, что одна и та же модель работает и с вопросами, и с ответами. Не было глубокого теоретического обоснования, была инженерная конвергенция.
Единственное принципиальное отличие современных моделей от GPT-2 образца 2019 это не архитектура головы, а масштаб и десятки инженерных решений вокруг. Теперь про эти решения.
3. Ансамбль архитектурных решений
Современную LLM удобно описывать как набор решений по каждой компоненте. Собственно, это и есть разница между моделями в отчетах.
3.1. Позиции: RoPE и его модификации
Модель должна знать порядок токенов. Долго использовали абсолютные позиционные эмбеддинги, потом победил RoPE (Rotary Position Embedding): позиции кодируются поворотом векторов query и key, что дает хорошо работающую относительность (токен на 5 позиций раньше меня).
Проблема RoPE: натренированная на контекст 4K модель за пределами этого разваливается. Отсюда техники растяжения:
- PI (Position Interpolation): сжимаем позиции, чтобы 32K влезли в натренированные 4K
- NTK-aware, YaRN: умные варианты того же, работают лучше
- Внимание со скользящим окном и т.п.
Когда в отчете модели пишут контекст 128K, YaRN scaling, теперь вы знаете, о чем это.
3.2. Внимание: GQA, MLA, FlashAttention
Обычное внимание (MHA) хранит отдельные key/value для каждой головы, и при длинном контексте кэш KV съедает гигабайты. Решения:
- MQA: один общий KV для всех голов, экстремально дешево, но теряется качество
- GQA: компромисс, несколько голов делят один KV. Сейчас стандарт дефакто (Llama, Qwen и почти все)
- MLA (Multi-head Latent Attention, DeepSeek): сжимает KV в маленький латентный вектор и расжимает при необходимости. Кэш в разы меньше, качество не страдает, цена, сложнее реализация
Отдельно стоит FlashAttention: это не архитектурное изменение, а хитрая реализация, которая считает внимание блоками, не собирая гигантскую матрицу в памяти. Благодаря ей длинные контексты стали вообще посильными.
3.3. FFN: MoE, или как сделать модель большую и быструю одновременно
После внимания в каждом слое стоит MLP (Feed-Forward Network). На нее приходится львиная доля параметров. Классическая схема, dense, плотная: каждый токен проходит через всю сеть.
MoE (Mixture of Experts) меняет это: вместо одной огромной MLP, несколько экспертов, и на каждый токен активируется только несколько (обычно 2 из 8, из 16, из 64...). Работает роутер, который решает, каких экспертов звать.
Что это дает: много параметров (знания) при малом числе активных (скорость и стоимость). DeepSeek-V3, Mixtral, Qwen-MoE, Grok, все они MoE. Типичная современная модель: 600B параметров всего, 30–40B активных. Качество как у огромной денс модели, инференс стоит как у средней.
Цена: MoE сложнее тренировать (нужен баланс загрузки экспертов), сложнее деплоить (все параметры в памяти, даже если не активны), и роутинг может быть нестабильным.
Кстати, если слышите термин мультик класс в контексте MoE, не пугайтесь, это жаргон.
3.4. Нормализация и остаточные связи
Мелкие на вид решения, без которых ничего не тренируется:
- Residual connections: выход слоя добавляется к входу, градиенты не умирают в глубине
- Pre-Norm vs Post-Norm: где стоит нормализация, до подблока (Pre, современный стандарт, стабильнее) или после (Post, оригинал, требует трюков)
- RMSNorm вместо LayerNorm: чуть проще и быстрее
- SwiGLU в MLP: активация с гейтингом, стандарт де-факто
Это то, что в отчетах мелькает списком RMSNorm, SwiGLU, pre-norm. Звучит как магия, на деле просто набор проверенных решений, без которых 70B+ на практике не тренируются.
4. Разбор конкретных архитектур
Теперь посмотрим, как все это собирается в реальные модели.
Llama (Llama 2 / 3, и почти все обычные открытые модели)
Классический decoder-only, ставший каноном:
- RoPE для позиций
- GQA для внимания
- SwiGLU в MLP, RMSNorm, pre-norm
Схема, которую повторяют Mistral, Qwen dense, Yi, почти все. Если говорят архитектура как у Llama, имеют в виду ровно этот набор. Просто, надежно, отлично масштабируется.
DeepSeek-V4 / R1
Самый показательный пример современного подхода:
- MoE: 671B параметров, ~37B активных, 256 экспертов на слой, активируется 8
- MLA: сжатый KV-кэш, дешевый длинный контекст
- Multi-token prediction: вспомогательная задача предскажи не один токен, а несколько, улучшает обучение
- FP8 обучение: тренируют в низкой точности, экономя кучу денег
Результат: качество топового уровня при стоимости обучения в разы ниже западных аналогов. R1 добавил к этому обучение через RL с проверяемыми наградами (математика, код), породив знаменитые цепочки рассуждений.
Qwen (3 / 3.5)
Китайская линейка, ставшая самой популярной открытой:
- Есть и dense версии (7B, 14B, 32B), и MoE (Qwen3-235B-A22B)
- Сильная мультиязычность (сотни языков) за счет состава предтрейна
- В Qwen3: гибридное мышление, модель сама решает, рассуждать ей или ответить сразу
Хороший пример того, что линейка может закрывать весь диапазон: от 0.6B для телефона до 235B MoE для дата-центра, на одной архитектурной базе.
Gemma (3 / 4)
Google-овская открытая линейка, с парой интересных решений:
- Локально-глобальное внимание: большинство слоев смотрит на маленькое окно, и лишь редкие слои на весь контекст. Дешево и эффективно
- Gemma 4: мультимодальность прямо в архитектуре (изображения входом) + огромный контекст
- Модели маленькие (1B–27B), зато вылизанные до блеска
GPT (4 / 5) и Claude
Архитектуры закрыты, но по косвенным данным и утечкам: тоже decoder-only, у больших версий MoE, сильно кастомные внимания и инфраструктура. Плюс главное отличие не в архитектуре, а в данных и пост-трейнинге. Полезная мысль: после определенного масштаба архитектура перестает быть главным источником разницы, на первое место выходят данные и пост-трейн.
5. Обучение: где рождаются способности
Архитектура это каркас, способности приходят при обучении. Три этапа:
Предтрейн
Модель учится предсказывать следующий токен на триллионах токенов текста и кода. Одна цель, гигантский масштаб. Здесь модель выучивает язык, факты, логику, программирование. Это самая дорогая часть (миллионы долларов GPU-часов).
Пост-трейн: SFT
Дальше модель учат вести диалог: подаем миллионы примеров пользователь спросил, ассистент ответил. Именно здесь модель перестает быть автокомплитом и становится ассистентом, который отвечает на вопрос, а не продолжает текст.
Пост-трейн: RLHF и альтернативы
Последний этап, обучение на предпочтениях: человек (или модель-судья) выбирает, какой из двух ответов лучше, и модель учится предпочитать хорошие. Варианты: классический RLHF с reward-моделью, DPO (проще и стабильнее), GRPO (то, что вырастило рассуждательные способности у DeepSeek-R1 и o-серии).
После этого этапа появляется то, что мы называем характером модели: аккуратность, отказы, стиль, готовность рассуждать.
6. Куда все движется
Несколько трендов, которые видны уже сейчас:
- Длинный контекст становится дешевым. MLA, разреженные внимания, компрессия KV-кэша. Миллион токенов контекста перестает быть фантастикой
- MoE везде. Dense модели выживают в малых размерах (для он-девайса), в больших побеждает MoE
- Мультимодальность в базе. Модели, которые с рождения видят картинки и слышат звук, а не прикрученные зрение-адаптеры
- Рассуждение как отдельная ось. Модели типа R1/o-серии показывают, что качество можно покупать не только размером, но и временем на раздумья. Появилась новая шкала: train-time compute и test-time compute
- Эффективность. Дистилляция больших моделей в малых, квантование до 4–8 бит прямо при обучении, специализация под инференс
7. Итог
Если сжать все в пару абзацев:
Современная LLM это decoder-only трансформер: токены, эмбеддинги с позициями (RoPE), десятки слоев из внимания (GQA/MLA) и FFN (часто MoE), на выходе вероятности следующего токена. Вся разница между моделями лежит в выборе конкретных решений по каждой позиции этого списка, плюс в данных и пост-трейнинге, которые после определенного масштаба важнее архитектуры.
Практическая польза от этого знания прямая: когда выходит новая модель и пишет в отчете MoE, 200B-A30B, MLA, YaRN, 256K контекст, вы теперь знаете, что это значит, и можете осмысленно судить, быстра она или тяжела, что ждать от длинного контекста и стоит ли пробовать для вашей задачи.
ज्ञान आधार के बाकी लेख देखें — आस-पास के विषय भी वहीं समझाए गए हैं।
