๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

AI/LLM project

[Gukbap-LLM๐Ÿš] - ์˜คํ”ˆ์†Œ์Šค LLM์œผ๋กœ ์ž์ฒด ๋ฐ์ดํ„ฐ์…‹ ์ƒ์„ฑํ•ด์„œ SOTA ๋‹ฌ์„ฑํ•˜๊ธฐ

๋ฐ˜์‘ํ˜•

Gukbap Models๐Ÿš


Introduction

์˜คํ”ˆ์†Œ์Šค LLM๋งŒ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ GPT-4๋ฅผ ๋„˜์–ด ํ•œ๊ตญ์–ด ์ตœ๊ณ  ๋ ˆ๋ฒจ์„ ๋‹ฌ์„ฑ๐Ÿ”ฅ

์•ˆ๋…•ํ•˜์„ธ์š”! ์˜ค๋žœ๋งŒ์— LLM ํ”„๋กœ์ ํŠธ๋กœ ์ธ์‚ฌ๋“œ๋ฆฌ๋Š” kyujinpy ์ž…๋‹ˆ๋‹ค๐Ÿค—

์ž‘๋…„์— ๋ฌด์ˆ˜ํžˆ ๋งŽ์€ ์ผ๋“ค์ด ์žˆ์—ˆ๋Š”๋ฐ์š”..! ๋งˆ์ปค AI๋Š” ์ž์ฒด ๋ฐ์ดํ„ฐ์…‹๊ณผ LLM์„ ๋งŒ๋“œ๋Š”๋ฐ ์ง‘์ค‘์„ ํ•˜๊ณ  ์žˆ๋Š” ์ค‘์ž…๋‹ˆ๋‹ค!๐Ÿค”

์ €ํฌ๊ฐ€ ๊ฐ€์žฅ ์‹ฌ๊ฐํ•˜๊ฒŒ ๋ณด๊ณ  ์žˆ๋Š” ๋ฌธ์ œ๋Š” ๋ฐ”๋กœ, 'OpenAI ์˜์กด์„ฑ' ์ž…๋‹ˆ๋‹ค!

 

์˜ค๋Š˜๋‚  ์ˆ˜๋งŽ์€ ์—ฌ๋Ÿฌ SOTA ๋ชจ๋ธ๋“ค์€ ํ•ด์™œ/๊ตญ๋‚ด๋ฅผ ๋ชจ๋‘ ํฌํ•จํ•˜์—ฌ private model (ChatGPT, GPT4 ๋“ฑ)์„ ํ™œ์šฉํ•˜์—ฌ ์ƒ์„ฑํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ํ†ตํ•ด LLM ํ›ˆ๋ จ์„ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ์˜ˆ์‹œ๋กœ๋Š”, Orca, Ultrafeedback, OpenHermes ๋“ฑ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ•˜์ง€๋งŒ, ์ €ํฌ๋Š” ์œ„์™€ ๊ฐ™์€ ํ๋ฆ„์ด ์–ธ์  ๊ฐ€๋Š” private model์˜ ์ด์šฉ ์•ฝ๊ด€์— ์œ„๋ฐฐ๋  ์ˆ˜๋„ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋Œ€ํ‘œ์ ์œผ๋กœ OpenAI์˜ license์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ง์ด ๋ช…์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค: "โš ๏ธ์‚ฌ์šฉ ์ œํ•œ: OpenAI์˜ ๊ฒฝ์Ÿํ•˜๊ธฐ ์œ„ํ•œ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ.โš ๏ธ" 

์ฆ‰, private model์„ ํ†ตํ•ด ๋งŒ๋“  ๋ฐ์ดํ„ฐ๋กœ๋Š” ์ €์ž‘๊ถŒ์ด๋‚˜ ๊ถŒํ•œ์ด ์ข…์†๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์–ธ์  ๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

ํ•˜์ง€๋งŒ ์ €ํฌ๊ฐ€ ์ด๋ฒˆ์— ๋ฐœํ‘œํ•œ, Gukbap-LLM์€ private model์ด ์•„๋‹Œ open-source model์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ณด๋‹ค ์ž์œ ๋กœ์šด ์ž์ฒด LLM์„ ๋งŒ๋“ค์—ˆ๋‹ค๋Š” ์ ์— ํฐ ์˜์˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค!๐Ÿ˜Ž๐Ÿ˜Ž


 

How to solve?

์ €ํฌ๋Š” ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด์„œ, ์—ฌ๋Ÿฌ ๋…ผ๋ฌธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ 2๊ฐ€์ง€ ๊ด€์ ์—์„œ ์ง‘์ค‘์žˆ๊ฒŒ ๋ฐ”๋ผ๋ณด์•˜์Šต๋‹ˆ๋‹ค

  • ํ›ˆ๋ จ์— ํ•„์š”ํ•œ ์ตœ์ ์˜ ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜ (LIMA)
  • Open-source model๋กœ ๊ณ ํ’ˆ์งˆ์˜ ๋ฐ์ดํ„ฐ ์ƒ์„ฑ ๋ฐฉ๋ฒ• (WizardLM-2)

์ž์ฒด ๋ฐ์ดํ„ฐ์…‹์„ ๊ฐ€์ง€๋Š” ๊ฒƒ์€ ์ƒ๊ฐ๋ณด๋‹ค ์–ด๋ ค์šด ์ผ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๋Š” ๊ฒƒ๊ณผ ์ฆ๊ฐ•ํ•˜๋Š”๋ฐ ์ˆ˜๋งŽ์€ ์ธ๋ ฅ๊ณผ ์‹œ๊ฐ„์ด ํ•„์š”ํ•˜๊ณ , ๋ฐ์ดํ„ฐ๊ฐ€ ๊ณ ํ’ˆ์งˆ์ด๋ผ๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๊ธฐ์ค€์ด ๋ฌด์—‡์ธ์ง€๋„ ์ •์˜ํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด, ๊ณต๊ฐœ๋˜์–ด ์žˆ๋Š” ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ์…‹์€ ์„ฑ๋Šฅ์ด ๋ณด์žฅ๋˜๊ณ  ๊ฐœ์ˆ˜๋„ ๋ฌด์ˆ˜ํžˆ ๋งŽ์ง€๋งŒ, ์ƒ์—…์  ์ด์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฑฐ๋‚˜ ChatGPT or GPT4๋กœ ๋Œ€๋ถ€๋ถ„ ์ƒ์„ฑ๋˜์–ด ์ œ์•ฝ์—†์ด ํ™œ์šฉํ•˜๊ธฐ๊ฐ€ ๋งค์šฐ ํž˜๋“ญ๋‹ˆ๋‹ค.

 

Evolving system

์ด๋Ÿฌํ•œ ์ƒํ™ฉ์—์„œ ์ €ํฌ๋Š” ๋ฐ์ดํ„ฐ ์ƒ์„ฑ ๊ธฐ๋ฒ•์„ WizardLM ๋…ผ๋ฌธ์—์„œ ์˜๊ฐ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

WizardLM์—์„œ๋Š” 'evolving' ๋ฐ์ดํ„ฐ ์ฆ๊ฐ•๊ธฐ๋ฒ•์„ ์†Œ๊ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค!๐Ÿฆพ

์ ์€ ๊ฐœ์ˆ˜์˜ SEED dataset์„ ํ›ˆ๋ จ์ด ์•„์ฃผ ์ž˜๋œ LLM์„ ํ†ตํ•ด์„œ, ๋‚˜๋ฌด๊ฐ€ ๋ฟŒ๋ฆฌ๋ฅผ ๋ป—์–ด๋‚˜๊ฐ€๋“ฏ์ด, ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ฆ๊ฐ•์‹œํ‚ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค! ์ค‘์š”ํ•œ ํฌ์ธํŠธ๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์ฆ๊ฐ•๋  ๋•Œ, ๋‹ค์–‘ํ•œ ์ฃผ์ œ์™€ ๋„๋ฉ”์ธ์„ ํฌํ•จํ•˜๊ณ , ๋” ๊นŠ์€ ์งˆ๋ฌธ์œผ๋กœ ๋ป—์–ด๋‚˜๊ฐˆ ์ˆ˜ ์žˆ๋„๋ก prompt๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค!

 

ํ•˜์ง€๋งŒ api ํ‚ค๋‚˜ ์„œ๋ฒ„๋ฅผ ๋นŒ๋ ค์„œ LLM์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๋Š”๋ฐ ์‹œ๊ฐ„๊ณผ ๋น„์šฉ์ด ๋ฐœ์ƒํ•˜๋‹ˆ, LIMA ๋…ผ๋ฌธ์„ ํ†ตํ•ด์„œ ๋ฐ์ดํ„ฐ ๊ฐœ์ˆ˜์— ๋Œ€ํ•œ ํžŒํŠธ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.

LIMA๋Š” LLM์„ ํ›ˆ๋ จ์‹œํ‚ค๋Š”๋ฐ 1,000๊ฐœ์˜ training ๋ฐ์ดํ„ฐ์…‹๊ณผ 50๊ฐœ์˜ validation set์„ ํ™œ์šฉํ•˜์—ฌ๋„ ์ถฉ๋ถ„ํ•˜๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์—ฌ์ฃผ์—ˆ๊ณ , ์ €ํฌ๋Š” ์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์†Œ๊ทœ๋ชจ ๋ฐ์ดํ„ฐ์…‹์œผ๋กœ LLM์„ ํ›ˆ๋ จ์‹œํ‚ค๋Š” ๊ฒƒ์œผ๋กœ ๋ชฉํ‘œ๋ฅผ ์„ค์ •ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.๐Ÿ’ช

 

WizardLM + LIMA ๋ฐฉ๋ฒ•๋ก ์„ ํ†ตํ•ด์„œ,

500๊ฐœ์˜ SEED dataset์„ ์ž์ฒด์ ์œผ๋กœ ๋งŒ๋“ค๊ณ , WizardLM-2 ๋ชจ๋ธ์„ ํ†ตํ•ด์„œ 1849๊ฐœ์˜ training-set๊ณผ 200๊ฐœ์˜ validation-set์„ ์ž์ฒด์ ์œผ๋กœ ์ œ์ž‘ํ•˜์—ฌ ๊ณต๊ฐœ๋œ open-source model๋ฅผ fine-tuning ํ•˜์˜€์Šต๋‹ˆ๋‹ค!

 

์ €ํฌ๊ฐ€ ๋งŒ๋“  Gukbap-Mistral, Qwen2, Gemma2 ๋ชจ๋ธ์€ SFT ๋ฐฉ๋ฒ•๋งŒ ํ™œ์šฉํ•˜์—ฌ ํ›ˆ๋ จ์‹œ์ผฐ๊ณ ,

logickor ๋ฆฌ๋”๋ณด๋“œ์—์„œ ํ‰๊ฐ€๋ฅผ ์ง„ํ–‰ํ•œ ๊ฒฐ๊ณผ, ํ•œ๊ตญ์–ด ๊ธฐ๋ฐ˜ LLM SOTA๋ฅผ ๋‹ฌ์„ฑํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค!โœŒ๏ธ


Logickor Leaderboard

์ €ํฌ๋Š” Gukbap-LLM ๋ชจ๋ธ์˜ ์šฐ์ˆ˜์„ฑ์„ ์ž…์ฆํ•˜๊ธฐ ์œ„ํ•ด์„œ, logickor ๋ฆฌ๋”๋ณด๋“œ๋ฅผ ํ†ตํ•ด ๋ชจ๋ธ์˜ ๊ฐœ๋ณ„ ์„ฑ๋Šฅ์„ ์ธก์ •ํ–ˆ์Šต๋‹ˆ๋‹ค

Models ์‹ฑ๊ธ€ํ„ด / ๋ฉ€ํ‹ฐํ„ด (zero-shot) ํŠน์ด์‚ฌํ•ญ
HumanF-MarkrAI/Gukbap-Gemma2-9B 8.93 / 8.62 ํ•œ๊ตญ์–ด LLM SOTA
HumanF-MarkrAI/Gukbap-Qwen2-7B 7.02 / 6.38 <7B LLM ์ดํ•˜ SOTA
HumanF-MarkrAI/Gukbap-Mistral-7B 6.40 / 5.71 Mistral ๊ธฐ๋ฐ˜ ํ•œ๊ตญ์–ด LLM SOTA

 

์ €ํฌ๊ฐ€ ๋งŒ๋“  ๊ฐ๊ฐ์˜ ๋ชจ๋ธ๋“ค์€ ์ƒˆ๋กœ์šด ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค! ๊ฐ base-model์—์„œ ์ƒˆ๋กœ์šด SOTA ์„ฑ๋Šฅ์„ ๊ธฐ๋กํ–ˆ๋‹ค๋Š” ์ ์—์„œ ํฐ ์˜์˜๊ฐ€ ์žˆ์—ˆ๊ณ , ๋”๋ถˆ์–ด Gemma2 ๊ธฐ๋ฐ˜์˜ Gukbap LLM์€ SOTA ์„ฑ๋Šฅ์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค!

 

๋˜ํ•œ, ์ผ๋ถ€ ์ง€ํ‘œ์—์„œ openai์˜ GPT4 ๋ฐ google์˜ gemini-1.5๋ฅผ ๋›ฐ์–ด๋„˜์—ˆ๋‹ค๋Š” ์ ์—์„œ๋„ '์ œ์•ฝ์—†๋Š” ์ž์ฒด LLM์œผ๋กœ GPT4์™€ ๋น„์Šทํ•œ ์„ฑ๋Šฅ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค'๋Š” ๊ฐ€๋Šฅ์„ฑ์„ ๋ณด์—ฌ์ฃผ์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

*๋‹ค์–‘ํ•œ ๋ชจ๋ธ์— ๋Œ€ํ•œ ์„ฑ๋Šฅํ‰๊ฐ€๋Š” Logickor link์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!


์•ž์œผ๋กœ๋„ ์ข‹์€ ์—ฐ๊ตฌ๋ฅผ ์œ„ํ•ด์„œ ๊ณ„์† ์—ด์‹ฌํžˆ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

๊ธด ๊ธ€ ์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค ๐Ÿค— ๐Ÿค—


2024.09.15 kyujinpy ์ž‘์„ฑ

๋ฐ˜์‘ํ˜•