인터랙티브로 배우는 MicroGPT: Karpathy의 200줄 GPT 완전 분석

LLM의 심장부를 200줄 Python으로 이해하다

Andrej Karpathy가 작성한 MicroGPT는 라이브러리 없이 순수 Python만으로 GPT 아키텍처를 구현한 200줄짜리 스크립트다. growingSWE는 이 코드를 초보자도 이해할 수 있도록 인터랙티브 시각화로 재구성했다.

무엇을 배울 수 있나?

토크나이저: 32,000개 이름 데이터셋을 정수 시퀀스로 변환하는 과정. 각 문자가 어떤 정수 ID에 매핑되는지 직접 입력하며 확인할 수 있다.

Softmax: 원시 점수(logits)를 확률 분포로 변환하는 과정을 시각적으로 확인한다.

역전파(Backpropagation): 계산 그래프 위에서 그레이디언트가 어떻게 흐르는지 단계별로 추적한다.

어텐션 히트맵: self-attention이 어떤 토큰에 집중하는지 히트맵으로 시각화한다.

왜 중요한가?

모델이 32,000개 이름을 학습한 뒤 'kamon', 'karai', 'anna', 'anton' 같은 그럴듯한 새 이름을 생성하는 것을 직접 확인할 수 있다. ChatGPT의 관점에서 대화는 그저 문서 완성 작업이다. 이 200줄 스크립트가 그 원리를 가장 단순하게 보여준다. Hacker News에서 182점을 받은 이 튜토리얼은 LLM 학습 자료 중 가장 직관적인 입문서 중 하나다.