Karpathy의 microgpt.py 완전 해부: 150줄로 이해하는 GPT의 본질
PyTorch 없이 순수 Python 150줄로 GPT를 학습하고 추론하는 microgpt.py. 코드 한 줄 한 줄을 해부하며 GPT의 알고리즘과 효율화를 구분합니다.

Karpathy의 microgpt.py 완전 해부: 150줄로 이해하는 GPT의 본질
Andrej Karpathy가 새로운 코드를 공개했습니다. 이번에는 nanoGPT보다 더 극단적입니다. 외부 라이브러리 없이, 순수 Python만으로 GPT를 학습하고 추론하는 150줄짜리 코드입니다.
PyTorch 없음. NumPy 없음. import는 os, math, random 세 개뿐.
코드 상단의 주석이 모든 것을 요약합니다:
"This file is the complete algorithm. Everything else is just efficiency."
이 글에서는 microgpt.py를 한 줄 한 줄 해부합니다. 코드를 따라가다 보면, GPT라는 알고리즘이 실제로는 놀라울 정도로 단순한 수학 연산의 조합이라는 사실을 체감하게 됩니다.
전체 구조
microgpt.py는 크게 6개 파트로 나뉩니다:
| 파트 | 줄 수 | 역할 |
|---|---|---|
| 데이터 & 토크나이저 | ~10줄 | 이름 데이터셋 로드, 문자 단위 토큰화 |
| Value 클래스 (Autograd) | ~35줄 | 스칼라 자동 미분 엔진 |
| 파라미터 초기화 | ~15줄 | 가중치 행렬 생성 (4,192개 파라미터) |
| 모델 아키텍처 | ~40줄 | Embedding + Attention + MLP + RMSNorm |
| 학습 루프 | ~20줄 | Cross-entropy loss + Adam optimizer |
| 추론 | ~15줄 | Temperature sampling으로 이름 생성 |
총 파라미터: 4,192개. GPT-2 Small의 124M과 비교하면 약 30,000배 작습니다. 하지만 알고리즘은 동일합니다.
관련 포스트

InternVL-U: 4B 파라미터로 이해+생성+편집을 동시에 -- 통합 멀티모달의 새 기준
Shanghai AI Lab의 InternVL-U. 4B 파라미터 단일 모델로 이미지 이해, 생성, 편집, 추론 기반 생성을 모두 수행. 디커플드 비주얼 표현으로 14B BAGEL을 GenEval과 DPG-Bench에서 능가.

Hybrid Mamba-Transformer MoE: 세 팀이 동시에 도달한 같은 결론 -- 2026년 LLM 아키텍처의 수렴
NVIDIA Nemotron 3 Nano, Qwen 3.5, Mamba-3가 독립적으로 75% 선형 레이어 + 25% 어텐션 + MoE 구조에 수렴. 88% KV-cache 절감, O(n) 복잡도로 긴 컨텍스트 처리.

Spectrum: 학습 없이 Diffusion 모델 3~5배 빠르게 -- 체비셰프 다항식의 마법
Stanford/ByteDance의 CVPR 2026 논문. 체비셰프 다항식 기반 feature forecasting으로 FLUX.1 4.79배, HunyuanVideo 4.56배 스피드업. Training-free로 어떤 모델에도 즉시 적용.