Свой GPT с нуля: интерактивный учебник на GitHub

Свой GPT с нуля: интерактивный учебник на GitHub
Собрать свой GPT с нуля можно по бесплатному интерактивному учебнику how-to-train-your-gpt - это 12 глав, 7500+ строк кода с комментариями к каждой строке и 28 отдельных объяснений под каждую технологию внутри современных LLM. На выходе - работающая модель уровня GPT-2 в архитектуре LLaMA 3. Никакого опыта в машинном обучении не требуется, только базовый Python. Ниже - что внутри, как запустить у себя и как разбирать код с Claude Code, чтобы не утонуть.
Что это такое и кто автор
How-to-train-your-gpt - это репозиторий на GitHub от Raiyan Yahya, инженера, который начал писать его для себя, чтобы разобраться с self-attention. Первый коммит - 3 мая 2026 года, за четыре месяца - 3200+ звёзд и почти 400 форков, лицензия MIT. Автор честно пишет в README: "я сделал это с целью изучить то, что сам до конца не понимал".
Это не курс с видео и не книга. Это папка с главами в markdown, к каждой - Jupyter-ноутбук, который можно открыть и запустить. Плюс отдельная папка "explanations" на 28 файлов - там уже без общей канвы, каждая тема разобрана изолированно: RoPE, RMSNorm, SwiGLU, KV-кеш, attention, mixed precision, LoRA, MoE, spec decoding.
Язык объяснений - английский, но простой: "объясняем как пятилетнему", как заявляет автор. С Claude или ChatGPT рядом переводится в один клик.
Что реально собираешь на выходе
В репозитории два готовых конфига. Первый - тренировочная моделька на 17 миллионов параметров (d_model=256, 4 слоя). Запускается на обычном CPU, тренировка идёт несколько минут. Это игрушка, чтобы увидеть весь пайплайн своими глазами: от токенов до генерации.
Второй - модель на 151 миллион параметров (768 dims, 12 слоёв), эквивалент GPT-2 Small от 2019 года. Уже требует GPU, но по возможностям сопоставима с тем, что OpenAI выпускала как передовое семь лет назад. Полноценный современный LLM (GPT-4, Claude Opus) она не заменит - те стоят миллионы долларов на обучение, - но для понимания "как оно устроено" этого достаточно.
Есть готовый Colab-ноутбук в репозитории - можно тренировать прямо в браузере на бесплатной GPU от Google, без установки на свой компьютер.
Чем архитектура отличается от старых туториалов
Большинство учебников по GPT в интернете разбирают архитектуру GPT-2 из 2019 года. Здесь - современная, та же, что в LLaMA 3, Mistral и Qwen 2.5:
- RoPE (Rotary Position Embedding) вместо обучаемых позиционных эмбеддингов. Позиция слова кодируется вращением векторов, а не отдельным набором обучаемых чисел. Работает лучше на длинных контекстах.
- RMSNorm вместо LayerNorm. На 15% быстрее, качество то же.
- SwiGLU вместо ReLU в feed-forward-блоке. Гейт-функция, которая учится решать, какую информацию пропускать дальше.
- Pre-Norm вместо Post-Norm. Стабильное обучение на глубоких сетях (100+ слоёв).
- BPE-токенизация через
tiktoken- тот же токенизатор, что в GPT-4.
Это важно, потому что если разбираться по устаревшим гайдам - потом не поймёшь, что происходит в свежих статьях по Mistral или LLaMA. Здесь ты сразу читаешь тот код, который стоит в основе современных моделей.
Как запустить у себя
Команды из README, работают на macOS/Linux (для Windows - замена активации окружения):
git clone https://github.com/raiyanyahya/how-to-train-your-gpt.git
cd how-to-train-your-gpt
python -m venv gpt_env
source gpt_env/bin/activate
pip install torch tiktoken datasets numpy matplotlib \
--index-url https://download.pytorch.org/whl/cpu
python main.py
По умолчанию main.py запустит малую модель на CPU. Чтобы переключиться на 151M-конфиг, в файле main.py нужно раскомментировать соответствующий блок конфигурации - там уже всё готово, менять руками ничего не надо.
Если не хочешь ставить локально, открой ноутбук notebooks/colab_train.ipynb в Google Colab - там кнопкой "Open in Colab" запускается всё с нуля в браузере.
Как разбирать код с Claude Code
Самый быстрый способ - не читать 7500 строк подряд, а разбирать их с ИИ-помощником. В Claude Code вставь запрос:
склонируй https://github.com/raiyanyahya/how-to-train-your-gpt в папку ./htg
прочитай main.py и все файлы из chapters/
составь мне карту репозитория: что где лежит, в каком порядке читать
для каждой главы - одно предложение сути и что новое туда добавляется в код
формат - markdown-таблица
Дальше, когда дойдёшь до тяжёлой части - self-attention (глава 5, самая большая, 713 строк):
открой chapters/05_attention.md и chapters/06_transformer_block.md
объясни мне по-русски 8-шаговую схему внимания на конкретном
числовом примере из главы. где именно в коде считается Q, K, V,
где применяется causal mask и почему делят на sqrt(d_k)
покажи ASCII-схему потока данных через один трансформер-блок
Для запуска на своей машине - разбор перед тем, как что-то тренировать:
прочитай main.py и chapters/08_training.md
расскажи, что произойдёт когда я запущу python main.py на CPU
без GPU: сколько памяти займёт, сколько минут будет идти,
где сохраняются чекпоинты, как я пойму что модель обучилась
и как безопасно прервать процесс
Это вайбкодинг-подход: не читаешь код построчно, а разговариваешь про него с моделью, которая уже прочла его за тебя.
Как это связано с nanochat от Карпаты
Похожий по духу проект уже разобран в отдельном гайде: Свой ChatGPT по Карпаты - разбор трёх видео и nanochat. Разница простая: у Карпаты акцент на видео-лекциях + минимальный код (nanoGPT/nanochat), у Yahya - акцент на письменных объяснениях и современной архитектуре LLaMA 3. Оптимально сначала посмотреть Карпаты для общей интуиции, потом пройти этот учебник для деталей.
Кому подойдёт, а кому - нет
Подойдёт, если:
- знаешь Python на уровне функций и классов;
- используешь ChatGPT/Claude каждый день и хочешь наконец понять, как оно устроено внутри;
- готов потратить 10-20 часов на вдумчивое чтение и запуск примеров.
Не подойдёт, если:
- нужен продакшн-LLM для бизнеса (это учебный код, не для боевого использования);
- ищешь готовый чат-бот "под ключ" (собираешь всё сам с нуля);
- нет ни базового Python, ни желания его подтянуть.
FAQ
Нужна ли видеокарта, чтобы пройти учебник?
Нет. Малая моделька на 17M параметров тренируется на CPU за несколько минут, этого хватает, чтобы увидеть весь пайплайн от токенизации до генерации. GPU нужен только для большой конфигурации на 151M, но её можно запустить бесплатно в Google Colab через готовый ноутбук из репозитория.
Насколько мощная модель получится на выходе?
Большая конфигурация - 151 миллион параметров, эквивалент GPT-2 Small от 2019 года. Это игрушечная модель по современным меркам: отвечает связно, но знает мало и не сравнится даже с бесплатным ChatGPT. Цель - понять, как оно работает, а не заменить OpenAI.
Есть ли перевод учебника на русский?
Официального нет, весь текст на английском. Но язык простой - автор специально пишет "как для пятилетних". Открой репозиторий в Claude или ChatGPT и попроси переводить главы по мере чтения, или сгенерируй русский конспект: "пройди по главам с 0 по 11, для каждой дай русский конспект: суть, ключевые термины, что нового в коде".
Чем это отличается от nanoGPT и nanochat от Карпаты?
nanoGPT - минимальный код GPT-2, почти без объяснений. nanochat - полный пайплайн ChatGPT со спидраном за 48 долларов на арендованных GPU. How-to-train-your-gpt - акцент на письменных объяснениях каждой строки и на современной архитектуре LLaMA 3 (RoPE, RMSNorm, SwiGLU), которой в nanoGPT нет. Это разные точки входа в одну и ту же тему.
Сколько времени займёт пройти всё до конца?
Если читать вдумчиво и запускать примеры - 10-20 часов на 12 глав, плюс ещё столько же на 28 отдельных объяснений, если пойдёшь в них. Быстрый маршрут - главы 0, 2, 5 (attention), 7 (полная модель) и 8 (обучение), это часов 6-8.
Вывод
How-to-train-your-gpt - лучший из открытых учебников на текущий момент, если задача "понять современный LLM изнутри". Три причины: современная архитектура (LLaMA 3, а не устаревший GPT-2), комментарий к каждой строке кода и низкий порог входа (нужен только Python). Плюс работающий Colab, чтобы не мучиться с локальной установкой. Это не заменит опыт работы с готовыми API, но закроет вопрос "а как оно вообще работает" за пару выходных.
Что дальше
Если хочешь собрать такую систему у себя - у меня есть курс по вайбкодингу и работе с нейросетями в клубе Мандарин Лаб: mandarinedu.ru. Первые уроки открыты бесплатно.
Если нужно внедрить ИИ в бизнес - процессы, агентов, автоматизацию под вашу задачу - пишите мне напрямую: t.me/Philigranchik. Разберу задачу и скажу, что реально автоматизируется, а что нет.

Вайбкодер-разработчик и маркетолог с 9-летним опытом, основатель «Мандарин Лаб». Собирает на ИИ то, за что раньше платили подрядчикам сотни тысяч: CRM, ботов, автоматизации, монтаж. Одну из систем строил под агентство недвижимости с базой в 400 000 лидов. Теперь учит этому с нуля - как за вечер собрать свой инструмент через Claude Code и зарабатывать на нейросетях.
Telegram @mike_cmo →Кто такой Михаил Иванин →