2019년 공개되자마자 위험할 정도로 강력하다며 화제가 된 오픈AI GPT-2를 제로부터 만든 보고서가 공개됐다. 제작에 걸린 시간은 1시간에 14달러짜리 클라우드 컴퓨팅 서비스로 1시간 30분이었기 때문에 전체 비용은 20달러(약 3,100원)에 그쳤다.
이번에 GPT-2를 재현한 건 오픈AI 공동설립자 안드레이 카르파티(Andrej Karpathy)다. 굳이 GPT-2를 선택한 이유는 GPT-2가 대규모 언어 모델(LLM)의 조상이며 또 2019년 모델임에도 불구하고 GPT-3나 다른 모델과 기본 메커니즘 자체는 거의 같기 때문이라는 설명이다. AI를 만들기 위해 가장 먼저 필요한 것은 GPU인데 그는AI 전용 GPU를 클라우드에서 제공하는 서비스 람다(Lambda)를 선택했다.
# Reproduce GPT-2 (124M) in llm.c in 90 minutes for $20 ✨
— Andrej Karpathy (@karpathy) May 28, 2024
The GPT-2 (124M) is the smallest model in the GPT-2 series released by OpenAI in 2019, and is actually quite accessible today, even for the GPU poor. For example, with llm.c you can now reproduce this model on one 8X… pic.twitter.com/C9GdaxGPhd
개발자에 따르면 이런 경우 자주 사용되는 구성은 리눅스(Linux x86 64bit Ubuntu 22.04)에 라이브러리로 쿠다 12를 도입한 것이라고 한다. 이 환경에서 그는 다음과 같은 실행 명령어를 사용했다. 길지만 요약하자면 GPT-2(124M)를 제로부터 100억 토큰 파인웹(FineWeb) 데이터세트를 사용해 최대 시퀀스 길이 1024 토큰으로 훈련시킨다는 것이다.
그 결과 GPT-2 최소 모델인 GPT-2 124M을 A100 80GB SXM 8개 노드에서 90분 만에 만들 수 있었다. 람다에서는 이 노드가 시간당 최대 14달러로 제공되므로 전체 비용은 20달러가 된다. GPU를 1개로 줄여 훈련하는 것도 가능하지만 이에 비례해서 필요 시간이 늘어나므로 GPU에 따라 4~24시간이 걸릴 수 있다고 한다.
더 나아가 그는GPT-2 350M도 만들어 봤다. 그 결과 훈련 시간은 14시간이 걸렸고 비용은 GPT-2 124M 10배인 200달러가 들었다.
앞으로 그는 GPT-2 크기를 740M, 1558M으로 점차 늘려나갈 계획이다. 하지만 앞서 언급한 노드에서 1558M 모델을 만들려면 일주일이 걸리고 비용도 2,500달러에 이를 것으로 보인다. 따라서 그는 가능하진 않지만 일단은 코드를 정교히 다듬고 테스트를 개선하고 다중 노드에서 훈련할 수 있게 하는 데 시간을 할애해 보려 한다고 말했다. 관련 내용은 이곳에서 확인할 수 있다.