โฑ ํด๋น ๋ชจ๋ธ์์ LlaMA3.2 1B๋ฅผ Foundation ๋ชจ๋ธ๋ก ํ๋ ํ๊ตญ์ด ๋ฐ ํ๊ตญ์ ๋ค์ํ
๋ฌธํ์ ์ ์ฉํ ์ ์๋๋ก ํ๊ธฐ ์ํด
๊ฐ๋ฐ ๋์์ผ๋ฉฐ ์์ฒด ์ ์ํ 53๊ฐ ์์ญ์ ํ๊ตญ์ด ๋ฐ์ดํฐ๋ฅผ ํ์ฉํ์ฌ ํ๊ตญ ์ฌํ ๊ฐ์น์
๋ฌธํ๋ฅผ ์ดํดํ๋ ๋ชจ๋ธ ์ ๋๋ค. Thanks for ktdsโ
V0.2 Epoch=2
โถ ๋ชจ๋ธ ์ค๋ช
- ๋ชจ๋ธ๋ช ๋ฐ ์ฃผ์๊ธฐ๋ฅ: ํด๋น ๋ชจ๋ธ์์ LlaMA3.2 1B ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก SFT ๋ฐฉ์์ผ๋ก ํ์ธํ๋๋ ๋ชจ๋ธ์ ๋๋ค. ํ๊ตญ์ด์ ํ๊ตญ์ ๋ค์ํ ๋ฌธํ์ ๋งฅ๋ฝ์ ์ดํดํ๋๋ก ์ค๊ณ๋์์ผ๋ฉฐ โจโจ, ์์ฒด ์ ์ํ 53๊ฐ ์์ญ์ ํ๊ตญ์ด ๋ฐ์ดํฐ๋ฅผ ํ์ฉํด ํ๊ตญ ์ฌํ์ ๊ฐ์น์ ๋ฌธํ๋ฅผ ๋ฐ์ํฉ๋๋ค. ์ฃผ์ ๊ธฐ๋ฅ์ผ๋ก๋ ํ ์คํธ ์์ฑ, ๋ํ ์ถ๋ก , ๋ฌธ์ ์์ฝ, ์ง์์๋ต, ๊ฐ์ ๋ถ์ ๋ฐ ์์ฐ์ด ์ฒ๋ฆฌ ๊ด๋ จ ๋ค์ํ ์์ ์ ์ง์ํ๋ฉฐ, ํ์ฉ ๋ถ์ผ๋ ๋ฒ๋ฅ , ์ฌ๋ฌด, ๊ณผํ, ๊ต์ก, ๋น์ฆ๋์ค, ๋ฌธํ ์ฐ๊ตฌ ๋ฑ ๋ค์ํ ๋ถ์ผ์์ ์์ฉ๋ ์ ์์ต๋๋ค.
- ๋ชจ๋ธ ์ํคํ ์ฒ: ํด๋น ๋ชจ๋ธ์ LlaMA3.2 1B ๋ชจ๋ธ์ ๊ธฐ๋ฐ์ผ๋ก, ํ๋ผ๋ฏธํฐ ์๋ 10์ต ๊ฐ(1B)๋ก ๊ตฌ์ฑ๋ ๊ณ ์ฑ๋ฅ ์ธ์ด ๋ชจ๋ธ์ ๋๋ค. ์ด ๋ชจ๋ธ์LlaMA3.2 1B๋ฅผ ํ์ด๋ฐ์ด์ ๋ชจ๋ธ๋ก ์ผ์, SFT(์ง๋ ๋ฏธ์ธ ์กฐ์ ) ๋ฐฉ์์ ํตํด ํ๊ตญ์ด์ ํ๊ตญ ๋ฌธํ์ ํนํ๋ ์ฑ๋ฅ์ ๋ฐํํ๋๋ก ํ๋ จ๋์์ต๋๋ค. LlaMA3.2 1B์ ๊ฒฝ๋ํ๋ ๊ตฌ์กฐ๋ ๋น ๋ฅธ ์ถ๋ก ์๋์ ๋ฉ๋ชจ๋ฆฌ ํจ์จ์ฑ์ ๋ณด์ฅํ๋ฉฐ, ๋ค์ํ ์์ฐ์ด ์ฒ๋ฆฌ ์์ ์ ์ ํฉํ๊ฒ ์ต์ ํ๋์ด ์์ต๋๋ค. ์ด ์ํคํ ์ฒ๋ ํ ์คํธ ์์ฑ, ์ง์์๋ต, ๋ฌธ์ ์์ฝ, ๊ฐ์ ๋ถ์๊ณผ ๊ฐ์ ๋ค์ํ ์์ ์์ ํ์ํ ์ฑ๋ฅ์ ๋ณด์ฌ์ค๋๋ค.
โท ํ์ต ๋ฐ์ดํฐ
- ํด๋น ๋ชจ๋ธ์์ ์์ฒด ๊ฐ๋ฐํ ์ด 3.6GB ํฌ๊ธฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐํ์ผ๋ก ํ์ต๋์์ต๋๋ค. ๋ชจ๋ 233๋ง ๊ฑด์ QnA, ์์ฝ, ๋ถ๋ฅ ๋ฑ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ฉฐ, ๊ทธ ์ค 133๋ง ๊ฑด์ 53๊ฐ ์์ญ์ ๊ฐ๊ด์ ๋ฌธ์ ๋ก ๊ตฌ์ฑ๋์์ต๋๋ค. ์ด ์์ญ์๋ ํ๊ตญ์ฌ, ์ฌํ, ์ฌ๋ฌด, ๋ฒ๋ฅ , ์ธ๋ฌด, ์ํ, ์๋ฌผ, ๋ฌผ๋ฆฌ, ํํ ๋ฑ์ด ํฌํจ๋๋ฉฐ, Chain of Thought ๋ฐฉ์์ผ๋ก ํ์ต๋์์ต๋๋ค. ๋ํ 130๋ง ๊ฑด์ ์ฃผ๊ด์ ๋ฌธ์ ๋ ํ๊ตญ์ฌ, ์ฌ๋ฌด, ๋ฒ๋ฅ , ์ธ๋ฌด, ์ํ ๋ฑ 38๊ฐ ์์ญ์ ๊ฑธ์ณ ํ์ต๋์์ต๋๋ค. ํ์ต ๋ฐ์ดํฐ ์ค ํ๊ตญ์ ์ฌํ ๊ฐ์น์ ์ธ๊ฐ์ ๊ฐ์ ์ ์ดํดํ๊ณ ์ง์ํ ์ฌํญ์ ๋ฐ๋ผ ์ถ๋ ฅํ ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ํ์ตํ์์ต๋๋ค.
- ํ์ต Instruction Datasets Format:
{"prompt": "prompt text", "completion": "ideal generated text"}
โธ ์ฌ์ฉ ์ฌ๋ก
ํด๋น ๋ชจ๋ธ์ ๋ค์ํ ์์ฉ ๋ถ์ผ์์ ์ฌ์ฉ๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด:
- ๊ต์ก ๋ถ์ผ: ์ญ์ฌ, ์ํ, ๊ณผํ ๋ฑ ๋ค์ํ ํ์ต ์๋ฃ์ ๋ํ ์ง์์๋ต ๋ฐ ์ค๋ช ์์ฑ.
- ๋น์ฆ๋์ค: ๋ฒ๋ฅ , ์ฌ๋ฌด, ์ธ๋ฌด ๊ด๋ จ ์ง์์ ๋ํ ๋ต๋ณ ์ ๊ณต ๋ฐ ๋ฌธ์ ์์ฝ.
- ์ฐ๊ตฌ ๋ฐ ๋ฌธํ: ํ๊ตญ ์ฌํ์ ๋ฌธํ์ ๋ง์ถ ์์ฐ์ด ์ฒ๋ฆฌ ์์ , ๊ฐ์ ๋ถ์, ๋ฌธ์ ์์ฑ ๋ฐ ๋ฒ์ญ.
- ๊ณ ๊ฐ ์๋น์ค: ์ฌ์ฉ์์์ ๋ํ ์์ฑ ๋ฐ ๋ง์ถคํ ์๋ต ์ ๊ณต.
- ์ด ๋ชจ๋ธ์ ๋ค์ํ ์์ฐ์ด ์ฒ๋ฆฌ ์์ ์์ ๋์ ํ์ฉ๋๋ฅผ ๊ฐ์ง๋๋ค.
โน ํ๊ณ โโ
- ํด๋น ๋ชจ๋ธ์ ํ๊ตญ์ด์ ํ๊ตญ ๋ฌธํ์ ํนํ๋์ด ์์ผ๋, ํน์ ์์ญ(์: ์ต์ ๊ตญ์ ์๋ฃ, ์ ๋ฌธ ๋ถ์ผ)์ ๋ฐ์ดํฐ ๋ถ์กฑ์ผ๋ก ์ธํด ๋ค๋ฅธ ์ธ์ด ๋๋ ๋ฌธํ์ ๋ํ ์๋ต์ ์ ํ์ฑ์ด ๋จ์ด์ง ์ ์์ต๋๋ค. ๋ํ, ๋ณต์กํ ๋ ผ๋ฆฌ์ ์ฌ๊ณ ๋ฅผ ์๊ตฌํ๋ ๋ฌธ์ ์ ๋ํด ์ ํ๋ ์ถ๋ก ๋ฅ๋ ฅ์ ๋ณด์ผ ์ ์์ผ๋ฉฐ, ํธํฅ๋ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ๊ฒฝ์ฐ ํธํฅ๋ ์๋ต์ด ์์ฑ๋ ๊ฐ๋ฅ์ฑ๋ ์กด์ฌํฉ๋๋ค.
โบ ์ฌ์ฉ ๋ฐฉ๋ฒ
from transformers import AutoModel, AutoTokenizer
base_model = "SEOKDONG/llama3.2_1B_korean_v0.2_sft_by_aidx"
model = AutoModelForCausalLM.from_pretrained(base_LLM_model)
tokenizer = AutoTokenizer.from_pretrained(base_LLM_model)
from tqdm import tqdm
for i in tqdm(range(0,1)): #len(answer_list))):
input_text = """
๋น์ ์ AI ๋น์์
๋๋ค. ๋ค์ ์ง๋ฌธ์ ๋ง๋ ๋ต๋ณ์ ๊ณ ๋ฅด์ธ์. ๋ต๋ณ์ 1,2,3,4 ์ค์ ํ๋๋ง ์ ํํ์ธ์.
๋ค์ ์ค ํ์ํ๋ฌผ์ ์ผ์ข
์ผ๋ก, ํฌ๋๋น์ ์ด์ค ๊ฒฐํฉ์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ ์์ฃผ ์ฌ์ฉ๋๋ ์คํ์ ์ฑ๋ถ์ ๋ฌด์์ธ๊ฐ?
์ ํ์ง: 1. ์
๋ฃฐ๋ก์ค์ค 2. ์๋น 3. ๋
น๋ง 4. ๊ธ๋ฆฌ์ฝ๊ฒ ๋ต๋ณ:"""
inputs = tokenizer(input_text, return_tensors="pt")
inputs = inputs.to("cuda:0")
# 3. ๋ชจ๋ธ์ ์ฌ์ฉํ ์ถ๋ก
with torch.no_grad():
outputs = model.generate(**inputs, max_length=1024,temperature=0.1, do_sample=True, repetition_penalty=1.10)
# 4. ๊ฒฐ๊ณผ ๋์ฝ๋ฉ
result = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(result.split("๋ต๋ณ:")[1].strip())
๊ฒฐ๊ณผ: '2. ์๋น์
๋๋ค. ์๋น์ ํฌ๋๋น์ด ๋ ๊ฐ์ ์ด์ค ๊ฒฐํฉ์ผ๋ก ์ด๋ฃจ์ด์ง ํํ๋ก ์กด์ฌํ๋ฉฐ, ์ฃผ๋ก ์คํ์ ์ฃผ์ ์ฑ๋ถ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
์
๋ฃฐ๋ก์ค์ค๋ ๋จ๋ฐฑ์ง, ๋
น๋ง์ ์๋ฌผ์ฑ ๋จ๋ฐฑ์ง, ๊ธ๋ฆฌ์ฝ๊ฒ์ ์ง๋ฐฉ๊ณผ ๊ด๋ จ๋ ๋จ๋ฐฑ์ง๋ก, ๋ชจ๋ ์คํ์ ์ฑ๋ถ์ด ์๋๋๋ค. ๋ฐ๋ผ์ ์ ๋ต์ 2์
๋๋ค.'
- Downloads last month
- 933