LoRA ๊ธฐ๋ฐ Gemma 4 ํ์ธํ๋์ผ๋ก $5 ๋ฏธ๋ง ์ ๋น์ฉ ๋๋ฉ์ธ ์ ๋ฌธ๊ฐ ๋ชจ๋ธ ๊ตฌํ
๐ฅ Fine-Tuning Gemma 4 on Your Own Dataset: A Step-by-Step Guide
AI ์์ฝ
Context
๋ฒ์ฉ LLM์ ์ผ๋ฐ์ ์ธ ๋ต๋ณ ํ๊ณ๋ฅผ ๊ทน๋ณตํ๊ณ ํน์ ๋๋ฉ์ธ์ ํนํ๋ ํ๋ ์์ ๋ฐ ํค์ค๋งค๋๋ฅผ ํ์ต์ํค๊ธฐ ์ํ ์ต์ ํ ํ์์ฑ ์ ๊ธฐ. ๊ณ ๊ฐ์ ์ ์ฉ GPU ํ๋์จ์ด ์ธํ๋ผ ๊ตฌ์ถ ๋ฐ Kubernetes ์ด์ ๋ถ๋ด์ผ๋ก ์ธํ ์ง์ ์ฅ๋ฒฝ ์กด์ฌ.
Technical Solution
- Gemma 4 9B ๋ชจ๋ธ์ LoRA(Low-Rank Adaptation)๋ฅผ ์ ์ฉํ์ฌ ์ ์ฒด ํ๋ผ๋ฏธํฐ์ ์ฝ 1%๋ง ํ์ตํจ์ผ๋ก์จ ์ฐ์ฐ ์์ ๋ฐ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋ 95% ์ ๊ฐ
- Cloud Run Jobs ๊ธฐ๋ฐ์ Serverless GPU ํ๊ฒฝ์ ์ฑํํ์ฌ ์ธํ๋ผ ๊ด๋ฆฌ ๋ถ๋ด์ ์ ๊ฑฐํ๊ณ ์ฌ์ฉํ ์๊ฐ๋งํผ๋ง ์ง๋ถํ๋ ๋น์ฉ ๊ตฌ์กฐ ์ค๊ณ
- NVIDIA RTX 6000 Pro(48GB VRAM)๋ฅผ ํ์ฉํ์ฌ ๋๊ท๋ชจ ๋ชจ๋ธ์ ๊ฐ์ค์น ์ ๋ฐ์ดํธ๋ฅผ ์ํ ๋ฉ๋ชจ๋ฆฌ ๋ณ๋ชฉ ํ์ ํด๊ฒฐ
- 100~500๊ฐ ์์ค์ ๊ณ ํ์ง JSONL ๋ฐ์ดํฐ์ ๊ตฌ์ฑ์ ํตํ ํจ์จ์ ์ธ Behavior Tuning ์ ๋ต ์๋ฆฝ
- QLoRA(4-bit Quantization) ์ต์ ์ ์ฉ์ ํตํด VRAM ์๊ตฌ์ฌํญ์ ์ถ๊ฐ๋ก ๋ฎ์ถ๋ฉด์ ์ฑ๋ฅ ์ ํ๋ฅผ ์ต์ํํ๋ ์ต์ ํ ๊ฒฝ๋ก ์ ๊ณต
์ค์ฒ ํฌ์ธํธ
1. ํ์ต ๋ฐ์ดํฐ์ ๊ตฌ์ฑ ์ ์๋ณด๋ค ์ง์ ์ฐ์ ํ์ฌ 100~500๊ฐ์ ๊ณ ํ์ง ์์ ํ๋ณด
2. GPU ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ ๋ฐ์ ์ QLoRA(4-bit) ์ ์ฉ ๊ฒํ
3. LoRA Rank(8, 16, 32, 64) ๊ฐ ์กฐ์ ์ ํตํ ๋ชจ๋ธ ํํ๋ ฅ๊ณผ ๊ณผ์ ํฉ ๊ฐ์ ํธ๋ ์ด๋์คํ ๊ฒ์ฆ
4. ์์คํ ํ๋กฌํํธ์ ์ผ๊ด์ฑ์ ์ ์งํ์ฌ ํ์ต ๋ฐ์ดํฐ์ ๊ตฌ์กฐ์ ํต์ผ์ฑ ํ๋ณด