38 lines
2.9 KiB
Markdown
38 lines
2.9 KiB
Markdown
---
|
|
id: [[P-Reinforce|P-Reinforce]]-AUTO-GQAM-001
|
|
category: Unified
|
|
confidence_score: 1.00
|
|
tags: [auto-reinforced, grouped-query-attention, gqa, transformer, mha, mqa, llm-efficiency]
|
|
last_reinforced: 2026-05-04
|
|
---
|
|
|
|
# [[Grouped-Query Attention (GQA)|Grouped-Query Attention (GQA)]]
|
|
|
|
## 📌 한 줄 통찰 (The Karpathy Summary)
|
|
> "효율과 성능의 황금비율: 모든 헤드가 각자의 Key-Value를 갖는 MHA의 무거운 비용과, 하나의 KV만 공유하는 MQA의 성능 저하 사이에서 '그룹화된 KV 공유'라는 영리한 절충안을 통해 추론 속도와 품질을 동시에 잡은 현대 LLM의 표준."
|
|
|
|
## 📖 구조화된 지식 (Synthesized Content)
|
|
Grouped-Query Attention(GQA)은 트랜스포머 아키텍처에서 KV 캐시(Key-Value Cache)의 메모리 사용량을 줄여 추론 효율성을 극대화하면서도, 모델의 표현력을 보존하기 위해 설계된 어텐션 변형 기법입니다.
|
|
|
|
1. **등장 배경**:
|
|
* **MHA (Multi-Head Attention)**: 모든 Query 헤드가 각자의 Key/Value 헤드를 가짐 $\rightarrow$ 뛰어난 성능, 그러나 KV 캐시가 너무 커짐.
|
|
* **MQA (Multi-Query Attention)**: 모든 Query 헤드가 단 하나의 Key/Value 헤드를 공유 $\rightarrow$ 매우 빠르지만 성능(품질) 저하 발생.
|
|
2. **핵심 메커니즘**:
|
|
* **그룹화 (Grouping)**: 여러 개의 Query 헤드를 하나의 그룹으로 묶고, 각 그룹마다 하나의 Key/Value 헤드를 할당합니다.
|
|
* **절충 (Trade-off)**: MHA보다는 메모리 사용량이 적고, MQA보다는 정보 보존 능력이 뛰어난 '중간 지점'을 선택합니다.
|
|
3. **의의**:
|
|
* Llama 2/3, Mistral 등 최신 오픈소스 SOTA 모델들이 채택하고 있는 표준 기술입니다.
|
|
* 특히 긴 문맥(Long-context) 처리 시 KV 캐시가 차지하는 VRAM 비중을 획기적으로 낮춰주어, 동일 하드웨어에서 더 큰 배치 사이즈나 더 긴 문장을 처리할 수 있게 합니다.
|
|
|
|
## ⚖️ Trade-offs & Caveats
|
|
* **성능/효율 비례**: 그룹 수($G$)를 늘릴수록 MHA에 가까워지며 성능은 좋아지지만 KV 캐시가 커지고, 줄일수록 MQA에 가까워지며 효율은 좋아지지만 품질이 떨어집니다.
|
|
* **모델 아키텍처 고정**: 학습 시에 그룹 구조를 결정해야 하므로, 기존 MHA 모델을 추론 시에만 GQA로 전환하는 것은 불가능하며 추가적인 업사이클링(Upcycling) 학습이 필요합니다.
|
|
|
|
## 🔗 지식 연결 (Graph)
|
|
* **상위 개념**: [[Attention Mechanisms|Attention Mechanisms]], [[LLM Inference Optimization|LLM Inference Optimization]]
|
|
* **대조 기술**: [[Multi-Head Attention (MHA)|Multi-Head Attention (MHA)]], [[Multi-Query Attention (MQA)|Multi-Query Attention (MQA)]]
|
|
* **연관 기술**: [[KV Cache|KV Cache]], [[PagedAttention|PagedAttention]], [[Flash Attention|Flash Attention]]
|
|
|
|
---
|
|
*Last updated: 2026-05-04*
|