
Lemonade Second Squeeze: 2019년 GPT-2XL 모델 고고학
요약
로컬 환경에서 2019년 GPT-2 XL 모델과 2025년 Qwen3-0.6B 모델을 직접 실행하며 성능 변화를 비교한 실험기입니다. 설치 과정의 기술적 난관을 극복하고 오픈 소스 기여까지 이어진 개발 경험을 다룹니다.
핵심 포인트
- 로컬 AI 서버 Lemonade를 활용한 모델 실행 경험
- 과거 모델(GPT-2 XL)과 최신 소형 모델(Qwen3)의 비교
- 로컬 환경 구축 시 발생하는 Python 버전 및 GPU 백엔드 이슈 해결
- 문제 해결 과정을 통한 오픈 소스 리포지토리 기여
2주 전까지만 해도 저는 제 개인 컴퓨터에서 AI 모델을 직접 실행해 본 적이 없었습니다. 제가 구축했던 모든 프로젝트는 키(key)가 포함된 클라우드 API를 호출하는 방식이었습니다. 그러다 AMD의 Advancing AI 2026 summit의 vibecoding 랩에 앉아, 노트북 하나로 모델이 질문에 답하는 것을 지켜보게 되었습니다. 데이터가 방 밖으로 전혀 나가지 않는 모습이었죠. 그때 저는 갈증을 느꼈습니다.
저에게는 하나의 패턴이 있습니다. 무언가 제 마음을 뜨겁게 만들면, 준비가 되기도 전에 그것을 쫓는다는 것입니다. 이번이 바로 그랬습니다. 저는 일부러 제 역량을 벗어나는 프로젝트를 골랐고, 일주일 동안 그것을 내려놓지 못했습니다.
그러니 수치를 논하기 전에, 핵심부터 말씀드리자면 이렇습니다. 수치가 핵심은 아닙니다. 뭐, 어느 정도는 핵심일 수도 있겠지만요. 핵심은 제가 계속해서 벽에 부딪혔음에도 불구하고 계속 나아갔다는 점입니다. 나머지 내용은 그 과정이 어떠했는지에 대한 이야기입니다.
시작할 자격도 없는 프로젝트를 골랐습니다.
아이디어는 모델 고고학 (model archaeology)이었습니다. 2019년의 모델과 2025년의 모델을 가져와서, 동일한 노트북에서 둘 다 실행해 보고 6년 동안 실제로 무엇이 변했는지 측정하는 것이었습니다. 저는 이것을 Second Squeeze라고 불렀습니다. 오래된 레몬을 짜보고, 새 레몬을 짜보고, 그 즙이 같은지 확인하는 것이죠.
오래된 레몬: GPT-2 XL, 2019년, 15억 개(1.5 billion)의 파라미터 (parameters). 새 레몬: Qwen3-0.6B, 2025년, 크기가 절반도 되지 않음. 둘 다 AMD의 로컬 AI 서버인 Lemonade를 통해 로컬에서 실행합니다. 저는 살면서 이런 것을 설치해 본 적이 한 번도 없었습니다. 하지만 어쨌든 시작했습니다.
설치 과정은 저와 싸웠지만, 저는 계속 나아갔습니다.
순탄치 않았습니다. 하지만 저는 언제나 도전을 즐깁니다! 명령어는 문서(docs)가 암시하는 것과 달랐습니다. 처음에는 PATH에 등록되어 있지도 않았습니다. GPU 백엔드 (backend)가 다운로드를 시도하다가 잠긴 파일(locked file) 때문에 두 번이나 멈췄습니다. 제 Python 버전은 평가 도구 (eval tool)에 비해 너무 최신 버전이라, 이 프로젝트만을 위해 두 번째 Python을 따로 세웠습니다.
이 중 그 어떤 것도 화려하지 않습니다. 하지만 문제를 해결해 나가는 과정이 바로 재미의 전부입니다! 모든 벽은 동일한 작은 결정의 연속이었습니다. 탭을 닫을 것인가, 아니면 에러를 읽고 한 번 더 시도해 볼 것인가. 저는 계속해서 한 번 더 시도하는 쪽을 택했습니다. 마침내 2025년의 아주 작은 모델이 제 노트북에서 저에게 인사를 건넸고, 저는 아마 소리를 질렀을지도 모릅니다. 만세!
나의 첫 번째 실제 계획은 벽에 부딪혔고, 그래서 나는 그 벽을 옮겼습니다.
원래 계획은 정확도(accuracy)였습니다. GPT-2에는 유명한 2019년 벤치마크(benchmark)가 있고, 저는 그 오래된 주장이 여전히 유효한지 확인하고 싶었습니다. 그 테스트에는 모델로부터 특정 종류의 확률 데이터(probability data)가 필요한데, Lemonade는 표준 도구가 기대하는 방식대로 그 데이터를 돌려주지 않았습니다. 막다른 길이었습니다.
과거의 저였다면 이를 제가 이 일에 적합하지 않다는 증거로 받아들였을 것입니다. 하지만 Claude와 지금의 저는 대신 문서를 읽었고, 정확히 무엇이 누락되었는지 찾아냈으며, 이를 깔끔하게 재현(reproduce)한 뒤 Lemonade의 리포지토리(repo)에 이슈(issue)를 등록하여 다음 사람이 벽 대신 표지판을 마주할 수 있도록 했습니다. 완전히 작동하지 않는 무언가로부터 탄생한 저의 첫 오픈 소스(open source) 기여였습니다.
그 후 저는 질문을 도구가 답할 수 있는 것으로 바꾸었습니다. 얼마나 똑똑한가가 아니라, 얼마나 빠른가, 그리고 명령(instruction)을 따를 수 있는가로 말이죠. 호기심은 같지만, 문은 달라졌습니다.
나만의 벤치마크가 나의 거짓말을 잡아냈고, 나는 그것을 받아들였습니다.
이 부분은 제가 가장 자랑스럽게 생각하는 부분이며, 실수에서 시작되었습니다.
저의 첫 번째 속도 테스트(speed run)에서 GPT-2는 초당 0.31 토큰(tokens per second)을 기록했습니다. 최신 모델의 90과 비교하면 297배의 격차입니다. 엄청난 차이였죠. 저는 그것이 사실이기를 간절히 바랐습니다.
결과를 게시하기 전, Claude는 누구나 명령어 하나로 모든 수치를 다시 실행할 수 있도록 작은 스크립트(script)를 작성해 주었습니다. 제가 그것을 실행해 보았습니다. GPT-2는 0.31이 아니라 8.5로 돌아왔습니다. 저의 첫 번째 수치는 쓰레기였습니다. 백엔드(backend)가 여전히 다운로드 중이었고 모델이 디스크에서 막 로드되어 차가운(cold) 상태에서 측정된 값이었기 때문입니다. 실제 격차는 297배가 아니라 약 11배였습니다.
저는 297배라는 수치를 그대로 유지할 수도 있었습니다. 아무도 확인하지 않았을 테니까요. 대신 저는 11배를 유지했고, 왜 첫 번째 수치가 거짓이었는지 기록했습니다. 재현할 수 없는 숫자는 결과가 아니라 루머(rumor)이기 때문입니다. 스스로를 바로잡기 위해 만든 도구가 저를 잡아낸 것입니다. 그 순간 한 달간의 경험이 모두 느껴지는 기분이었습니다.
그리고 성능(capability) 측면에 대해서도 빠르게 살펴보자면, 웃음이 나올 수밖에 없었습니다. 저는 두 모델 모두에게 "The capital of France is."를 완성하라고 요청했습니다. 2025년 모델은 "Paris"라고 답하며 먼저 약간의 추론(reasoning) 과정을 보여주기까지 했습니다. 대화라는 개념이 없는 2019년 모델은 무작위적인 임포트(import) 문들의 벽을 만들어냈습니다. 6년은 긴 시간입니다.

내가 간직한 것은 숫자가 아니었습니다.
이번 빌드(build)를 통해 얻은 것은 초당 토큰 수(tokens per second)가 아닙니다.
모든 단계 하나하나가 제가 이전에 해본 적 없는 일들이었습니다. 모델을 로컬(locally)에서 실행하기. Claude의 도움을 받아 스택 트레이스(stack trace) 읽기. Lemonade의 리포지토리(repo)에 이슈(issue) 제기하기. 제가 작성한 헤드라인이 틀렸다고 공개적으로 말하기. 이 중 어느 하나만 했더라도 그만두기에 충분한 지점이었을 것이며, 이 작업이 반쪽짜리 시도들이 담긴 폴더가 아닌 하나의 프로젝트가 될 수 있었던 유일한 이유는 제가 포기하지 않았기 때문입니다.
저는 그 어떤 프레임워크(framework)보다도, 이러한 기술을 강화하는 것을 좋아한다고 생각합니다. 새로운 것을 계속 시도하는 것. 저항에 부딪힐 때 계속 밀어붙이는 것. 문이 잠겨 있다면 문을 바꾸되, 건물 밖으로 나가지는 않는 것 말입니다.
Second Squeeze가 공개되었습니다. 클릭할 수 있는 대시보드(dashboard), 다시 실행해 볼 수 있는 리포지토리(repo), 망가뜨려 볼 수 있는 테스트(tests), 그리고 실제 격차를 해소하는 데 도움이 될 수도 있는 제가 제기한 이슈(issue)가 있습니다. 다음으로는 이 모든 것을 실제 AMD GPU에서 실행하여 또 다른 막대 그래프를 추가하고 싶습니다. 그것은 또 다른 폭발이자, 또 다른 하루의 과제입니다.
만약 여러분이 감당하기 벅차 보이는 무언가의 주변을 맴돌고 있다면, 이것을 하나의 신호로 받아들이세요. 준비가 되기 전에 시작하세요. 벽에 부딪히세요. 그리고 계속 나아가세요.
원하신다면, 여러분을 위한 정보입니다:
- 라이브 대시보드 (Live dashboard): https://earlgreyhot1701d.github.io/second-squeeze/
- 리포지토리 (Repo, MIT): https://github.com/earlgreyhot1701D/second-squeeze
- 제가 제기한 이슈 (The issue I filed): https://github.com/lemonade-sdk/lemonade/issues/2822
처음 오신 분들을 위한 짧은 배경 설명: 저는 법정에서 코딩의 세계로 넘어왔습니다. 독학으로, 공개적으로 학습하며 약 1년 만에 배심원 서비스에서 AI 빌더(builder)가 되었습니다. 저는 지시(direct)하고, 에이전트(agents)는 생성(generate)하며, 저는 검증(validate)하고 결정(decide)합니다. 그것이 제가 글을 쓰는 관점입니다.
AI 지원. 인간 승인. NLP 기반.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기