LLM 텍스트 생성 아키텍처

거대 언어 모델(LLM)이 텍스트를 생성하는 과정은 단순한 확률 게임을 넘어, 수조 개의 파라미터가 정밀하게 맞물려 돌아가는 거대한 기계 장치와 같습니다.

토큰화(Tokenization)부터 시작하여 임베딩(Embedding), 트랜스포머 블록(Transformer Block)에서의 복잡한 어텐션 연산, 그리고 최종적인 샘플링(Sampling)까지. 각 단계에서 어떤 연산이 일어나고 어디서 병목이 발생하는지 직관적으로 이해할 수 있는 아키텍처 구조도를 소개합니다.

특히 성능 최적화의 핵심인 **KV 캐시(KV Cache)**와 최근의 속도 향상 기법인 **추측 디코딩(Speculative Decoding)**의 원리를 한눈에 확인해 보세요.

LLM 텍스트 생성 아키텍처

구조/텍스트
핵심 연산
메모/주석
프롬프트 단계: 모든 입력 토큰을 병렬 처리
(연산 병목)

임베딩 레이어

토큰 ID [2601, 318, 26110, 879, 30]
토큰
임베딩
| ···
| ···
| ···
| ···
| ···
임베딩 행렬
(seq_len x d_model)
d_model =
4096차원 벡터

트랜스포머 블록

(x N 레이어)

멀티헤드 셀프 어텐션

Q
(d_model x d_k)
K
(d_model x d_k)
V
(d_model x d_v)
어텐션 점수
i
j
softmax (QKᵀ) / √dₖ
+ 더하기 & 레이어 정규화

피드포워드 네트워크 (FFN)

선형층
(d_model x d_ff)
ReLU / SwiGLU
선형층
(d_ff x d_model)
+ 더하기 & 레이어 정규화
디코드 단계:
토큰을 하나씩 생성
(메모리 병목)

KV 캐시 (레이어별)

시간 t₁, t₂, t₃ ... t
K
V
→ 이전 K,V 쌍 저장
→ 재계산 방지
KV 캐시는 시퀀스 길이에 비례해 증가 - 주요 메모리 병목
FlashAttention:
어텐션 연산을 합쳐 HBM 읽기 감소
x N 레이어 (GPT-4급 모델 기준)

선형층 + 소프트맥스
(LM 헤드)

선형층
(d_model x 128K)
로짓
(어휘 크기 = 128K)
...
1128K
소프트맥스
어휘별 확률
10⁰
10⁻³
...
1128K

샘플링 전략

그리디:
최대확률 선택
↓ 샘플
Top-K:
상위 K 토큰에서
샘플
Top-P(뉴클리어스):
누적확률 기준
샘플
Temperature:
무작위성 조절
T→0 결정적
T→1 창의적
양자화:
INT8/INT4 가중치로
메모리 2~4배 절감

추측 디코딩

(속도 트릭)
작은 초안 모델이
후보 토큰 k개를
빠르게 생성
중력 이란 무엇 a
큰 목표 모델이
병렬 검증
토큰 4개 병렬 검증
중력26110수락
이란879수락
무엇318거절
a256거절
다음 토큰
생성
fundamental
17042
Select a song... 이 글 읽기
Select a song... 이 글 읽기
Total Views:  |  Visitors: