๐ ์ฑ๋ฅ์ ๋จ์ด๋จ๋ฆฌ์ง ์์ผ๋ฉฐ ๋ชจ๋ธ์ ํจ์จ์ ์ผ๋ก ์ถ๋ก ํ๋ ๋ฐฉ์
1. ๋ฐฐ์น ์ ๋ต
- ์ฐ์๋ฐฐ์น
2. ์ดํ ์ ์ฐ์ฐ ํจ์จํ : ํ๋์์ดํ ์ , ํ์ด์ง์ดํ ์
- ํ๋์์ดํ ์ : GPU ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ฐ๋ ์์ (IO)์ ์ค์ฌ ์ดํ ์ ์ฐ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ์ค์ด๊ณ ์๋๋ฅผ ๋์
3. ์ถ๋ก ์ ๋ต : ์ปค๋ํจ์ , ์ถ์ธก์ธ์ฝ๋ฉ
1. ํจ์จ์ ์ธ ๋ฐฐ์น์ ๋ต
โ ๋ฅ๋ฌ๋ ๋ชจ๋ธ์์ ์ ๋ ฅ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ก ํ ๋, ๊ฐ๋ฅํ ํ ๋ฒ์ ๋ง์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ์ฒ๋ฆฌ๋์ ๋์ด๋ ๊ฒ์ด GPU๋ฅผ ํจ์จ์ ์ผ๋ก ํ์ฉํ๋ ๋ฐฉ๋ฒ → BUT ์ธ์ด๋ชจ๋ธ์ ํ ๋ฒ์ ํ๋์ฉ์ ํ ํฐ์ ์์ฑํ๋ฏ๋ก ๋ฐฐ์น ์ ๋ต์์ ๊ณ ๋ คํ ์ฌํญ์ด ๋ง์
1.1 ์ผ๋ฐ๋ฐฐ์น
โ ์ผ๋ฐ๋ฐฐ์น(์ ์ ๋ฐฐ์น)
โช๏ธ ์ ๋ ฅ ๋ฐ์ดํฐ๋ฅผ ๋ฐฐ์น์ฒ๋ฆฌํ ๋ ํ ๋ฒ์ N๊ฐ์ ์ ๋ ฅ์ ๋ฐ์ ๋ชจ๋ ์ถ๋ก ์ด ๋๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๋ ๋ฐฉ์

โช๏ธ ๊ฐ๋ น ๋ฐฐ์นํฌ๊ธฐ๊ฐ 4์ธ ์์ ๊ฒฝ์ฐ์์, ์ธ๋ฒ์งธ ์ ๋ ฅ์ฒ๋ผ ์์ฑ์ด ์ผ์ฐ ์ข ๋ฃ๋๋ ๋ฌธ์ฅ์ด ์๋ ๊ฒฝ์ฐ, ๋ค๋ฅธ ๋ฐ์ดํฐ์ ์ถ๋ก ์ด ๋๋ ๋๊น์ง ๋๊ธฐํด์ผ ํ๋ฉฐ, ๋จผ์ ์ข ๋ฃ๋๋ ๋ฌธ์ฅ๋ค์ด ๋ฐ์ํ๋ ๊ฒฝ์ฐ ๊ฒฐ๊ณผ์ ์ผ๋ก ๋ฐฐ์น ํฌ๊ธฐ๊ฐ ์์์ง๋ ํํ๊ฐ ๋์ด (e.g. ์ฒ์์๋ 4๊ฐ ๋ฌธ์ฅ์ ๋ํด ์ถ๋ก ์ ์ํํ์ผ๋, ๋จผ์ ์ข ๋ฃ๋๋ ๋ฌธ์ฅ๋ค ๋๋ฌธ์ ๋ง์ง๋ง์๋ 1๊ฐ ๋ฌธ์ฅ์ ๋ํด์๋ง ์ถ๋ก ์ ์ํํ๊ฒ๋จ) GPU๋ฅผ ๋นํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ฒ ๋๋ค.
1.2 ๋์ ๋ฐฐ์น
โ ๋์ ๋ฐฐ์น
โช๏ธ ๋น์ทํ ์๊ฐ๋์ ๋ค์ด์ค๋ ์์ฒญ์ ํ๋์ ๋ฐฐ์น๋ก ๋ฌถ์ด ๋ฐฐ์น ํฌ๊ธฐ๋ฅผ ํค์ฐ๋ ์ ๋ต

โช๏ธ No Dynamic : ์์ฒญ์ด ๋ค์ด์ฌ ๋๋ง๋ค ์ถ๋ก ์ ์ํํด, ์ง์ฐ์๊ฐ์ ์งง์ ์ ์๊ฒ ์ผ๋ GPU๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ์ง๋ ๋ชปํจ
โช๏ธ Dynamic : ์จ๋ผ์ธ ์๋น์์ ๋ฐฐ์นํฌ๊ธฐ๋ฅผ ํค์ ์ฒ๋ฆฌ๋์ ๋์ผ ์ ์๋ค. ๊ทธ๋ฌ๋ ์์ฑํ๋ ํ ํฐ๊ธธ์ด ์ฐจ์ด๋ก ์ธํด ์ฒ๋ฆฌํ๋ ๋ฐฐ์นํฌ๊ธฐ๊ฐ ์ ์ฐจ ์ค์ด GPU๋ฅผ ๋นํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๊ฒ ๋๋ ๋ฌธ์ ๋ ์ฌ์ ํ ๋จ์์๋ค.
1.3 ์ฐ์๋ฐฐ์น
โ ์ฐ์๋ฐฐ์น
โช๏ธ ํ๋์ ํ ํฐ ์์ฑ์ด ๋๋ ๋๋ง๋ค ์์ฑ์ด ์ข ๋ฃ๋ ๋ฌธ์ฅ์ ์ ๊ฑฐํ๊ณ ์๋ก์ด ๋ฌธ์ฅ์ ์ถ๊ฐํ๋ ๋ฐฉ์

โช๏ธ ์์ฑ์ด ์ข ๋ฃ๋ ์ฒซ๋ฒ์งธ, ์ธ๋ฒ์งธ, ๋ค๋ฒ์งธ ๋ฌธ์ฅ์์ ๋ฐ๋ก ๋ค์์ ๋ค์ฏ๋ฒ์งธ, ์ฌ์ฏ๋ฒ์งธ, ์ผ๊ณฑ๋ฒ์งธ (S5,S6,S7) ๋ฌธ์ฅ์ ์ถ๊ฐํ ๊ฒ์ ํ์ธํ ์ ์๋ค. ์ด๋ฌ๋ฉด ๋๊ธฐ์๊ฐ์ด ๊ธธ์ด์ง๋ ๋ฌธ์ + GPU๋นํจ์จ์ฌ์ฉ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค.
โช๏ธ ์๋ก์ด ๋ฐ์ดํฐ๋ฅผ ๋ฐฐ์น์ ์ถ๊ฐํ ๋, ์ฌ์ ์ฐ์ฐ๊ณผ ๋์ฝ๋ฉ ์ฒ๋ฆฌ ๋ฐฉ์์ด ๋ฌ๋ผ์, ์ฒ๋ฆฌ์ค์ธ ๋ฌธ์ฅ๊ณผ ๋๊ธฐ์ค์ธ ๋ฌธ์ฅ ๋น์จ์ ๋ณด๊ณ ํน์ ์กฐ๊ฑด์ ๋ฌ์ฑํ์ ๋ ์ถ๊ฐํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค (waiting_served_ratio)
2. ํจ์จ์ ์ธ ํธ๋์คํฌ๋จธ ์ฐ์ฐ
2.1 ํ๋์์ดํ ์
โ ์ ํ์ดํ ์
โช๏ธ ํธ๋์คํฌ๋จธ ์ฐ์ฐ์ ์ฟผ๋ฆฌ์ ํค ๋ฒกํฐ๋ฅผ ๊ณฑํ๋ ๊ณผ์ ์์ ๋ง์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉ

โช๏ธ Pytorch์ ์ฐ์ฐ ์๊ฐ์ ๊ฐ ๋จ๊ณ๋ง๋ค ๊ณ์ฐํด๋ณด๋ฉด, ๋ง์ ์ฐ์ฐ๋์ด ํ์ํ Matrix ๊ณฑ์ ์ฐ์ฐ์ ๋๋ ์๊ฐ๋ณด๋ค, ์ดํ์ Mask, Softmax, Dropout ์ฒ๋ฆฌ์๊ฐ์ด ๋ ๋ง์ด ์์๋๋๋ฐ, ์ด๋ ์ดํ ์ ํ๋ ฌ์ ๋ท๋จ๊ณ์์ ๊ณ์ ๋ฌผ๊ณ ์์ผ๋ฉฐ ๋ฐ์ํ๋ GPU์์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฝ๊ณ ์ฐ๋ ๋ฐ ์ค๋ ์๊ฐ์ด ๊ฑธ๋ฆฌ๊ธฐ ๋๋ฌธ์ด๋ค.

โช๏ธ GPU์ ๊ตฌ์กฐ
- SRAM : ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ๊ฐ ์์ง๋ง, ๋ฐ์ดํฐ๋ฅผ ๋น ๋ฅด๊ฒ ์ด๋์ํฌ ์ ์์
- HBM(๊ณ ๋์ญํญ๋ฉ๋ชจ๋ฆฌ) : ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ๋ ํฌ์ง๋ง ๋ฐ์ดํฐ ์ด๋์๋๊ฐ ๋๋ฆผ
- ์ดํ ์ ํ๋ ฌ์ ํฌ๊ธฐ๊ฐ ํฌ๋ฏ๋ก ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ๊ฐ ํฐ HBM์์ ์ด๋ฃจ์ด์ง (๋ฐ๋ผ์ ์ฐ์ฐ ์๊ฐ์ ์ค๋ ๊ฑธ๋ฆผ)
โ ํ๋์์ดํ ์
โช๏ธ ํธ๋์คํฌ๋จธ๊ฐ ๋ ๊ธด ์ํ์ค๋ฅผ ์ฒ๋ฆฌํ๋๋ก ๋ง๋ค๊ธฐ ์ํด ๊ฐ๋ฐ๋จ, Train ๊ณผ์ ์์ ํ์ํ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ํ์ค ๊ธธ์ด์ ๋น๋กํ๋๋ก ๊ฐ์ (์๋ ํธ๋์คํฌ๋จธ ์ํคํ ์ฒ์์๋ Train์๋ ๊ธธ์ด์ ์ ๊ณฑ์ ๋น๋กํ๊ณ Inference์์๋ ๊ธธ์ด์ ๋น๋กํจ)

โช๏ธ ํ๋์์ดํ ์ ์์๋ HBM์์ ํฐ ์ดํ ์ ํ๋ ฌ์ ์ฐ๊ณ ์ฝ์ผ๋ฉฐ ๊ฑธ๋ฆฌ๋ ์ฐ์ฐ์ ์ค์ด๊ธฐ ์ํด "๋ธ๋ก" ๋จ์๋ก ์ดํ ์ ์ฐ์ฐ์ ์ํํ๊ณ ์ ์ฒด ์ดํ ์ ํ๋ ฌ์ ์ฐ๊ฑฐ๋ ์ฝ์ง ์๋ ๋ฐฉ์์ผ๋ก ์ดํ ์ ์ฐ์ฐ์ ์๋๋ฅผ ๋์
โช๏ธ ๋ํ ์์ ๋ธ๋ก ๋จ์๋ก ์ฐ์ฐ์ ์ํํ๋ฏ๋ก SRAM์ ์ฌ๋ ค ๋ ๋น ๋ฅด๊ฒ ์ฐ์ฐ์ ์ํํ๋ค.
โช๏ธ ๋ค๋ง, NxNํฌ๊ธฐ์ ํ๋ ฌ์ด ์๋๋ผ Nxd์ ํ๋ ฌ์ ์ ์ฅํ๋ฉฐ ์ดํ ์ ์ฐ์ฐ์ ์งํํ๋๋ฐ ๋๋ฌธ์ ์ญ์ ํ ๊ณ์ฐ ๊ณผ์ ์์๋ NxN ํ๋ ฌ ๊ฐ์ด ํ์ํด, ์ญ์ ํ ๊ณผ์ ์์ ๋ค์ ์์ ํ๋ฅผ ๊ณ์ฐํ๋ ๋ฐฉ์์ผ๋ก ํด๊ฒฐํ๋ค.
โ ํ๋์์ดํ ์ 2
โช๏ธ ์๋๋ฅผ ํ๋จ๊ณ ๋ ๋์ธ ๋ฒ์ : ํ๋ ฌ ๊ณฑ์ ์ด ์๋ ์ฐ์ฐ์ ์ค์ด๊ธฐ, ์ํ์ค ๊ธธ์ด ๋ฐฉํฅ์ ๋ณ๋ ฌํ๋ฅผ ์ถ๊ฐ
2.2 ์๋์ ์์น์ธ์ฝ๋ฉ
โ ์ ๋์ ์์น์ธ์ฝ๋ฉ
โช๏ธ ์ ํ์ดํ ์ ์ฐ์ฐ์์๋ ์ ๋ ฅ ํ ํฐ์ ์์น์ ๊ด๊ณ์์ด ๋ชจ๋ ๋๋ฑํ๊ฒ ์ฒ๋ฆฌํ๊ธฐ ๋๋ฌธ์, ์์น์ ๋ณด๋ฅผ ๋ณ๋๋ก ์ถ๊ฐํด์ผ ํ๋ค. ์ต์ด์ ํธ๋์คํฌ๋จธ ์ํคํ ์ฒ์์๋ ํ ํฐ์ ์์น์ ๋ฐ๋ผ ์ฌ์ธ๊ณผ ์ฝ์ฌ์ธ ์์์ผ๋ก ์ ํด์ง ๊ฐ์ ๋ํด์คฌ๋ค.
โช๏ธ ๊ทธ๋ฌ๋ ์ด๋ฌํ ๋ฐฉ์์ ํ์ต ๋ฐ์ดํฐ๋ณด๋ค ๋ ๊ธด ์ ๋ ฅ์ด ๋ค์ด์ค๋ฉด ์ธ์ด๋ชจ๋ธ์ ์์ฑ ํ์ง์ด ๋น ๋ฅด๊ฒ ๋จ์ด์ง๋ค๋ ํ๊ณ ์กด์ฌ
โ ์๋์ ์์น์ธ์ฝ๋ฉ
โช๏ธ ํ ํฐ์ ์๋์ ์ธ ์์น ์ ๋ณด๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ์, ํ์ต ๋ฐ์ดํฐ๋ณด๋ค ๋ ๊ธด ์ ๋ ฅ์ด ๋ค์ด์์ ๋์ ์ฑ๋ฅ ์ ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐ
โช๏ธ 1) RoPE : ๊ฐ ํ ํฐ ์๋ฒ ๋ฉ์ ํ ํฐ ์์น์ ๋ฐ๋ผ ํ์ ํ๋ ๋ฐฉ์์ผ๋ก, ํ ํฐ ์ฌ์ด์ ์์น์ ๋ณด๊ฐ ๋ ์๋ฒ ๋ฉ ์ฌ์ด์ ๊ฐ๋๋ฅผ ํตํด ๋ชจ๋ธ์ ๋ฐ์๋๋ค.


โช๏ธ 2) ALiBi : ์ฟผ๋ฆฌ์ ํค ๋ฒกํฐ๋ฅผ ๊ณฑํ ์ดํ ์ ํ๋ ฌ์ ์ค๋ฅธ์ชฝ์์ ์ผ์ชฝ์ผ๋ก ๊ฐ์๋ก ์์ ๊ฐ์ ๋ํ๋ ๋ฐฉ์์ผ๋ก, ํ์ฌ ์ฟผ๋ฆฌ ์์น๋ฅผ ์๋ฏธํ๋ 0์ ๊ธฐ์ค์ผ๋ก ์์ชฝ์ ์์์๋ก ๋ ์์ ๊ฐ์ ๋ํด ์๋์ ์์น๋ฅผ ๋ฐ์

โช๏ธ RoPE๋ ํ์ ํ๋ ์ฒ๋ฆฌ๊ฐ ์ถ๊ฐ๋์ด, ALiBi๋ณด๋ค ํ์ต ๋ฐ ์ถ๋ก ์๋๊ฐ ๋๋ฆฌ๋ค. ์๋์ ์์น์ธ์ฝ๋ฉ ๋ฐฉ์์ ์ ๋์ ์์น์ธ์ฝ๋ฉ ๋ฐฉ์๋ณด๋ค, ๋ ๊ธด ์ ๋ ฅ ๋ฐ์ดํฐ์ ๋ํด ์ฑ๋ฅ์ ๊ฑฐ์ ์ ์งํ๋ค.
3. ํจ์จ์ ์ธ ์ถ๋ก ์ ๋ต
3.1 ์ปค๋ํจ์
โ ์ปค๋ํจ์
โช๏ธ GPU์์ ๋ฐ๋ณต์ ์ผ๋ก ์ํํ๋ ์ฐ์ฐ์ ํ๋๋ก ๋ฌถ์ด ๋ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ ๋ฐฉ์
โช๏ธ GPU์์ ์ฐ์ฐ์ '์ปค๋' ๋จ์๋ก ์ด๋ฃจ์ด์ง๊ฒ ๋๋๋ฐ, ์ฐ์ฐ์ ์ํํ๊ธฐ ์ ํ๋ก ์ค๋ฒํค๋(e.g. HBM์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ค๊ฑฐ๋ ๊ฒฐ๊ณผ๋ฅผ ์ฐ๋ ์์ ๋ฑ)๊ฐ ๋ฐ์ํ๋ค. ์ปค๋์ด ์ฌ๋ฌ๊ฐ๊ฐ ์ํ๋๋ฉด ์๋ค๋ก ์ค๋ฒํค๋๊ฐ ๊ทธ๋งํผ ๋ฐ์ํด์ ์ํ ์๊ฐ์ด ๊ธธ์ด์ง๋๋ฐ, ๋ฐ๋ผ์ ๋ฐ๋ณต์ ์ผ๋ก ์ํ๋๋ ์ฐ์ฐ์ ๋ํด์๋ ์ฐ์ฐ์ ํ๋๋ก ๋ฌถ์ด ์ค๋ฒํค๋๋ฅผ ์ค์ด๋ ์ปค๋ํจ์ ๋ฐฉ์์ด ๋ฑ์ฅํ๋ค.


3.2 ํ์ด์ง์ดํ ์
โ KV์บ์์ฐ์ฐ
โช๏ธ [๋ณต์ต] KV์บ์ : ์ดํ ์ ์ฐ์ฐ ๊ณผ์ ์์ ํค์ ๊ฐ ๋ฒกํฐ๋ฅผ ์ค๋ณตํด ๊ณ์ฐํ๋ฏ๋ก, ์ด ๋ ๋ฒกํฐ ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ๋ค๊ฐ ๋ถ๋ฌ์ค๋ ๋ฐฉ์

โช๏ธ ์บ์์ฐ์ฐ์ ์ค๋ณต ์ฐ์ฐ์ ์ค์ฌ์ ์ ์ฒด์ ์ธ ์ฐ์ฐ ์๊ฐ์ ์ค์ด๋๋ฐ๋ ๋์์ด ๋์ง๋ง, ๋ง์ GPU๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ค. ๊ฐ๋ น ์์์ ๋ ธ๋์์์ญ์ด ์์ฒญA๋ผ๊ณ ํ ๋, KV์บ์๋ ๋ช ๊ฐ์ ํ ํฐ์ ์์ฑํ ์ง ์์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ <resv>์ฒ๋ผ ์ต๋ ์์ฑ ํ ํฐ ์ (2048๊ฐ) ๋งํผ ๋ฏธ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์์ฝํด๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฏธ ์์ฑํ ํ ํฐ + ์์ผ๋ก ์์ฑํ ํ ํฐ์ ์ ์ธํ 2038๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ ๊ฒฐ๊ตญ ์ฌ์ฉ๋์ง ์๊ณ ์๋ฆฌ๋ง ์ฐจ์งํ๋ ๋นํจ์จ์ด ๋ฐ์ํ๊ฒ ๋๋ค.
โช๏ธ ์ฆ, ์ฐ์์ ์ธ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ๋ฏธ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ค๋นํ๋ ๋ฐ์์ ๋ฉ๋ชจ๋ฆฌ ๋ญ๋น๊ฐ ๋ฐ์ํ๋ ๊ฒ์ด๋ค.
โ ํ์ด์ง์ดํ ์
โช๏ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ํจ์จ์ ์ผ๋ก ๊ด๋ฆฌํ๊ธฐ ์ํด '๊ฐ์๋ฉ๋ชจ๋ฆฌ' ๊ฐ์ ๊ฐ๋ ์ด ๊ฐ๋ฐ๋์๋๋ฐ, ์ด๋ ํ๋ก๊ทธ๋จ์ด ์ค์ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ํตํด ๋ฉ๋ชจ๋ฆฌ์ ์ ๊ทผํ์ง ์๊ณ , ์ด์์ฒด์ ๊ฐ ๊ด๋ฆฌํ๋ ๋ ผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ์์ด๋ค.
โช๏ธ ํ์ด์ง์ดํ ์ ์์๋ ๊ฐ์๋ฉ๋ชจ๋ฆฌ ๊ฐ๋ ์ ๋น๋ ค์, ๋ ผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ฌผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฐ๊ฒฐํ๋ ๋ธ๋กํ ์ด๋ธ์ ๊ด๋ฆฌํด, ๋ฌผ๋ฆฌ์ ์ผ๋ก ์ฐ์๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด์๋ ๋ ผ๋ฆฌ์ ๋ฉ๋ชจ๋ฆฌ์์๋ ์๋ก ์ฐ์์ ์ผ๋ก ๋์ํ๋๋ก ๋ง๋๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ค.

3.3 ์ถ์ธก์ธ์ฝ๋ฉ
โ ์ถ์ธก์ธ์ฝ๋ฉ
โช๏ธ ์ฌ์ด ๋จ์ด๋ ๋ ์๊ณ ํจ์จ์ ์ธ ๋ชจ๋ธ์ด ์์ธกํ๊ณ , ์ด๋ ค์ด ๋จ์ด๋ ๋ ํฌ๊ณ ์ฑ๋ฅ์ด ์ข์ ๋ชจ๋ธ์ด ์์ธกํ๋๋ก ํ๋ ๋ฐฉ์

โช๏ธ ์ด๋ค ๋จ์ด๊ฐ ์์ธกํ๊ธฐ ์ฝ๊ณ ์ด๋ค ๋จ์ด๊ฐ ์์ธกํ๊ธฐ ์ด๋ ค์ธ์ง๋ ์ด๋ป๊ฒ ํ๋จํ๋๊ฐ โฑ ๋๋ํํธ๋ชจ๋ธ๊ณผ ํ๊น๋ชจ๋ธ์ด๋ผ๋ 2๊ฐ์ ๋ชจ๋ธ์ ํ์ฉํด ์ถ๋ก ์ ์ํ
โช๏ธ ์์ Draft model์ด K๊ฐ์ ํ ํฐ์ ๋น ๋ฅด๊ฒ ๋จผ์ ์์ฑํ๋ฉด, Target model์ด, Draft model์ด ์์ฑํ ํ ํฐ์ด Target model์ด ์ถ๋ก ํ๋ค๋ฉด ์์ฑํ์ ๊ฒฐ๊ณผ์ ๋์ผํ์ง ๊ณ์ฐํด, ๋์ผํ๋ค๋ฉด ์น์ธ ์๋๋ฉด ๊ฑฐ์ ํ๋ ๋ฐฉ์์ ํ์ฉํ๋ค.
โช๏ธ ์ถ์ธก์ธ์ฝ๋ฉ์ ์๋ณธ๋ชจ๋ธ์ ๋นํด ํจ์ฌ ์์ ๋๋ํํธ ๋ชจ๋ธ์ ์ถ๊ฐ๋ง์ผ๋ก ์๋ณธ ๋ชจ๋ธ์ ์ฑ๋ฅ์ ๊ทธ๋๋ก ์ ์งํ๋ฉฐ, ์๋๋ฅผ 2๋ฐฐ์ด์ ๋์ผ ์ ์๋ค๋ ์ ๋๋ฌธ์ ๋ค์ํ ์๋น ํ๋ ์์ํฌ์์ ์ฑํํจ
4. LLM์ Inference
โ vLLM
โช๏ธ LLM์ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์๋นํ๊ธฐ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ํ๊น ํ์ด์ค ์ ๋ช ๋ชจ๋ธ์ ์ค์ฌ์ผ๋ก ์ง์
โ ์คํ๋ผ์ธ์๋น
โช๏ธ ๋์ฉ๋์ ์ ๋ ฅ ๋ฐ์ดํฐ์ ๋ํด ์ถ๋ก ์ ์ํํ์ฌ ์ถฉ๋ถํ ํฐ ๋ฐฐ์นํฌ๊ธฐ๋ฅผ ํ์ฉํ ์ ์๋ ์ถ๋ก
import torch
from vllm import LLM, SamplingParams
model_id = "shangrilar/yi-ko-6b-text2sql"
llm = LLM(model=model_id, dtype=torch.float16, max_model_len=1024)
โ ์จ๋ผ์ธ์๋น
โช๏ธ ์ฌ์ฉ์์ ์์ฒญ์ ๋ฐ๋ผ ๋ชจ๋ธ์ ์ถ๋ก ํ๋ ๋ฐฉ์
# ์จ๋ผ์ธ ์๋น์ ์ํ vLLM API ์๋ฒ ์คํ
!python -m vllm.entrypoints.openai.api_server \
--model shangrilar/yi-ko-6b-text2sql --host 127.0.0.1 --port 8888 --max-model-len 1024
# OpenAI ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ API ์์ฒญ
from openai import OpenAI
openai_api_key = "EMPTY" # ๋ก์ปฌ์์ ์คํ ์ค์ธ vLLM ์๋ฒ์ ์์ฒญ์ ๋ณด๋ด๊ธฐ ๋๋ฌธ์ EMPTY
openai_api_base = "http://localhost:8888/v1"
client = OpenAI(
api_key=openai_api_key,
base_url=openai_api_base,
)
completion = client.completions.create(model="shangrilar/yi-ko-6b-text2sql",
prompt=dataset.loc[0, 'prompt'], max_tokens=128)
print("์์ฑ ๊ฒฐ๊ณผ:", completion.choices[0].text)'1๏ธโฃ AIโขDS > ๐ LLM' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [์ฑ ์คํฐ๋] 10-(1). ์๋ฒ ๋ฉ ๋ชจ๋ธ๋ก ๋ฐ์ดํฐ ์๋ฏธ ์์ถํ๊ธฐ (0) | 2025.09.18 |
|---|---|
| [์ฑ ์คํฐ๋] 9. LLM ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐํ๊ธฐ (1) | 2025.09.08 |
| [์ฑ ์คํฐ๋] 7. ๋ชจ๋ธ ๊ฐ๋ณ๊ฒ ๋ง๋ค๊ธฐ (3) | 2025.08.23 |
| [์ฑ ์คํฐ๋] 6. sLLM ํ์ตํ๊ธฐ (4) | 2025.08.07 |
| [์ฑ ์คํฐ๋] 5-2. GPU ํจ์จ์ ์ธ ํ์ต (4) | 2025.08.02 |
๋๊ธ