
ํ ์ค ์์ฝ:
๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ(LLM)์ ๊ฐ์ค์น๋ฅผ 4๋นํธ๋ก ์์ํํ ๋, ํ์ฑํ(activation) ๋ถํฌ์ ๊ธฐ๋ฐํ์ฌ ์ค์ํ ๊ฐ์ค์น ์ฑ๋์ ๋ณดํธํจ์ผ๋ก์จ ์ ํ๋ ์์ค ์์ด 3๋ฐฐ ์ด์์ ์ถ๋ก ์๋ ํฅ์์ ๋ฌ์ฑํ ์ฐ๊ตฌ.
๋๊ท๋ชจ ์ธ์ด ๋ชจ๋ธ(LLM)์ ์ฑ๋ด, ๊ฐ์ ๋น์, ์์จ์ฃผํ์ฐจ ๋ฑ ๋ค์ํ ๋ถ์ผ์์ ํ์ ์ ๊ฐ์ ธ์์ง๋ง, ์ฒ๋ฌธํ์ ์ธ ๋ชจ๋ธ ํฌ๊ธฐ๊ฐ ์จ๋๋ฐ์ด์ค ๋ฐฐํฌ์ ์ต๋ ๊ฑธ๋ฆผ๋์ด์์ต๋๋ค. ์๋ฅผ ๋ค์ด:
ํนํ Post-Training Quantization(PTQ) ๋ฐฉ์์ ๊ธฐ์กด ์ฐ๊ตฌ๋ค์ ๋ค์ ๋ฌธ์ ๋ฅผ ๊ฒช์์ต๋๋ค:
์ ์๋ค์ ๋ค์๊ณผ ๊ฐ์ ํต์ฌ ํต์ฐฐ(insight)์์ ์ถ๋ฐํ์ต๋๋ค:
"LLM์ ๋ชจ๋ ๊ฐ์ค์น๊ฐ ๋๋ฑํ๊ฒ ์ค์ํ์ง ์๋ค. ์์(0.1~1%)์ ํต์ฌ(salient) ๊ฐ์ค์น๋ง ๋ณดํธํด๋ ์์ํ ์ค๋ฅ๋ฅผ ํฌ๊ฒ ์ค์ผ ์ ์๋ค."
๊ทธ๋ฌ๋ ์ค์ํ ๊ฐ์ค์น๋ฅผ ํผํฉ ์ ๋ฐ๋(mixed-precision)๋ก ์ ์งํ๋ฉด ํ๋์จ์ด ๊ตฌํ์ด ๋นํจ์จ์
AWQ์ ํต์ฌ์ "๊ฐ์ค์น์ ์ค์๋๋ ๊ฐ์ค์น ์์ฒด์ ํฌ๊ธฐ๊ฐ ์๋, ํด๋น ์ฑ๋์ ํต๊ณผํ๋ ํ์ฑํ์ ํฌ๊ธฐ์ ์ํด ๊ฒฐ์ ๋๋ค"๋ ์๋ฆฌ
๋ ผ๋ฌธ์ Table 1 ์คํ ๊ฒฐ๊ณผ๋ฅผ ๋ณด๋ฉด:
| ๋ชจ๋ธ | RTN (w3-g128) | ํ์ฑํ ๊ธฐ๋ฐ 1% FP16 | ๊ฐ์ค์น ๊ธฐ๋ฐ 1% FP16 | ๋๋ค 1% FP16 |
|---|---|---|---|---|
| OPT-6.7B | 23.54 PPL | 11.39 PPL | 22.37 PPL | 23.54 PPL |
ํด์: ํ์ฑํ ๊ฐ์ด ํฐ ์ฑ๋์ ๋ ์ค์ํ ํน์ง(feature)์ ์ฒ๋ฆฌํ๋ฏ๋ก, ํด๋น ๊ฐ์ค์น๋ฅผ ์ ๋ฐํ๊ฒ ์ ์ง
ํผํฉ ์ ๋ฐ๋๋ ํ๋์จ์ด ๊ตฌํ์ด ๋ณต์กํ๋ฏ๋ก, AWQ๋ ์ํ์ ์ผ๋ก ๋๋ฑํ ๋ณํ(equivalent transformation)์ ํ์ฉ
์์ํ ํจ์:
Q(w) = ฮ ยท Round(w/ฮ), ์ฌ๊ธฐ์ ฮ = max(|w|) / (2^(N-1))
(N: ์์ํ ๋นํธ ์, ฮ: ์ค์ผ์ผ๋ฌ)
ํน์ ๊ฐ์ค์น w๋ฅผ s๋ฐฐ(s>1) ์ค์ผ์ผ์ ํ๊ณ , ์ ๋ ฅ ํ์ฑํ x๋ฅผ 1/s๋ก ์ค์ผ์ผ๋ค์ดํ๋ฉด:
Q(wยทs) ยท (x/s) = ฮ' ยท Round(ws/ฮ') ยท x ยท (1/s)
ํต์ฌ ๋ฐ๊ฒฌ (Table 2 ์คํ):
| s ๊ฐ | ฮ ๋ณํ ๋น์จ | ํ๊ท ์ค๋ฅ ๊ฐ์์จ | Wiki-2 PPL |
|---|---|---|---|
| 1.0 | 0% | 1.0 | 23.54 |
| 2.0 | 8.2% | 0.519 | 11.92 |
| 4.0 | 21.2% | 0.303 | 12.36 |
์ง๊ด์ ์ดํด:
์ค์ํ ๊ฐ์ค์น๋ฅผ ํฌ๊ฒ ๋ง๋ค๋ฉด(s๋ฐฐ), ์์ํ ์คํ
(ฮ)์ ๊ฑฐ์ ๋ณํ์ง ์์ง๋ง, ๋ฐ์ฌ๋ฆผ ์ค์ฐจ๋ ์๋์ ์ผ๋ก ์์์ง๋๋ค. ๋ง์น ์์ ๋ฌผ์ฒด๋ฅผ ํ๋ํ ํ ๋์งํธํํ๋ฉด ๋ํ
์ผ์ด ๋ ์ ๋ณด์กด๋๋ ์๋ฆฌ์ ์ ์ฌ
1. ๋ณด์ ๋ฐ์ดํฐ์
(calibration set)์์ ๊ฐ ์ฑ๋๋ณ ํ์ฑํ ํ๊ท ํฌ๊ธฐ(sโ) ์ธก์
2. ์ต์ ์ค์ผ์ผ s = sโ^ฮฑ ํํ๋ก ํ์ ๊ณต๊ฐ ์ค์
3. ฮฑ โ [0, 1] ๋ฒ์์์ ๊ทธ๋ฆฌ๋ ์์น(20๋จ๊ณ)๋ก ์ต์ ฮฑ ์ฐพ๊ธฐ
- ๋ชฉํ: ||Q(Wยทdiag(s))ยท(diag(s)โปยนยทX) - WX|| ์ต์ํ
4. ์ฐพ์์ง ์ค์ผ์ผ๋ก ๊ฐ์ค์น ๋ณํ ํ ์์ํ
5. ์ถ๋ก ์ sโปยนยทX๋ ์ด์ ๋ ์ด์ด ์ฐ์ฐ์ ์ตํฉ(fuse) ๊ฐ๋ฅ
์ฅ์ :
๋ ผ๋ฌธ์ ํต์ฌ ๊ฒฐ๊ณผ ํ ์ด๋ธ:
| ๋ชจ๋ธ ํฌ๊ธฐ | FP16 | RTN (INT3) | GPTQ | GPTQ-R | AWQ |
|---|---|---|---|---|---|
| Llama-2 7B | 5.47 | 6.66 | 6.43 | 6.42 | 6.24 |
| Llama-2 70B | 3.32 | 3.98 | 3.88 | 3.86 | 3.74 |
| LLaMA 7B | 5.68 | 7.01 | 8.81 | 6.53 | 6.35 |
์๊ฐ์ ๋ด์ฉ (WikiText-2 Perplexity, ๋ฎ์์๋ก ์ข์):
ํด์:
1. INT3 ์์ํ์์ AWQ๋ RTN ๋๋น 7B ๋ชจ๋ธ์์ 6.66โ6.24 (6.3% ๊ฐ์ ), GPTQ๋ณด๋ค๋ ์ฐ์
2. ํนํ LLaMA 7B์์ GPTQ๋ 8.81๋ก ์คํจํ์ผ๋, AWQ๋ 6.35๋ก ์์ ์
3. 70B ์ด๋ํ ๋ชจ๋ธ์์๋ FP16 3.32 ๋๋น AWQ๋ 3.74๋ก ์์ค ์ต์ํ

์๊ฐ์ ๋ด์ฉ:
| ๋ชจ๋ธ | RTN Win | GPTQ Win | AWQ Win |
|---|---|---|---|
| Vicuna-7B | 52 | 71 | 75 |
| Vicuna-13B | 47 | 57 | 57 (๋๋ฅ ์ต๊ณ ) |
ํด์:
AWQ๋ instruction-tuned ๋ชจ๋ธ์์๋ ๊ฐ์ฅ ๋ง์ ์น๋ฆฌ ์ผ์ด์ค๋ฅผ ๊ธฐ๋กํ์ฌ, ์ผ๋ฐํ ๋ฅ๋ ฅ์ด ๋ฐ์ด๋จ์ ์
์ฆ

| Few-shot | FP16 | RTN (INT4) | GPTQ | AWQ |
|---|---|---|---|---|
| 32-shot | 81.70 CIDEr | 77.13 (-4.57) | 74.98 (-6.72) | 80.53 (-1.17) |
| 0-shot | 63.73 | 60.24 | 59.72 | 62.57 |
์๊ฐ์ ๋ด์ฉ:
๊ทธ๋ํ์์ AWQ(์ฃผํฉ์ )๋ ๋ชจ๋ few-shot ์ค์ (0/4/8/16/32-shot)์์ RTN, GPTQ๋ณด๋ค FP16์ ๊ทผ์
ํด์:

์ผ์ชฝ ๊ทธ๋ํ: Context vs Generation ์๊ฐ
์ค๊ฐ ๊ทธ๋ํ: Roofline ๋ถ์
์ค๋ฅธ์ชฝ ๊ทธ๋ํ: ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ ๋น์ค
ํด์:
์จ๋๋ฐ์ด์ค LLM์ ๋ฉ๋ชจ๋ฆฌ ๋์ญํญ(memory bandwidth)์ ์ํด ์ฑ๋ฅ์ด ์ ํ๋ฉ๋๋ค. AWQ๋ ๊ฐ์ค์น๋ฅผ 4๋นํธ๋ก ์์ถํ์ฌ ์ด๋ก ์ 4๋ฐฐ ๋ฉ๋ชจ๋ฆฌ ์ ๊ฐ โ ์ค์ 3๋ฐฐ ์ด์ ์๋ ํฅ์ ๊ฐ๋ฅ.


RTX 4090 Desktop GPU:
| ๋ชจ๋ธ | Huggingface FP16 | TinyChat FP16 | TinyChat AWQ (W4A16) |
|---|---|---|---|
| Llama-2-7B | 52 tok/s | 62 tok/s | 194 tok/s |
| Llama-2-13B | 49 tok/s | - | 158 tok/s |
| Falcon-7B | 124 tok/s | - | 194 tok/s |
Jetson Orin Mobile GPU:
| ๋ชจ๋ธ | Huggingface FP16 | TinyChat AWQ |
|---|---|---|
| Llama-2-7B | 22 tok/s | 38 tok/s |
| Llama-2-13B | OOM | 21 tok/s |
ํด์:
1. Desktop GPU: AWQ+TinyChat์ Huggingface FP16 ๋๋น 3.1~3.9๋ฐฐ ์๋ ํฅ์
2. Mobile GPU: 13B ๋ชจ๋ธ์ด FP16์์๋ ๋ฉ๋ชจ๋ฆฌ ์ด๊ณผ(OOM)์ง๋ง, AWQ๋ก 21 tok/s ๋ฌ์ฑ
3. 8GB ๋ฉ๋ชจ๋ฆฌ ๋
ธํธ๋ถ(RTX 4070)์์๋ Llama-2-13B๋ฅผ 33 tok/s๋ก ๊ตฌ๋ ๊ฐ๋ฅ
์๊ฐ์ ๋ด์ฉ (Figure 9 ๋ง๋ ๊ทธ๋ํ):
ํ์ฑํ ์ธ์ง ์์ํ ์๋ฆฌ ์ ๋ฆฝ
๊ฐ์ค์น ์ค์๋๋ฅผ ํ์ฑํ ๋ถํฌ๋ก ํ๋จํ๋ ์๋ก์ด ํจ๋ฌ๋ค์ ์ ์. ์ด๋ GPTQ์ ์ฌ๊ตฌ์ฑ ๊ธฐ๋ฐ ์ ๊ทผ๋ณด๋ค ์ผ๋ฐํ ์ฑ๋ฅ์ด ๋ฐ์ด๋จ์ ์คํ์ ์ผ๋ก ์
์ฆ
ํ๋์จ์ด ์นํ์ ์ค๊ณ
ํผํฉ ์ ๋ฐ๋ ์์ด ๋จ์ผ ๋นํธ ์์ํ + ์ฑ๋ ์ค์ผ์ผ๋ง์ผ๋ก ๋๋ฑํ ํจ๊ณผ ๋ฌ์ฑ. ์ด๋ CUDA ์ปค๋ ๊ตฌํ์ ๋จ์ํํ์ฌ ์ค์ ๋ฐฐํฌ ๊ฐ๋ฅ์ฑ์ ๋์
๋ฒ์ฉ์ฑ ํ์ฅ
์ ์๊ฐ ๋ฐํ ํ๊ณ:
๋ ผ๋ฌธ ๋งํฌ:
AWQ๋ "LLM ์์ํ์ JPEG ์์ถ"์ด๋ผ ํ ๋งํฉ๋๋ค. JPEG์ด ์ด๋ฏธ์ง์์ ์ธ๊ฐ ๋์ ๋ ์ค์ํ ๊ณ ์ฃผํ ์ฑ๋ถ์ ์ ๊ฑฐํ๋ฏ, AWQ๋ ํ์ฑํ ๋ถํฌ๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ ์ค์ํ ๊ฐ์ค์น์ ์ ๋ฐ๋๋ฅผ ๋ฎ์ถฅ๋๋ค.
ํนํ ์ธ์ ๊น์๋ ์ ์ ์ด๋ก (์์ ์ ๋)๊ณผ ์ค๋ฌด(TinyChat ์์คํ )๋ฅผ ์๋ฒฝํ ์ฐ๊ฒฐํ ์ฐ๊ตฌ ์ค๊ณ์ ๋๋ค. ๋ง์ ๋ ผ๋ฌธ์ด "์ด๋ก ์ ๊ฐ๋ฅ"์ ๊ทธ์น๋ ๋ฐ๋ฉด, AWQ๋ ์ค์ GPU์์ 3๋ฐฐ ์๋ ํฅ์์ ์ค์ธกํ์ฌ ์ฆ์ ๋์ ๊ฐ๋ฅํ ์๋ฃจ์ ์์ ์ฆ๋ช ํ์ต๋๋ค.
2024๋ ๊ธฐ์ค, ์จ๋๋ฐ์ด์ค AI๊ฐ ๋์ธ๋ก ๋ ์ค๋ฅด๋ ์์ ์์ ์ด ์ฐ๊ตฌ๋ ๋ชจ๋ฐ์ผ LLM ํ๋ช ์ ํต์ฌ ๊ธฐ์ ๋ก ์๋ฆฌ๋งค๊นํ ๊ฒ์ผ๋ก ๋ณด์ ๋๋ค. ๐