GPT (Generative Pre-trained Transformer)
GPT(생성형 사전 학습 트랜스포머)는 다음 토큰을 예측하도록 사전 학습된 디코더 전용 트랜스포머입니다. 작동 원리와 GPT-1부터 GPT-6까지를 다룹니다.
GPT(생성형 사전 학습 트랜스포머)는 대량의 레이블 없는 텍스트를 대상으로 다음 토큰을 예측하도록 먼저 사전 학습한 다음 작업에 맞게 조정하는 디코더 전용 트랜스포머 언어 모델입니다. OpenAI는 Alec Radford와 동료들의 논문 생성형 사전 학습을 통한 언어 이해 향상과 함께 2018년 6월 이 접근법을 소개했습니다. 이름은 텍스트의 생성형 모델이며, 특정 작업을 위한 학습에 앞서 사전 학습되고, 트랜스포머를 기반으로 한다는 학습 방법을 나타냅니다. GPT 시리즈는 GPT-1의 1억 1,700만 개 파라미터에서 GPT-3의 1,750억 개 파라미터로 발전했습니다. 2022년 11월 30일 출시된 ChatGPT는 GPT를 가장 널리 알려진 대규모 언어 모델(LLM) 계열로 만들었습니다. "GPT 스타일"은 같은 방식으로 학습된 디코더 전용 LLM을 통칭하기도 하며, Meta의 Llama와 Alibaba의 Qwen 모델이 여기에 포함됩니다.
GPT 모델의 작동 방식#
텍스트를 먼저 토큰으로 분할합니다. GPT-2는 50,257개 토큰으로 구성된 바이트 수준 토큰화 방식을 도입했고 GPT-3도 이를 유지했습니다. 각 토큰은 임베딩과 위치 신호로 변환되고, 동일한 디코더 블록을 쌓아 벡터를 정제합니다. 각 블록에서 마스킹된 셀프 어텐션은 각 위치가 자기 자신과 앞선 위치만 참조하도록 하며, 피드포워드 계층은 각 위치를 독립적으로 변환합니다:
인과 마스크를 사용하면 1,024개 토큰으로 이루어진 학습 시퀀스를 한 번 순전파할 때 다음 토큰 예측 1,024개를 동시에 얻을 수 있으므로, 생성은 순차적으로 이루어지지만 사전 학습은 병렬화할 수 있습니다. 추론 시 모델은 다음 토큰의 점수를 계산하고 토큰 하나를 추가한 뒤 반복하며, KV 캐시를 통해 이전 계산 결과를 재사용합니다. OpenAI의 파라미터 1억 2,400만 개짜리 GPT-2에서 첫 단계를 확인할 수 있습니다:
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("gpt2")
model = AutoModelForCausalLM.from_pretrained("gpt2")
inputs = tokenizer("The capital of France is", return_tensors="pt")
# One forward pass scores every vocabulary token as the next token
with torch.no_grad():
logits = model(**inputs).logits[0, -1]
top = logits.softmax(dim=-1).topk(5)
for p, i in zip(top.values, top.indices):
print(f"{tokenizer.decode(i)!r}: {p:.3f}")
# Generation repeats that step, appending one token at a time
output = model.generate(**inputs, max_new_tokens=8, do_sample=False, pad_token_id=tokenizer.eos_token_id)
print(tokenizer.decode(output[0]))GPT-2는 " the"에 0.085의 확률을, " Paris"에 0.032의 확률을 부여하며, 탐욕적 디코딩으로 "The capital of France is the capital of the French Republic, and"를 생성합니다. 사전 학습된 GPT는 학습 데이터의 패턴에 따라 텍스트를 이어 씁니다. 이후 지시 튜닝과 인간 피드백 기반 강화 학습(RLHF)을 거치면 질문에 답하는 어시스턴트가 됩니다.
GPT-1에서 GPT-6까지#
GPT-1은 공개되지 않은 도서 7,000권 이상으로 12개 계층의 디코더를 사전 학습한 다음 작업별로 파인튜닝했으며, 연구한 12개 작업 중 9개에서 최고 성능을 개선했습니다. 2019년 2월 발표된 GPT-2는 웹 텍스트 40 GB로 학습한 15억 개 파라미터 모델로 확장되었고 제로샷 작업을 수행했습니다. OpenAI는 오용 우려로 2019년 11월까지 가중치를 단계적으로 공개했습니다. 2020년 5월 GPT-3는 프롬프트에 포함된 예제로부터 퓨샷 학습이 가능함을 보였으며, 이 결과는 스케일링 법칙이 예측한 바와 같았습니다.
InstructGPT와 이어서 ChatGPT는 사람의 피드백을 활용한 학습을 도입했고, GPT-4는 2023년 3월 이미지 입력을 지원했습니다. 2024년 9월 o1로 시작한 OpenAI의 o 시리즈 추론 모델은 답변 전에 긴 사고의 연쇄를 작성하도록 학습했으며, 2025년 8월 7일 출시된 GPT-5는 빠른 모델과 추론 모델을 라우터 뒤에 배치했습니다. 이틀 전 OpenAI는 GPT-2 이후 처음으로 공개 가중치 언어 모델인 gpt-oss-120b와 gpt-oss-20b를 Apache 2.0 라이선스로 출시했습니다. GPT-6 제품군은 2026년 9월에 출시되었습니다. GPT-6 Astra는 9월 3일, GPT-6 Sol과 GPT-6 Luna는 9월 22일, GPT-6.1 Sol은 9월 29일에 출시되었습니다.
컴퓨터 비전에서의 GPT#
이미지에도 동일한 다음 토큰 예측 방식이 적용됩니다. OpenAI의 Image GPT는 2020년에 GPT-2 규모의 모델을 학습해 픽셀을 하나씩 예측했고, 시각 자기회귀 모델링(VAR)은 이미지의 각 스케일을 예측합니다. 많은 비전 언어 모델(VLM)은 이미지 인코더를 GPT 방식의 디코더에 연결해 답변을 생성합니다. 텍스트 인코더도 이 설계를 활용합니다. OpenAI의 CLIP은 GPT-2 아키텍처와 마스크드 셀프 어텐션을 사용하는 6,300만 파라미터, 12레이어 Transformer로 텍스트를 인코딩합니다. Ultralytics 패키지에서 실행되는 Tencent AI Lab의 YOLO-World는 set_classes(["person", "bus"])가 호출될 때 해당 CLIP 텍스트 인코더를 호출해 각 클래스 이름을 임베딩으로 변환하고 탐지기가 이를 이미지 영역과 매칭합니다. 따라서 재학습 없이 클래스 목록을 변경할 수 있습니다. OpenAI의 GPT 모델도 이미지를 읽으며, VLM 리더보드는 GPT-6.1 Sol과 다른 비전 언어 모델이 실제 데이터셋에서 객체를 얼마나 정확하게 탐지하는지 측정합니다.
GPT와 관련 용어 비교#
BERT는 인과 마스크 없이 트랜스포머 인코더를 사용하므로 모든 토큰이 전체 입력을 참조합니다. 분류와 검색에 적합하지만 텍스트를 생성하지 않습니다. LLM은 대규모 언어 모델을 통칭하며, GPT는 OpenAI의 모델 시리즈와 대부분의 LLM이 공유하는 디코더 전용 설계를 모두 가리킵니다. ChatGPT와 같은 챗봇은 시스템 프롬프트, 대화 기록, 도구를 모델에 결합해 만든 애플리케이션입니다.










