Прочее
June 13

Как собрать свой GPT с нуля: 4-часовой мастер-класс от Карпатого

Есть контент, который не стареет. Например, туториал от Андрея Карпатого, где он с нуля на Python собирает и тренирует GPT.

Кто такой Андрей Карпатый и почему его стоит слушать?

Для тех, кто не в теме, Карпатый — это тяжеловес в мире AI. Один из отцов-основателей OpenAI, бывший директор по искусственному интеллекту в Tesla, учёный из Стэнфорда. В общем, человек, который не просто рассказывает об AI, а строил его своими руками.

О чём этот туториал?

Это не поверхностный гайд. За 4 часа Карпатый проходит весь цикл создания языковой модели на доступном примере:

  1. Сборка нейросети: Построение архитектуры GPT-2 с помощью torch.nn.Module.
  2. Оптимизация: Разгон скорости обучения с помощью mixed precision, Flash Attention и torch.compile.
  3. Настройка обучения: Выбор гиперпараметров (learning rate, batch size, weight decay) в соответствии с оригинальными пейперами GPT-2.
  4. Тренировка и оценка: Запуск процесса на реальном датасете, валидация и даже оценка качества модели на бенчмарке HellaSwag.

В конце вы получаете не просто скрипт, а полное понимание, почему он написан именно так.

Почему GPT-2?

Многие могут сказать: «Пфф, GPT-2, это же прошлый век!». Но такой пример очень хорош по следующим причинам:

  • Доступность. GPT-2 (версия на 124М параметров) — это модель, которую можно полностью обучить с нуля на одной не самой мощной GPU.
  • Воспроизводимость. Вы можете в точности повторить эксперимент и сравнить свои результаты с результатами из оригинальной научной статьи OpenAI.
  • Фундаментальность. Разница между GPT-2 и более современными моделями — не фундаментальная пропасть. Поняв, как работает GPT-2, вы разберётесь в архитектуре любой современной модели.

Весь код с видео доступен на GitHub 🐍