Track 4에서 GQA를 봤어. 이제 block 안에 두자. 변화는 local — K, V projection만 줄어들어 — 하지만 그 함의가 추론 전반에 cascade.
Llama 3.3 70B(d_model=8192, n_q_heads=64, n_kv_heads=8, d_head=128):
- Q projection: 8192 × (64 × 128) = 8192 × 8192 = block당 67M params.
- K projection: 8192 × (8 × 128) = 8192 × 1024 = block당 8.4M params (풀 MHA면 67M).
- V projection: 8192 × 1024 = block당 8.4M params (풀 MHA면 67M).
- Output projection: 8192 × 8192 = 67M.
block당 총 attention params: 151M (풀 MHA는 ~268M). block당 절감: ~117M. 80 block 가로질러: GQA로 ~9.4B 파라미터 절감. 하지만 더 큰 win은 추론에서 — 토큰당 KV cache가 8배 축소, 64 × 128 대신 KV head 8개 × 128 차원만 저장하니까.
실전에서 'GQA'가 의미하는 게 이거야 — block의 구조적 결정이 추론할 때마다 반복해서 보상.