Андрей Карпати, основатель образовательного AI-стартапа Eureka Labs, анонсировал проект под названием microGPT. Этот проект представляет собой полную реализацию обучения и инференса GPT, помещенную в 243 строки кода на Python. В работе использованы только стандартные библиотеки: math, random, os и argparse.
В microGPT включены все необходимые компоненты для функционирования языковой модели, такие как движок автоматического дифференцирования, токенизатор с токенами BOS/EOS и архитектура Transformer, оснащенная multi-head attention. В отличие от GPT-2, здесь применяются RMSNorm вместо LayerNorm и squared ReLU вместо GeLU, а также отсутствуют bias-параметры.
Карпати охарактеризовал проект как «арт-проект», обращая внимание на то, что весь алгоритмический контент для обучения GPT уже собран. Хотя модель по умолчанию обучается на именах из его прошлых работ, применить код можно к любым текстовым корпусам.
Это первый из множества минималистичных проектов Карпати; ранее он уже представил micrograd и minGPT. Несмотря на то, что microGPT не предназначен для практического применения, его компактность вызвала интерес на GitHub.