Downloads ยท 30 days
0
seoan1024/korean-llm-v2
korean-llm-v2 is a machine learning model from seoan1024. Use it for the machine learning task on the model card, and read the license before you ship it in a product. The card lists the license as gpl-3.0.
Downloads ยท 30 days
0
Access
Public
Updated Aug 16, 2026
Repo size
โ
Likes
0
Public
Click a slice to open those files.
.py42.2 KB ยท 38%
From the Hugging Face model README
"AI ๊ธฐ์ ๋ค์ด ํ๋๋ฅผ ๋๋ฌด ๋นก์ธ๊ฒ ์ ํํ๋ค."
ChatGPT? ๋งค๋ฌ ํ๋.
Claude? ํ๋ฒ์ ์ ํด์ง ๊ฐ์๋ง.
Gemini? ์ ํ์ด๋ผ๋ ๊ฒ ๋ญ์ง?
์ธ์ ๊น์ง ๋จ์ด ๋ง๋ AI์ ๋ ธ์๊ฐ ๋์ค ๊ฑฐ์์?
์์ ํ ๋ ๋ฆฝ์ ์ธ, ํ๊ตญ์ด ์ต์ ํ AI๋ฅผ ์ง์ ๋ง๋ค์!
ํ ๋ฒ์ ๋ฌด์ ํ์ผ๋ก ์ธ ์ ์๊ณ ,
๋ง์๋๋ก ์์ ํ๊ณ ,
์ดํดํ ์ ์๋ ๋ชจ๋ธ์์.
์ด๊ฑด ๋จ์ํ ํ๋ก์ ํธ๊ฐ ์๋๋๋ค.
๋น์ ์ ์์ ๋ฅผ ๋์ฐพ๋ ์ฌ์ ์
๋๋ค. ๐ฅ
GPU: NVIDIA RTX 5090 Laptop
VRAM: 24GB GDDR7
CPU: Intel Core i9 (64GB RAM)
CUDA: 12.1
PyTorch: 2.4.0 (bfloat16 ํ์ฑํ)
์ฒ๋ฆฌ ์๋
์งํ๋
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ GPU ๋ฉ๋ชจ๋ฆฌ ํ๋กํ์ผ (RTX 5090, 24GB) โ
โฃโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโซ
โ โ
โ ๐ง ๋ชจ๋ธ ๊ฐ์ค์น: 4.2GB โโโโโโโโโโโโโโโ โ
โ โ๏ธ AdamW ์ตํฐ๋ง์ด์ : 8.4GB โโโโโโโโโโโโโโ โ
โ ๐ซ ํ์ฑํ (bfloat16): 1.8GB โโโโโโโโโโโโโโ โ
โ ๐ฆ ๊ทธ๋๋์ธํธ ์ถ์ : 0.8GB โโโโโโโโโโโโโโ โ
โ ๐ง ๊ธฐํ ์ค๋ฒํค๋: 0.3GB โโโโโโโโโโโโโโ โ
โ โ
โฃโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโซ
โ ๐ช ์ด ์ฌ์ฉ: 23GB / 24GB (95.8%) โ
โ ๐ ์ฌ์ : 1GB (์์ ๋์ญํญ) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Loss ์ถ์ด ๐
4.8 โ โ
4.4 โ โ โ
4.0 โ โ โ โ
3.6 โ โ โ โ โ
3.2 โ โ โ โ โ โ
2.8 โ โ โ โ โ โ โ
2.4 โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
0 1K 2K 3K 4K 5K 6K
Step
โ
์ํ: ์์ ์ ๊ฐ์ ์ถ์ธ
โ
๊ณผํ์ต: ์์ (์์ค๊ฐ ๋ณ๋ ์์)
โ
์๋ ด์ฑ: ๋งค์ฐ ์ฐ์
ํ์ฌ ์งํ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 12%
+8์๊ฐ ํ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 31%
+16์๊ฐ ํ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 50%
+24์๊ฐ ํ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 69%
+32์๊ฐ ํ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 87%
+30.5์๊ฐ ํ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 100% โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ์
๋ ฅ: ํ ํฐ ์ํ์ค (์ต๋ 256 ํ ํฐ) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ต ์๋ฒ ๋ฉ์ธต (Embedding) โ
โ โข ๊ฐ ํ ํฐ์ 1,920์ฐจ์ ๋ฒกํฐ๋ก ๋ณํ โ
โ โข Vocab Size: 128,256 โ Hidden: 1,920 โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ฃ Transformer Block ร 20 โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ [Pre-Norm] โ โ
โ โ ๐ธ RMSNorm (Layer Normalization ๊ฐ์ ) โ โ
โ โ โ โ
โ โ [Self-Attention] โ โ
โ โ ๐ธ Multi-Head Attention (10 heads) โ โ
โ โ ๐ธ Query, Key, Value Projection โ โ
โ โ ๐ธ Scaled Dot-Product Attention โ โ
โ โ ๐ธ RoPE (ํ์ ํ ์์น ์ธ์ฝ๋ฉ) โ โ
โ โ ๐ธ KV-Cache (์ถ๋ก ์ต์ ํ) โ โ
โ โ ๐ธ Output Projection โ โ
โ โ ๐ธ Residual Connection โ โ
โ โ โ โ
โ โ [Post-Norm] โ โ
โ โ ๐ธ RMSNorm โ โ
โ โ โ โ
โ โ [Feed-Forward Network] โ โ
โ โ ๐ธ SwiGLU (Gated Linear Unit) โ โ
โ โ ๐ธ Linear(1920 โ 4800) [w1] โ โ
โ โ ๐ธ Linear(1920 โ 4800) [w3, ๊ฒ์ดํธ] โ โ
โ โ ๐ธ SiLU Activation โ โ
โ โ ๐ธ Linear(4800 โ 1920) [w2] โ โ
โ โ ๐ธ Residual Connection โ โ
โ โ โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ ร 20 ๋ฐ๋ณต โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ข ์ต์ข
์ ๊ทํ (RMSNorm) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ด ์ถ๋ ฅ์ธต (Output Projection) โ
โ โข Linear(1920 โ 128,256) โ
โ โข ๊ฐ ํ ํฐ ์์น์์ ๋ค์ ํ ํฐ ํ๋ฅ ๋ถํฌ โ
โ โข Weight Sharing (์๋ฒ ๋ฉ์ธต๊ณผ ๋์ผ) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ์ถ๋ ฅ: ํ ํฐ ํ๋ฅ ๋ถํฌ (softmax) โ
โ โ ๋ค์ ํ ํฐ ์ํ๋ง ๋๋ argmax โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
์ด 220,500๊ฐ ๊ณ ํ์ง ํ๊ตญ์ด ์ํ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ
โ ๐ nlpai-lab/kullm-v2 โ
โ โโ 127,000๊ฐ ๋ช
๋ น์ด-์๋ต ์ โ
โ โโ ์์ฐ์ค๋ฌ์ด ํ๊ตญ์ด ๋ํ์ฒด โ
โ โโ ์ค์ ์ธํฐ๋ท ๋ฐ์ดํฐ ๊ธฐ๋ฐ โ
โ โ
โฃโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโซ
โ โ
โ ๐ฏ beomi/KoAlpaca-v1.1a โ
โ โโ 52,000๊ฐ ๋ช
๋ น์ด ๋ฐ์ดํฐ โ
โ โโ ์ค์ ๋ต๋ณ ์์ โ
โ โโ ๊ณ ํ์ง ํํฐ๋ง๋จ โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
์๋ณธ ๋ฐ์ดํฐ์
โ [๋ค์ด๋ก๋]
Hugging Face ์บ์
โ [์ ๊ทํ]
ํ๊ตญ์ด ํฐํธ + ํน์๋ฌธ์ ํต์ผ
โ [๋ณํฉ]
220,500๊ฐ ์ํ๋ก ํตํฉ
โ [ํ ํฌ๋์ด์ง]
beomi/Llama-3-Open-Ko-8B ํ ํฌ๋์ด์
(โ 128,256๊ฐ ํ ํฐ ์ดํ)
โ [์บ์ฑ]
Parquet ํ์์ผ๋ก ๋ก์ปฌ ์ ์ฅ
โ [๋ฐฐ์น ์ฒ๋ฆฌ]
DataLoader๋ก ํจ์จ์ ๋ฐฐ์น ๊ตฌ์ฑ
โ โ
ํ์ต ์ค๋น ์๋ฃ!
์ํ ํต๊ณ:
โข ํ๊ท ๊ธธ์ด: 256.3 ํ ํฐ
โข ์ต์ ๊ธธ์ด: 10 ํ ํฐ
โข ์ต๋ ๊ธธ์ด: 2,048 ํ ํฐ
โข ํ๊ตญ์ด ๋น์จ: 98.7%
โข ์ค๋ณต๋ฅ : 0.3% (๋งค์ฐ ๋ฎ์)
๐ป ํ์ ์ฌ์:
GPU VRAM: ์ต์ 23GB (๊ถ์ฅ: RTX 4090, RTX 5090, A100)
CPU RAM: 64GB ์ด์
์ ์ฅ๊ณต๊ฐ: 1TB+ (๋ฐ์ดํฐ 200GB + ์ฒดํฌํฌ์ธํธ)
๐ฆ ์ํํธ์จ์ด:
Python: 3.11 ์ด์
PyTorch: 2.4.0 (CUDA 12.1)
CUDA: 12.1+
# 1๏ธโฃ Conda ํ๊ฒฝ ์์ฑ (1๋ถ)
conda create -n korean-llm python=3.11 -y
conda activate korean-llm
# 2๏ธโฃ PyTorch ์ค์น (2๋ถ)
pip install torch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 \
--index-url https://download.pytorch.org/whl/cu121
# 3๏ธโฃ ํ๋ก์ ํธ ํด๋ก
git clone https://github.com/seoan1210/korean-llm-v2.git
cd korean-llm-v2
# 4๏ธโฃ ์์กด์ฑ ์ค์น (1๋ถ)
pip install transformers==4.36.0 datasets==2.16.0 \
pandas==2.1.3 matplotlib==3.8.2 tqdm==4.66.1
# 5๏ธโฃ ํ์ต ์์! (1๋ถ)
python korean_llm_advanced_v2.py
# ๐ ์ฒซ ์คํ ์๋ ์งํ:
# โ
ํ ํฌ๋์ด์ ๋ก๋
# โ
๋ฐ์ดํฐ์
๋ค์ด๋ก๋ ๋ฐ ์บ์ฑ (5~10๋ถ ์์)
# โ
๋ชจ๋ธ ์ด๊ธฐํ
# โ
GUI ์๋ ์คํ (Loss ๊ทธ๋ํ + ์ฑํ
)
# โ
ํ์ต ์๋ ์์
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Korean-LLM Training Monitor (Step 6,000) โ
โฃโโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโซ
โ Loss Curve โ Chat Interface โ
โ โ โ
โ Loss โ [System] Loaded! โ
โ 4.8 โ โ โ User: ์๋
? โ
โ 4.4 โ โฑโฒโฑ โ Bot: ์๋
ํ์ธ์! โ
โ 4.0 โ โฑ โฒ โฑ โ User: ๋ญํด? โ
โ 3.6 โโฑ โฒโฑโฒ โ Bot: ํ์ต ์ค์
๋๋ค โ
โ 3.2 โ โฒ โฑโฒ โ โ
โ 2.8 โ โฒโฑ โฒโ โ [๐ Load Latest] โ
โ โ โ โ
โ Step โโโโโโโโโโโโโโโโโโ โ โ
โ 0K 1K 2K 3K 6K โ ์
๋ ฅ: [ ] [Send] โ
โ โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
๐ ์ค์๊ฐ Loss ๊ทธ๋ํ ๐ ๋ชจ๋ธ๊ณผ ๋ํ (CPU)
๋งค์ด ์
๋ฐ์ดํธ ์ต์ ์ฒดํฌํฌ์ธํธ ์ฌ์ฉ
| ๊ธฐ๋ฅ | ๋์ | ํจ๊ณผ |
|---|---|---|
| Loss ๊ทธ๋ํ | ๋งค ์คํ ๋ง๋ค ์ ๋ฐ์ดํธ | ํ์ต ์งํ ์๊ฐํ |
| ์ํ ์์ฑ | 1,000 ์คํ ๋ง๋ค | ๋ชจ๋ธ ์ฑ๋ฅ ํ์ธ |
| ์ฒดํฌํฌ์ธํธ | 1,000 ์คํ ๋ง๋ค ์ ์ฅ | ํ์ต ์ค๋จ ์ ๋ณต๊ตฌ |
| ๋ก๊ทธ ๊ธฐ๋ก | ๋ชจ๋ ๋ฉํธ๋ฆญ ์ ์ฅ | ๋ถ์ ๋ฐ ์ฌํ ๊ฐ๋ฅ |
| ์ฑํ ์ธํฐํ์ด์ค | ์ค์๊ฐ ๋ชจ๋ํฐ๋ง | ๋น ๋ฅธ ํ ์คํธ |
if __name__ == "__main__":
config = TrainingConfig(
# โก ๋ฐฐ์น ์ค์
batch_size=2, # GPU ๋ฉ๋ชจ๋ฆฌ์ ๋ง๊ฒ ์กฐ์
accumulation_steps=8, # ๊ทธ๋๋์ธํธ ์ถ์ (์ ํจ ๋ฐฐ์น 16)
# ๐
ํ์ต ์ค์ผ์ค
max_steps=50000, # ์ด ํ์ต ์คํ
warmup_steps=200, # ์ด๋ฐ ๋ถ์์ ์ํ
learning_rate=5e-5, # ์ต์ด ํ์ต๋ฅ
# ๐ ํ๊ฐ ๋ฐ ์ ์ฅ
eval_interval=1000, # 1,000 ์คํ
๋ง๋ค ํ๊ฐ
checkpoint_interval=100, # 100 ์คํ
๋ง๋ค ์ ์ฅ
# ๐ง ๋ชจ๋ธ ์ค์
max_seq_len=256, # ์ต๋ ์ํ์ค ๊ธธ์ด
use_bfloat16=True, # ํผํฉ ์ ๋ฐ๋ ํ์ฑํ
# ๐พ ์ฒดํฌํฌ์ธํธ
resume_from_checkpoint='latest', # ๋ง์ง๋ง์์ ์ฌ๊ฐ
download_datasets=False, # ์ฌ๋ค์ด๋ก๋ ํ์ง ์์
)
main(config)
| VRAM | ์ถ์ฒ ์ค์ | ์ฃผ์์ฌํญ |
|---|---|---|
| 24GB (๊ธฐ๋ณธ) | batch_size=2, seq=256 | ์์ ์ |
| 20GB | batch_size=2, seq=128, dim=1536 | ์ฝ๊ฐ ๋๋ฆผ |
| 16GB | batch_size=1, seq=128, dim=1024, layers=16 | ์๋นํ ๋๋ฆผ |
| 12GB | batch_size=1, seq=64, dim=768, layers=8 | ๋งค์ฐ ๋๋ฆผ |
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ 12%
ํ์ฌ ์คํ
: 6,000 / 50,000
์งํ๋: 12%
ํ๊ท Loss: ~2.6 (์์ ์ ๊ฐ์)
ํ์ต๋ฅ : 4.95e-05
๊ฒฝ๊ณผ ์๊ฐ: ~3.67์๊ฐ
์์ ์์ฑ: ~26.83์๊ฐ ๋ ํ์
์์ ์๋ฃ: 2026๋
8์ 26์ผ๊ฒฝ 21:00
๋จ๊ณ Step ๋ฒ์ ํน์ง Loss
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
์ด๋ฐ (๊ธ๊ฐ) 0~1,000 ๋ชจ๋ธ์ด ๊ธฐ๋ณธ ํจํด ํ์ต 4.0โ3.2
๋น ๋ฅธ ์๋ ด 1,000~3,000 ์๋ฏธ ์๋ ์ ๋ณด ํ์ต 3.2โ2.8
์๋งํ ๊ฐ์ 3,000~5,000 ์ธ๋ถ ์ฌํญ ๋ค๋ฌ์ด 2.8โ2.6
๋ฏธ์ธ ์กฐ์ 5,000~10,000 ์ธ์ด ์คํ์ผ ํ์ต 2.6โ2.4
์๋ ด ๋จ๊ณ 10,000~50,000 ์ ์ง์ ๊ฐ์ 2.4โ1.8
๐ ํ์ฌ ์์น: ์๋งํ ๊ฐ์ ๋จ๊ณ (Step 6,000)
โ Transformer ๊ตฌ์กฐ ์๋ฒฝ ์ดํด
โ Self-Attention ๋ฉ์ปค๋์ฆ
โ ํ ํฌ๋์ด์ ์ด์
์๋ฆฌ
โ RoPE (ํ์ ํ ์์น ์ธ์ฝ๋ฉ)
โ PyTorch ๋ชจ๋ธ ๊ตฌํ
โ ๊ธฐ๋ณธ ํ์ต ๋ฃจํ
โ ํ์ต ์ต์ ํ (Loss ๊ฐ์)
โ ํ์ดํผํ๋ผ๋ฏธํฐ ํ๋
โ ๊ทธ๋๋์ธํธ ์ถ์
โ ํผํฉ ์ ๋ฐ๋ (bfloat16)
โ ๋ฉ๋ชจ๋ฆฌ ํจ์จํ
โ ๋ฐ์ดํฐ ์ ์ฒ๋ฆฌ ํ์ดํ๋ผ์ธ
โ ์ฒดํฌํฌ์ธํธ ๊ด๋ฆฌ
โ ๋ฐฐ์น ์ฒ๋ฆฌ ์ต์ ํ
โ CUDA ์ต์ ํ
โ ๋ฉ๋ชจ๋ฆฌ ํ๋กํ์ผ๋ง
โ ์ฑ๋ฅ ๋ถ์ ๋ฐ ๋ณ๋ชฉ ํ์
โ ์์ํ ๊ธฐ๋ฒ
โ ๋ถ์ฐ ํ์ต (DDP)
โ Flash Attention ์ ์ฉ
โ ๋ชจ๋ธ ๋ฐฐํฌ ๋ฐ ์๋น
โ ํ๋ก๋์
ํ๊ฒฝ ๊ตฌ์ฑ
โ ์ฆ์: RuntimeError: CUDA out of memory
โ
ํด๊ฒฐ์ฑ
:
1๏ธโฃ batch_size ๊ฐ์: 2 โ 1
2๏ธโฃ max_seq_len ๊ฐ์: 256 โ 128
3๏ธโฃ accumulation ์ฆ๊ฐ: 8 โ 16
4๏ธโฃ GPU ์บ์ ๋น์ฐ๊ธฐ:
python -c "import torch; torch.cuda.empty_cache()"
โ ์ฆ์: ConnectionError / TimeoutError
โ
ํด๊ฒฐ์ฑ
:
# ์บ์ ์ด๊ธฐํ
rm -rf datasets/cache/*
rm datasets/datasets_manifest.json
# Hugging Face ๋ก๊ทธ์ธ
huggingface-cli login
# ์ฌ์๋
python korean_llm_advanced_v2.py
โ ์ฆ์: RuntimeError: No module named '_tkinter'
โ
Linux ํด๊ฒฐ:
# Ubuntu/Debian
sudo apt-get install python3.11-tk
# Fedora
sudo dnf install python3.11-tkinter
โ
๋๋:
export MPLBACKEND=TkAgg
python korean_llm_advanced_v2.py
๋ฌธ์ ์์ธ ํด๊ฒฐ์ฑ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Loss ์ฆ๊ฐ ํ์ต๋ฅ ๋๋ฌด ๋์ learning_rate=1e-5
Loss ์ ์ฒด ํ์ต๋ฅ ๋๋ฌด ๋ฎ์ learning_rate=1e-4
ํฐ ํญ ์ง๋ ๋ฐฐ์น ํฌ๊ธฐ ๋ถ์กฑ batch_size=4
์ด๋ฐ๋ง ๊ฐ์ Warmup ๋๋ฌด ์งง์ warmup_steps=500
๊ณผํ์ต ์์ฌ ํ๊ฐ ๊ฐ๊ฒฉ ๋ถ์กฑ eval_interval=500
# VRAM์ด ์ถฉ๋ถํ๋ฉด ๋ฐฐ์น ํฌ๊ธฐ ์ฆ๊ฐ
config = TrainingConfig(
batch_size=4, # 2 โ 4
accumulation_steps=4, # 8 โ 4 (์ ํจ ๋ฐฐ์น 16 ์ ์ง)
)
# ํจ๊ณผ: ์๋ 1.5๋ฐฐ ํฅ์ + Loss ์์ ์ฑ ๊ฐ์
# Gradient Checkpointing ํ์ฉ
config = TrainingConfig(
batch_size=1,
max_seq_len=128, # 256 โ 128
accumulation_steps=32, # 8 โ 32
)
# ํจ๊ณผ: VRAM 40% ์ ๊ฐ, ์๋๋ 10% ๊ฐ์
# ํ๊ฐ ๊ฐ๊ฒฉ ์ค์ด๊ธฐ
config = TrainingConfig(
eval_interval=500, # 1000 โ 500
)
# ์์ฑ ํ๋ผ๋ฏธํฐ ์ต์ ํ
response = generate(
model, tokenizer,
prompt="ํ๊ตญ์ ์๋๋",
temperature=0.7, # ๋ค์์ฑ ์ฆ๊ฐ
top_p=0.95, # Nucleus sampling
repetition_penalty=1.3, # ๋ฐ๋ณต ๋ฐฉ์ง
max_tokens=100
)
| ๋ ผ๋ฌธ | ๋ ๋ | ๋งํฌ |
|---|---|---|
| Attention is All You Need | 2017 | https://arxiv.org/abs/1706.03762 |
| RoFormer (RoPE) | 2021 | https://arxiv.org/abs/2104.09864 |
| RMSNorm (T5) | 2019 | https://arxiv.org/abs/1910.07468 |
| GLU Variants (SwiGLU) | 2020 | https://arxiv.org/abs/2002.05202 |
| Llama 2 | 2023 | https://arxiv.org/abs/2307.09288 |
A: ์์ง์ ์๋๋๋ค. ํ์ง๋ง:
โ
๊ฐ๋ฅํ ๊ฒ:
โข ํ๊ตญ์ด ๊ธฐ๋ณธ ์ดํด
โข ๊ฐ๋จํ QA
โข ํ
์คํธ ์์ฑ
โข ์ง์๋ฌธ ๋ฐ๋ฅด๊ธฐ
โ ๋ถ์กฑํ ๊ฒ:
โข ๋ณต์กํ ์ถ๋ก
โข ์ต์ ์ ๋ณด (ํ์ต ๋ฐ์ดํฐ ๊ธฐ์ค)
โข ๋ฉํฐ๋ชจ๋ฌ ์ฒ๋ฆฌ
โข ์์ ์ถ๋ก
์ค์ํ ๊ฑด: ChatGPT๋ 6,000B ํฌ๊ธฐ์ง๋ง,
๋น์ ์ 1.09B ๋ชจ๋ธ์ ์ง์ ๋ง๋ค ์ ์๋ค๋ ๊ฒ! ๐
A: ๋ฌผ๋ก ์ ๋๋ค! ํ ํฌ๋์ด์ ๋ง ๊ต์ฒดํ๋ฉด:
# ์ผ๋ณธ์ด
tokenizer = AutoTokenizer.from_pretrained("llm-jp/llm-jp-tokenizer")
# ์ค๊ตญ์ด
tokenizer = AutoTokenizer.from_pretrained("BAAI/bge-large-zh")
# ์์ด
tokenizer = AutoTokenizer.from_pretrained("meta-llama/Llama-2-7b")
A: ์๋ฒฝํ๊ฒ ๋ฌด๋ฃ์ ๋๋ค!
โ
๋ฌด๋ฃ:
โข ์ฝ๋ (GPL-3.0)
โข ๋ฐ์ดํฐ์
(CC-BY-NC)
โข ๋ผ์ด๋ธ๋ฌ๋ฆฌ (๋ชจ๋ ์คํ์์ค)
๐ต ๋น์ฉ:
โข GPU ์ ๊ธฐ๋ฃ๋ง (RTX 5090: ~30์๊ฐ)
A: ๋ค! ์ฌ๋ฌ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค:
# 1. PyTorch ๋ชจ๋ธ ์ง์ ์ฌ์ฉ
model = KoreanLLM.load_from_checkpoint("korean_llm_50000.pth")
# 2. ONNX๋ก ๋ด๋ณด๋ด๊ธฐ (v3.0+)
torch.onnx.export(model, ...)
# 3. Hugging Face์ ์
๋ก๋
model.push_to_hub("username/korean-llm-v2")
# 4. ๋ก์ปฌ API ์๋ฒ ์ด์
from fastapi import FastAPI
app = FastAPI()
# ... API ๊ตฌํ
A: ์ด์๋ฅผ ์ด์ด์ฃผ์ธ์!
GitHub โ Issues โ "New Issue" โ ์์ธ ์ค๋ช
GPL-3.0 License - ๋ผ์ด์ ์ค ํ์ผ ์ฐธ๊ณ
โ ๏ธ ๊ฐ ๋ฐ์ดํฐ์ ๋ผ์ด์ ์ค ์ค์ ํ์
nlpai-lab/kullm-v2 โ CC-BY-NC (๋น์์
๋ง)
beomi/KoAlpaca-v1.1a โ CC-BY-NC-4.0 (๋น์์
๋ง)
โ ๏ธ ์์ ๋ชฉ์ : ๊ถ๋ฆฌ์์๊ฒ ๋ณ๋ ๋ฌธ์ ํ์
์ด ํ๋ก์ ํธ๋ ๋ค์ ์คํ์์ค์ ๋์์ ๋ฐ์์ต๋๋ค:
transformers, datasets)์ด๊ฒ์ ๋จ์ํ ์ฝ๋ ๋ชจ์์ด ์๋๋๋ค.
์ด๊ฒ์ ๋น์ ์ ์์ ๋ฅผ ๋์ฐพ๋ ์ ์ธ์
๋๋ค.
โ ๋ ์ด์ ์ ๊ฒฝ ์ธ ํ์ ์์ต๋๋ค.
โ ์ด์ ์ ๊ธฐ๋ฃ๋ง ๋ด๋ฉด ๋ฉ๋๋ค.
โ ์ด์ ๋ชจ๋ ์ฝ๋๋ฅผ ์ดํดํ ์ ์์ต๋๋ค.
โ ์ด์ ๋น์ ์ด ์ฃผ์ธ์ ๋๋ค.
์ฒ์์ ์ด๋ ค์ธ ์ ์์ต๋๋ค.
ํ์ง๋ง ํ ๋ฒ ์ดํดํ๋ฉด, ์ ๋ง ๊ฐํฉ๋๋ค.
๋น์ ์ ์ด์ :
ํ์ดํ ! ๋น์ ์ ํ ์ ์์ต๋๋ค! ๐ช๐ฅ
</div>
๋ง์ง๋ง ์
๋ฐ์ดํธ: 2026๋
8์ 12์ผ
ํ์ฌ ์งํ๋: Step 6,000 / 50,000 (12%)
VRAM ์ฌ์ฉ: 23GB / 24GB (95.8%)
์ํ: ๐ข ํ๋ฐํ ํ์ต ์ค