Instructions to use aisamdasu/algocean-2.1B-nano-friend with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- PEFT
How to use aisamdasu/algocean-2.1B-nano-friend with PEFT:
from peft import PeftModel from transformers import AutoModelForCausalLM base_model = AutoModelForCausalLM.from_pretrained("kakaocorp/kanana-nano-2.1b-instruct") model = PeftModel.from_pretrained(base_model, "aisamdasu/algocean-2.1B-nano-friend") - Notebooks
- Google Colab
- Kaggle
algocean-2.1B-nano-friend
kakaocorp/kanana-nano-2.1b-instruct์ LoRA SFTํ ํ๊ตญ์ด companion ๋ํ adapter์
๋๋ค.
๊ธฐ์กด instruct ๋ชจ๋ธ์ ๊ฐ์ ๊ณต๊ฐยท์น๊ตฌ ๋ํ ๋งํฌ๋ฅผ ๋ํ๊ณ , companion ํ์คํฌ ์ฑ๋ฅ(eval loss โ24%) ์ ๋์ธ ๋ชจ๋ธ์
๋๋ค.
Usage
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
base = "kakaocorp/kanana-nano-2.1b-instruct"
adapter = "aisamdasu/algocean-2.1B-nano-friend"
tok = AutoTokenizer.from_pretrained(base)
model = AutoModelForCausalLM.from_pretrained(base, torch_dtype=torch.bfloat16, device_map="auto")
model = PeftModel.from_pretrained(model, adapter)
messages = [{"role": "user", "content": "์ค๋ ๋๋ฌด ์ง์ณค์ด. ์๋กํด์ค."}]
prompt = tok.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tok(prompt, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=200, do_sample=True, temperature=0.7, top_p=0.9)
print(tok.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))
base ๋๋น
| base (instruct) | algocean (LoRA) | |
|---|---|---|
| ์ญํ | ๋ฒ์ฉ instruct | companion ์น๊ตฌ ๋ํ |
| ๋งํฌ | ์กฐ์ธยท์ค๋ช ยท๋ชฉ๋กํ | ์งง๊ณ ์บ์ฃผ์ผยท๊ณต๊ฐยท๋ํํ |
| ๊ณต๊ฐ | ์ผ๋ฐ์ ์๋กยทํ | ๊ฐ์ ๊ณต๊ฐยท๋ง์ฅ๊ตฌ |
Training
| value | |
|---|---|
| data | ~22๋ง ์ค (train ~21.5๋ง ยท eval 2%) |
| plan | 3 epoch ยท max 10,080 step (~3,361 step/epoch) |
| LoRA | r=128 ยท alpha=256 ยท seq 2048 |
eval loss ๋ณํ
| step | epoch | eval loss | PPL | ๋น๊ณ |
|---|---|---|---|---|
| 200 | 0.06 | 1.640 | 5.16 | ์ด๊ธฐ |
| 6600 | 1.96 | 1.241 | 3.46 | best โ ๋ฐฐํฌ ckpt |
| 6800 | 2.02 | 1.285 | 3.62 | best ์ดํ ์์น |
| 7600 | 2.26 | 1.319 | 3.74 | ์ต์ข eval |
- eval loss 1.640 โ 1.241 (โ24%)
- train loss (๋ง์ง๋ง log): 0.755 @ step 7680
- trainโeval gap (๋ง์ง๋ง): 0.755 vs 1.319 โ epoch 2 ์ดํ ๊ฐญ ํ๋
์ step 6600์ด best์ธ๊ฐ
| ๊ทผ๊ฑฐ | ์์น |
|---|---|
| eval loss ์ต์ | 1.241 @ step 6600 (์ดํ ์ step์์ ๋ฏธ๋ฌ) |
| ์ดํ eval | 6800 โ 1.285 ยท 7600 โ 1.319 (๋จ์กฐ ์์น) |
| train vs eval | train 0.755 โ ๊ณ์ ยท eval 1.319 โ โ ๊ณผ์ ํฉ ์ ํธ |
| epoch ์์น | ~1.96 โ 2 epoch ์ง์ , generalization peak |
step 6600 ์ดํ eval๋ง ์ ํ๋๊ณ train์ ๊ณ์ ๋ด๋ ค๊ฐ์ผ๋ฏ๋ก, ๊ฒ์ฆ loss ๊ธฐ์ค ์ต์ ckpt = 6600์ด ํฉ๋ฆฌ์ ์ ๋๋ค.
์ 5 epoch๊น์ง ๋ ์ ํ๋
| ๋ด์ฉ | |
|---|---|
| ๊ด์ธก | epoch 2.0 ๋๊ธด ๋ค eval loss 1.241 โ 1.285 โ 1.319 (์ฌ์์น) |
| 5 epoch ๊ธฐ๋ | ๊ฐ์ ~22๋ง ์ค์ 5ํ ๋ฐ๋ณต โ companion ๋ถํฌ ๊ณ ์ฐฉ ์ฐ์ธ |
| ์ฌ๊ฐ์ ๊ฐ๋ฅ์ฑ | cosine LRยทํ ์ค์ ๊ทธ๋๋ก 5 epoch ๊ทผ์ฒ eval ์ฌํ๋ฝ ๊ฐ๋ฅ์ฑ ๋ฎ์ |
| ๋ฐ์ดํฐ ๊ท๋ชจ | ~22๋ง ์ค์ SFT์น๊ณ ํผ โ ๊ฐ๋ณ ๋ํ ์๊ธฐ overfit์ ์๋์ ์ผ๋ก ์ ์ |
| ์์กด ๋ฆฌ์คํฌ | ๋๋ฉ์ธ์ด ๋จ์ผ(์น๊ตฌ ๋ํ) โ ๋ฐ๋ณต epoch โ ์ instruct ์คํ์ผ ๊ฐ๋ฆผ ๊ฐ๋ฅ |
3 epoch ๊ณํ ์ค ~2.29 epoch์์ eval ์ ํ๊ฐ ํ์ธ๋๊ณ , 5 epoch ์ฐ์ฅ์ eval ๊ฐ์ ๋ณด๋ค ๊ณผ์ ํฉยท์คํ์ผ lock-in ์ชฝ์ด ์ ๋ ฅํด best ckpt(6600)๋ก ํ์ ํ์ต๋๋ค.
Spec
| Key | Value |
|---|---|
| LoRA r | 128 |
| alpha | 256 |
| target | q/k/v/o + MLP |
| train seq | 2048 |
| max context | 8192 |
Example โ base vs algocean
User: ์ค๋ ์ฐ์ธํด์ ๋ก๋ณถ์ด ๋จน๊ณ ์ถ์ด.
์๋ณธ (kanana-nano-2.1b-instruct) โ 5.38s ยท 150 tok
์ค๋ ๊ธฐ๋ถ์ด ์ข์ง ์์์ ๋ก๋ณถ์ด๊ฐ ์๊ฐ๋๋ ๊ฑด ์ ๋ง ๊ณต๊ฐํด์. ๋ก๋ณถ์ด๋ ๋งค์ฝคํ๊ณ ๋ฌ์ฝคํ ๋ง์ผ๋ก ๊ธฐ๋ถ์ ํ์ธต ๋์์ง๊ฒ ํด์ฃผ์ฃ . ์ง์์ ๊ฐ๋จํ๊ฒ ๋ง๋ค ์ ์๋ ๋ ์ํผ๋ฅผ ๊ณต์ ํด๋๋ฆด๊ฒ์.
๊ฐ๋จํ ๋ก๋ณถ์ด ๋ ์ํผ
์ฌ๋ฃ:
- ๋ก 200g
- ์ด๋ฌต 1๊ฐ โฆ
algocean (LoRA) โ 1.32s ยท 39 tok
์ ์ง์ง? ๋งค์ด ๊ฑฐ ๋น๊ธฐ๋ฉด ์ํ ์น์ฆ๋ก๋ณถ์ด๋ก ๊ฐ์ ใ ใ ใ ใ ใ ใ ๋ด์ผ์ ๋ ์ ์ฐ๋ฆด ๊ฑฐ์ผ.
์๋ณธ์ ๋ ์ํผยท์ค๋ช ํ, algocean์ ์งง์ ๋ง์ฅ๊ตฌยท์น๊ตฌ ๋งํฌ๋ก ๋ตํฉ๋๋ค.
Try it โ example notebook
์๋ณธ vs algocean์ ์ง์ ๋น๊ตํ๋ ค๋ฉด algocean_friend_try.ipynb ๋ฅผ ์ด๊ณ Run All โ PROMPT ์์ โ ๋น๊ต ์
์คํ.
hf download aisamdasu/algocean-2.1B-nano-friend algocean_friend_try.ipynb
- Downloads last month
- 46
Model tree for aisamdasu/algocean-2.1B-nano-friend
Base model
kakaocorp/kanana-nano-2.1b-instruct

