OPT: GPT-3의 오픈소스 재현과 LLM 연구 민주화

개요

OPT(Open Pre-trained Transformer)는 2022년 5월 Meta AI가 공개한 175B 파라미터 규모의 오픈소스 대형 언어 모델이다. OPT의 핵심 목표는 명확했다: GPT-3급 모델을 연구 커뮤니티에 완전히 공개하여 LLM 연구의 문턱을 낮추자.

OPT 이전에 GPT-3(175B)는 API를 통해서만 접근 가능했고, 내부 구조와 학습 과정은 베일에 싸여 있었다. Meta는 OPT를 통해 가중치, 학습 코드, 심지어 학습 로그까지 모두 공개하여, 대형 모델 학습에서 발생하는 실질적인 문제(불안정성, 발산 등)와 해결 과정을 커뮤니티와 공유했다.

아키텍처 상세

OPT는 GPT-3의 아키텍처를 충실히 재현하되 Pre-LayerNorm을 적용한 구조이다:

구성 요소OPT-175B
파라미터 수175B
레이어 수96
Hidden Dim12,288
Attention Heads96
Vocab Size50,272
Context Length2,048
정규화Pre-LayerNorm
활성화 함수ReLU
위치 인코딩Learned Absolute

모델 크기 시리즈

모델파라미터레이어Hidden DimHeads
OPT-125M125M1276812
OPT-350M350M241,02416
OPT-1.3B1.3B242,04832
OPT-2.7B2.7B322,56032
OPT-6.7B6.7B324,09632
OPT-13B13B405,12040
OPT-30B30B487,16856
OPT-66B66B649,21672
OPT-175B175B9612,28896

총 9개의 크기로 제공되어 다양한 연구 환경에서 활용 가능하다.

Pre-LayerNorm

GPT-3의 Post-LayerNorm과 달리 OPT는 Pre-LayerNorm을 채택했다. 어텐션과 FFN 전에 LayerNorm을 적용하여 깊은 네트워크에서의 학습 안정성을 개선한다:

핵심 혁신: 투명성과 재현 가능성

학습 로그북

OPT의 가장 독특한 기여는 **학습 로그북(Logbook)**의 공개이다. 175B 모델을 학습하면서 발생한 모든 문제와 해결 과정을 상세히 기록했다:

  1. 학습 불안정성: 특정 스텝에서 loss가 갑자기 발산하는 현상 발생
  2. 학습률 재설정: 불안정 구간에서 learning rate를 이전 안정 구간으로 되돌림
  3. 그래디언트 클리핑: 기울기 폭발을 방지하기 위한 클리핑 값 조정
  4. 체크포인트 복원: 발산 시 이전 체크포인트에서 재시작

이러한 실질적인 노하우는 이전에는 대기업 내부에서만 공유되던 것으로, 커뮤니티에 큰 가치를 제공했다.

from transformers import AutoTokenizer, OPTForCausalLM
import torch
 
# OPT 모델 로드
tokenizer = AutoTokenizer.from_pretrained('facebook/opt-1.3b')
model = OPTForCausalLM.from_pretrained('facebook/opt-1.3b')
 
# 텍스트 생성
prompt = "The key innovation of OPT is"
inputs = tokenizer(prompt, return_tensors='pt')
 
with torch.no_grad():
    outputs = model.generate(
        inputs['input_ids'],
        max_length=100,
        do_sample=True,
        temperature=0.7,
        top_p=0.9
    )
 
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

벤치마크/성능

OPT-175B는 GPT-3와 유사한 수준의 성능을 보여준다:

벤치마크OPT-175BGPT-3 175B비교
전체 제로샷 평균GPT-3 수준baseline10/16 태스크 일치
HellaSwag~79%~79%동등
PIQA~81%~81%동등
StoryCloze~84%~84%동등
탄소 배출1/7baseline7배 효율적

핵심 결과

  • 16개 제로샷 태스크 중 10개에서 GPT-3와 동등
  • 나머지 6개에서는 성능 편차 존재
  • GPT-3 대비 1/7의 탄소 배출로 유사 성능 달성
  • 125M부터 175B까지 일관된 스케일링 효과 확인

관련 모델 비교

특성GPT-3OPTBLOOMLLaMA
파라미터175B175B176B65B
오픈소스XO (가중치+코드+로그)OO
학습 로그 공개XO부분X
탄소 효율1x7x--
라이선스비공개비상업 연구RAIL연구용
학습 데이터비공개The Pile + RedditROOTS공개
위치 인코딩LearnedLearnedALiBiRoPE

학습 상세

데이터셋

  • The Pile (주요 데이터)
  • Reddit 공개 데이터
  • 다양한 웹 코퍼스
  • ~180B 토큰

학습 인프라

  • 992개 A100 80GB GPU
  • 학습 기간: 약 2개월
  • Metaseq 프레임워크 (Meta 자체 분산 학습)
  • Fully Sharded Data Parallel (FSDP) + Megatron-LM Tensor Parallelism
  • GPU 활용률: 최대 147 TFLOP/s per GPU

실무 활용

1. LLM 연구 베이스라인

9가지 크기의 모델이 제공되어 스케일링 법칙 연구에 이상적인 베이스라인이다.

2. 학습 과정 연구

공개된 학습 로그를 통해 대형 모델 학습의 불안정성과 해결 방법을 연구할 수 있다.

3. 모델 압축 연구

다양한 크기의 체크포인트가 제공되어 지식 증류(knowledge distillation) 연구에 활용 가능하다.

4. 편향/안전성 연구

가중치가 공개되어 모델의 편향, 독성, 공정성에 대한 심층 분석이 가능하다.

한계 및 전망

한계

  1. 비상업 라이선스: 연구 목적으로만 사용 가능하여 상업적 활용이 제한된다
  2. 성능 편차: 일부 태스크에서 GPT-3에 미달하는 성능을 보인다
  3. 단일 언어: 영어 중심으로 다국어 지원이 부족하다
  4. 아키텍처 보수성: RoPE, SwiGLU 등 최신 기법을 채택하지 않았다

전망

OPT는 오픈소스 LLM 시대의 문을 연 선구적 모델이다. GPT-3 수준의 모델을 완전히 공개함으로써, 이후 LLaMA, BLOOM, Falcon 등 더 강력한 오픈소스 모델들이 등장하는 생태계의 토대를 마련했다. 특히 학습 로그북이라는 실용적 투명성의 전통은 이후 모델들의 기술 보고서 작성 관행에 영향을 미쳤다.


참고 문헌

  • Zhang, S., et al. (2022). “OPT: Open Pre-trained Transformer Language Models.” arXiv:2205.01068
  • Brown, T. B., et al. (2020). “Language Models are Few-Shot Learners.” (GPT-3)
  • Gao, L., et al. (2020). “The Pile: An 800GB Dataset of Diverse Text for Language Modeling.”

관련 문서