karpathy/minGPT

Минимальная реализация на PyTorch для обучения OpenAI GPT (Generative Pretrained Transformer)

Чат-UI⭐ 24 905Python
Открыть на GitHub ↗

Что это за инструмент

minGPT — это минималистичная реализация модели GPT на PyTorch, состоящая всего из нескольких файлов, предназначенная для обучения и генерации текста.

Зачем нужен

Инструмент служит образовательным ресурсом для понимания внутренней архитектуры Transformer и процесса обучения GPT-моделей без лишней сложности. Он позволяет разработчикам изучать, как последовательность токенов преобразуется в вероятности следующего токена, и экспериментировать с обучением моделей с нуля.

Что можно реализовать

  • Изучение архитектуры Transformer и принципов работы GPT через разбор чистого кода (~300 строк)
  • Обучение модели с нуля на собственных текстовых данных (например, для задач adder или chargpt)
  • Использование Byte Pair Encoder (BPE) для токенизации текста, аналогичной OpenAI GPT
  • Быстрый прототипинг и тестирование идей обучения языковых моделей в Jupyter Notebook

Ключевые возможности

  • Минимальный размер кодовой базы (около 300 строк в main model.py)
  • Чистая и интерпретируемая реализация на PyTorch
  • Встроенный BPE (Byte Pair Encoder) для работы с текстом
  • Готовые демо-проекты (adder, chargpt) и ноутбуки с примерами
  • Простой интерфейс Trainer для настройки обучения (learning_rate, batch_size и т.д.)

👤 Кому подойдёт: разработчики, исследователи, студенты и энтузиасты, изучающие архитектуру LLM и PyTorch

Релизы

Релизы ещё не отслежены — появятся после ближайшего опроса.