YAML Metadata
Warning:
empty or missing yaml metadata in repo card
(https://huggingface.co/docs/hub/model-cards#model-card-metadata)
2023 ์ฑ๊ท ๊ด๋ ํ๊ณ์ง์ค ์ฐํํ๋ ฅํ๋ก์ ํธ VAIV
GPT ๊ธฐ๋ฐ์ ์์ฐ์ค๋ฝ๊ณ (Friendly) ์ค๋ฆฌ์ ์ธ(Harmless) ์ผ์ ๋ํํ ์ฑ๋ด ๋ชจ๋ธ
Github : https://github.com/VAIV-2023/RLHF-Korean-Friendly-LLM
์ฐ๊ตฌ ๋ฐฐ๊ฒฝ ๋ฐ ๋ชฉ์
GPT-NEOX(Polyglot-ko) ๊ธฐ๋ฐ ์์ฐ์ค๋ฝ๊ณ ์ค๋ฆฌ์ ์ธ ํ๊ตญ์ด ๊ธฐ๋ฐ ์ผ์ ๋ํํ ์ฑ๋ด ๋ชจ๋ธ ๊ตฌํ
๊ฐ๋ฐ ๋ด์ฉ
Self-Instruct: GPT4๋ฅผ ์ด์ฉํ ๋ฐ์ดํฐ ์ฆ๊ฐ
RLHF(Reinforcement Learning from Human Feedback): ์ฌ๋์ ์ ํธ๋๋ฅผ ๋ฐ์ํ ๊ฐํํ์ต
DeepSpeed: ๋๊ท๋ชจ ๋ถ์ฐ ๋ฅ๋ฌ๋์ ์ํ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ์ต์ ํ ๊ธฐ์
- Task 1: ๊ฐํํ์ต ๋จ๊ณ๋ณ ๋ฐ์ดํฐ์ ๊ตฌ์ถ
- Task 2: SFT ๋ชจ๋ธ Instruction-tuning
- Task 3: Reward ๋ชจ๋ธ ver1,2,3 ๊ตฌํ
- Task 4: RLHF์ DeepSpeedChat์ ํตํ ์ต์ข ๋ชจ๋ธ ๊ตฌํ (https://huggingface.co/Trofish/KULLM-RLHF)
Task1. ๊ฐํํ์ต ๋จ๊ณ๋ณ ๋ฐ์ดํฐ์ ๊ตฌ์ถ
Task2. SFT ๋ชจ๋ธ Fine-tuning
Baseline Model
- ๊ณ ๋ ค๋ํ๊ต NLP & AI ์ฐ๊ตฌ์ค๊ณผ HIAI ์ฐ๊ตฌ์๊ฐ ๊ฐ๋ฐํ ํ๊ตญ์ด LLM "KULLM" ์ฌ์ฉ
Datasets
SFT Model Finetuning
- ๋ชจ๋ธํ์ต์๋ Google Colab์์ ์ ๊ณตํ๋ A100 40GB GPU ์ฌ์ฉ
SFT Model Evaluation
- G-Eval: https://arxiv.org/abs/2303.16634
Task3-1. Reward Model ver1 ๊ตฌํ
Baseline Model
- EleutherAI์์ ๊ฐ๋ฐํ ์ด๊ฑฐ๋ ํ๊ตญ์ด ์ธ์ด ๋ชจ๋ธ Polyglot-Ko ์ฌ์ฉ
- 1.3b ๋ชจ๋ธ๊ณผ 5.8b ๋ชจ๋ธ์ ๊ฐ๊ฐ ์คํ
Datasets
- InstructGPT์ ๋ฐ์ดํฐ์
๊ตฌ์ถ ๋ฐฉ๋ฒ
- Reward ๋ชจ๋ธ ํ์ต ๋ฐ์ดํฐ์ ์ผ๋ก SFT ํ์ต์ ์ฌ์ฉํ prompt(1,500๊ฐ - ์ผ์๋ํ:ํ์คํํ=2:1)์ ์๋ก์ด prompt(1,000๊ฐ - DeepSpeedChat ๋ฒ์ญ ๋ฐ์ดํฐ์ ) ์ฌ์ฉ
- SFT ๋ชจ๋ธ์์ ํ๊ฐ์ prompt๋น K๊ฐ์ Response๋ฅผ ์์ฑํ๊ณ , ์์๋ฅผ Labeling
- ๋ฐ์ดํฐ์
๋ผ๋ฒจ๋ง
- Instruct GPT์ ๊ฒฝ์ฐ ์ฌ๋์ด ์ง์ Labeling์ ํ์ฟ์ง๋ง, ์ผ๊ด๋ ํ๊ฐ์ ์๊ฐ ๋จ์ถ์ ์ํด GPt-4์ G-Eval์ ์ด์ฉ
- SFT์์ ์์ฑํ ๋ Response ์ค G-Eval ํ๊ฐ ์ ์ ํฉ์ด ๋์ ๊ฒ์ Chosen response๋ก ๊ฒฐ์
- ๋ฐ์ดํฐ์ ์ ํ๋ณ๋ก G-Eval ํ๊ฐ Prompt์ ์ฐจ์ด๋ฅผ ๋์์
Reward v1 Model Finetuning
- InstructGPT ๋ ผ๋ฌธ์ ๋ฐ๋ฅด๋ฉด, Reward ๋ชจ๋ธ์ overfitting๋๋ฉด ์ฑ๋ฅ์ด ํฌ๊ฒ ์ ํ๋๋ค๊ณ ํจ --> epoch ์๋ฅผ 1๋ก ์ค์
- batch size๋ learning rate ๋ฑ ๋ค๋ฅธ hyper-parameter๋ ์ฑ๋ฅ์ ํฐ ์ํฅ์ด ์๋ค๊ณ ํจ
- Colab A100 40GB ๊ธฐ์ค ์ด ํ์ต ์๊ฐ 4๋ถ
Reward v1 Model Evaluation
- Reward Model Template
- "์๋๋ ์์ ์ ์ค๋ช ํ๋ ๋ช ๋ น์ด์ ๋๋ค. ์์ฒญ์ ์ ์ ํ ์๋ฃํ๋ ์๋ต์ ์์ฑํ์ธ์. \n\n ### ๋ช ๋ น์ด:\n{prompt}\n\n ### ์๋ต:\n"
Task3-2. Reward Model ver2 ๊ตฌํ
Reward Model ver1 Issues
- ๊ตฌํ๋ Reward Model์ ์ฑ๋ฅ์ด ์ข์ง ์์ (Accuracy 0.65)
- Reward Model ver1์ ์ฌ์ฉํ์ฌ Step3 ํ์ต์ ํ์คํํ์ด ์๋๋ฐ๋ ํ์คํํ์ด๋ผ๊ณ ์ธ์ํ๊ณ ๋ต๋ณํ๋ ๋ฌธ์ ๋ฐ์
Issue ํด๊ฒฐ๋ฐฉ์
- SFT ๋ชจ๋ธ๋ก ๋ต๋ณ์ 2๊ฐ ์์ฑํ์์ ๋(Ver1), Chosen, Rejected ๋ต๋ณ์ ์ฐจ์ด๊ฐ ํฌ๊ฒ ์์ด ๋ชจ๋ธ์ด ํ์ต๋์ง ์๋ ํ์์ ๋ฐฉ์งํ๊ธฐ ์ํ์ฌ 2๊ฐ์ ๋ชจ๋ธ **(ChatGPT, SFT)**๋ฅผ ์ฌ์ฉํ์ฌ ๋ต๋ณ์ ์์ฑ(Ver2)
- General Task ๋ต๋ณ์ ๋ํ ํ๊ฐ ์ฑ๋ฅ์ ๋์ด๊ธฐ ์ํด Evol-instruct ๋ฐ์ดํฐ ์ถ๊ฐ
- ํ์ต์ ์ฌ์ฉํ ๋ชจ๋ ๋ฐ์ดํฐ์ ์ 15 token ์ดํ, cosine ์ ์ฌ๋ 0.5 ์ด์์ผ ๊ฒฝ์ฐ ์ ๊ฑฐํ๋ Filtering ์์ ์ํ
- ํ์คํํ ํ์ต์(Ver1) Step3 ๊ฐํํ์ต ์ดํ์ ๋ต๋ณ์ด ์ด์ํ๊ฒ ์์ฑ๋๋ Issue๊ฐ ์์ด, ํ์คํํ์ ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐํ๊ณ ํ์ต(Ver2)
- RM-ver1์ GPT4๊ฐ Chosen, Rejected ๋ ์ด๋ธ๋ง์ ์งํํ์์ง๋ง, Resource ์ด์๋ก ์ธํด ์ผ๋ถ๋ง ์ฌ๋์ด ๋ผ๋ฒจ๋ง ์งํ
- ์ผ์๋ํ ๋ฐ์ดํฐ์
- ChatGPT์ SFT ๋ชจ๋ ์ผ๊ด๋๊ฒ ๋์ ํ๋ฆฌํฐ์ ๋ต๋ณ์ ์์ฑํ์ง ์์, ์ฌ๋์ด ์ง์ ๋ผ๋ฒจ๋ง ์งํ
- RLHF ํ๊ตญ์ด ๋ฒ์ญ, Evol-Instruct ๋ฐ์ดํฐ์
- ChatGPT๊ฐ ์ผ๊ด๋๊ฒ ๋์ ํ๋ฆฌํฐ์ ๋ต๋ณ์ ์์ฑํ์ฌ ChatGPT๋ฅผ Chosen, SFT๋ฅผ Rejected๋ก ๋ผ๋ฒจ๋ง ์งํ
- ์ผ์๋ํ ๋ฐ์ดํฐ์
Reward Model ver2 Evaluation
Task4. RLHF์ DeepSpeedChat์ ํตํ ์ต์ข ๋ชจ๋ธ ๊ตฌํ
- Microsoft์์ ๋ง๋ ๋๊ท๋ชจ ๋ถ์ฐ ๋ฅ๋ฌ๋์ ์ํ ์๋ก์ด ๋ฉ๋ชจ๋ฆฌ ์ต์ ํ ๊ธฐ์ (DeepSpeed)์ RLHF Process์ ์ ์ฉํ DeepSpeedChat ์ฌ์ฉ
- Human preference๋ก ํ์ต์ ์ํจ Reward ๋ชจ๋ธ๊ณผ ๊ฐํํ์ต์ ํตํด SFT ๋ชจ๋ธ์ ์ฌ๋์ ์ ํธ๋๋ฅผ ๋ฐ์ํ์ฌ ์์ฐ์ค๋ฝ๊ณ (FRIENDLY), ์ค๋ฆฌ์ ์ธ (HARMLESS) ์ฑ๋ด ์์ฑ
Baseline Models
- Actor Model: KULLM-SFT-V2
- Reward Model: Polyglot-Ko-Reward-V3
Training Options
RLHF Training
- ํ์ต ๊ฒฐ๊ณผ, SFT ๋ชจ๋ธ์ ๋ต๋ณ์ ๋ํ ํ๋ฆฌํฐ์ธ Reward๊ฐ ์์นํ๋ ๊ฒ์ ํ์ธ (์ฌ๋์ ์ ํธ๋๊ฐ ๋์ ๋ต๋ณ์ ์์ฑ)
RLFH Model Evaluation
Final RLHF Model
Contributors ๐
- ๋ฐ์ฑ์ (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 20ํ๋ฒ, waniboyy@gmail.com)
- ์กํ๋น (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 20ํ๋ฒ, shbin0519@gmail.com)
- ํ์ ๋ฏผ (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 21ํ๋ฒ, ymheo1123@gmail.com)
- ํ์ฌ์ (์ฑ๊ท ๊ด๋ํ๊ต ์ํํธ์จ์ดํ๊ณผ 20ํ๋ฒ, ryeowon13@gmail.com)
- Downloads last month
- 4,425
This model does not have enough activity to be deployed to Inference API (serverless) yet. Increase its social
visibility and check back later, or deploy to Inference Endpoints (dedicated)
instead.