1. ์ •์˜ ๋ฐ ๋“ฑ์žฅ ๋ฐฐ๊ฒฝ

  • ์†Œํ˜• ์–ธ์–ด ๋ชจ๋ธ(Small Language Model, SLM)์€ ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜๊ฐ€ ์ˆ˜๋ฐฑ๋งŒ์—์„œ ์ˆ˜์‹ญ์–ต์œผ๋กœ ๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ(LLM)์˜ ์ˆ˜์ฒœ์–ตยท์ˆ˜์กฐ ํŒŒ๋ผ๋ฏธํ„ฐ๋ณด๋‹ค ์ž‘์Œ
  • ๊ฑฐ๋Œ€ํ•œ LLM์€ ๋›ฐ์–ด๋‚œ ๋ฒ”์šฉ ์„ฑ๋Šฅ์„ ๋ณด์ด์ง€๋งŒ ์ถ”๋ก  ๋น„์šฉยท์‘๋‹ต ์ง€์—ฐ์ด ํฌ๊ณ  ๋ฐ์ดํ„ฐ ํ”„๋ผ์ด๋ฒ„์‹œ ์šฐ๋ ค๊ฐ€ ์กด์žฌํ•จ
  • SLM์€ ์ ์€ ์ž์›์œผ๋กœ ๋น ๋ฅด๊ฒŒ ๋™์ž‘ํ•˜๋ฉฐ ์˜จํ”„๋ ˆ๋ฏธ์Šคยท๋ชจ๋ฐ”์ผ ๋“ฑ ์ œํ•œ๋œ ํ™˜๊ฒฝ์—์„œ๋„ ์˜คํ”„๋ผ์ธ ์‹คํ–‰ ๊ฐ€๋Šฅ
  • ๋„๋ฉ”์ธ ํŠนํ™” ์ง€์‹์„ ๊ต์ •ํ•˜๊ธฐ ์œ„ํ•œ ํŒŒ์ธํŠœ๋‹ ๋น„์šฉ์ด ๋‚ฎ์•„ ๊ธฐ์—…ยท๊ฐœ์ธ์ด ์ž์ฒด ๋ชจ๋ธ์„ ์†์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ
  • ๋”ฐ๋ผ์„œ ์ž‘์ง€๋งŒ ์ถฉ๋ถ„ํžˆ ๋˜‘๋˜‘ํ•œ ๋ชจ๋ธ์„ ์“ฐ์ž๋Š” ํ๋ฆ„๊ณผ ํ•จ๊ป˜ SLM์ด ๊ฐ๊ด‘๋ฐ›๊ณ  ์žˆ์Œ

2. ๋Œ€ํ‘œ์ ์ธ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ์˜คํ”ˆ์†Œ์Šค SLM

์•„๋ž˜ ๋ชจ๋ธ๋“ค์€ ๊ณต๊ฐœ ๊ฐ€์ค‘์น˜์™€ ์ฝ”๋“œ๊ฐ€ ์ œ๊ณต๋˜์–ด ์—ฐ๊ตฌยท์„œ๋น„์Šค ๋ชจ๋‘์— ํ™œ์šฉ ๊ฐ€๋Šฅ

  • TinyLLaMA(1.1B)

    • LLaMA2 ๊ธฐ๋ฐ˜ ์ดˆ์†Œํ˜• ๋ชจ๋ธ
    • ์•ฝ 1์กฐ ํ† ํฐ ์‚ฌ์ „ํ•™์Šต์œผ๋กœ ๋™๊ธ‰ ์ตœ๊ณ  ์ˆ˜์ค€ ๋‹ฌ์„ฑ
    • 1์–ต๊ฐœ ์ˆ˜์ค€์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๊ฒฝ๋Ÿ‰ PC๋‚˜ ์Šค๋งˆํŠธํฐ์—์„œ๋„ ์‹คํ–‰ ๊ฐ€๋Šฅ
  • Phi-2(2.7B)

    • Microsoft ์—ฐ๊ตฌํŒ€ ๋ฐœํ‘œ
    • 13B ๋ฏธ๋งŒ ๋ชจ๋ธ ์ค‘ ์ตœ์ƒ์œ„๊ถŒ ์„ฑ๋Šฅ์˜ ๋…ผ๋ฆฌยท์ถ”๋ก  ์„ฑ๋Šฅ
    • ์Šค์ผ€์ผ๋ง ๊ธฐ๋ฒ•๊ณผ ๋ฐ์ดํ„ฐ ํ๋ ˆ์ด์…˜ ๋•๋ถ„์— ์ตœ๋Œ€ 25๋ฐฐ ํฐ ๋ชจ๋ธ๊ณผ ๋งž๋จน๊ฑฐ๋‚˜ ๋Šฅ๊ฐ€ํ•˜๋Š” ์„ฑ๋Šฅ ๋‹ฌ์„ฑ

    ๋ฐ์ดํ„ฐ ํ๋ ˆ์ด์…˜ : '์ ์ง€๋งŒ ์ •์ œ๋œ ๊ต์žฌ + ๊ฒ€์ฆ๋œ ์›น'์„ ๋„ฃ์–ด ์ •๋ณด ๋ฐ€๋„์™€ ์•ˆ์ •์„ฑ ๊ทน๋Œ€ํ™”

    1. Synthetic ๊ต๊ณผ์„œ ์ƒ์„ฑ : GPT 3.5 Turbo๋กœ ๊ณผํ•™, ์ˆ˜ํ•™, ์ผ์ƒ, ์ƒ์‹ ๋“ฑ ์ƒ์‹์  ์ถ”๋ก ๊ณผ ์ผ๋ฐ˜ ์ง€์‹์„ ๊ฐ€๋ฅด์น˜๊ธฐ ์œ„ํ•ด ์—ฐ์Šต ๋ฌธ์ œ ๋ฐ ํ•ด์„ค์„ ์ƒ์„ฑ โ†’ ๋ชจ๋ธ์ด ์ถ”๋ก  ํŒจํ„ด์„ ํ•™์Šตํ•˜๋„๋ก ์„ค๊ณ„
    2. ์›น ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง : ๊ณ ํ’ˆ์งˆ ํฌ๋กค๋ง์„ GPT-4๋กœ ๋ฌธ๋‹จ๋ณ„ ํ‰๊ฐ€ํ•ด์„œ ์ ์ˆ˜ ๋‚ฎ์œผ๋ฉด ํ๊ธฐ
      โ†’ ๋…ธ์ด์ฆˆ ๋ฐ ํŽธํ–ฅ ๊ฐ์†Œ, ์•ˆ์ •์„ฑ ์ฆ๊ฐ€
    3. ์ฝ”๋“œ, ๋ฌธ์ œ ํ’€์ด ๋ณด๊ฐ• : The Stack, StackOverflow ์ผ๋ถ€ + ๋‹จ๊ณ„๋ณ„ ํ’€์ด๊ฐ€ ํฌํ•จ๋œ ํŒŒ์ด์ฌ ๊ต์žฌ ๋ฐ์ดํ„ฐ
      โ†’ ์ฝ”๋”ฉ, ์ˆ˜๋ฆฌ ์„ฑ๋Šฅ ๊ฐ•ํ™”
    4. ํ† ํฐ ์žฌํ™œ์šฉ ํ•™์Šต : 250B์˜ ๊ณ ํ’ˆ์งˆ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ pass ๋Œ๋ ค 1.4์กฐ ํ† ํฐ ๋ถ„๋Ÿ‰๋งŒํผ ํ•™์Šต
      โ†’ ๋ฐ์ดํ„ฐ ์ฆ๋ถ„ ์—†์ด ํ•™์Šต๋Ÿ‰์„ ๋Œ€ํ˜• ๋ชจ๋ธ ์ˆ˜์ค€์œผ๋กœ ๋งž์ถค

    ์Šค์ผ€์ผ๋ง ๊ธฐ๋ฒ• : teacher-student distillation + ๊ฐ€์ค‘์น˜ ์žฌ์‚ฌ์šฉ์œผ๋กœ ํ•™์Šต ํšจ์œจ์„ ๊ทน๋Œ€ํ™”

    • ๊ธฐ์กด ๋ฐฉ์‹ : ์ƒˆ ํŒŒ๋ผ๋ฏธํ„ฐ ์ „๋ถ€ ๋ฌด์ž‘์œ„ ์ดˆ๊ธฐํ™” ํ›„ ๋Œ€๊ทœ๋ชจ ํ•™์Šต
    • Phi-2 ๋ฐฉ์‹
      1. Phi-1.5 (1.3B) ๊ฐ€์ค‘์น˜๋ฅผ 2.7B ์•„ํ‚คํ…์ฒ˜์— ํŒจ๋”ฉ ๋ฐ ํƒ€์ผ๋ง ๋ณต์‚ฌ
      2. distillation์„ ํ†ตํ•ด Phi-1.5๋ฅผ teacher ๋ชจ๋ธ๋กœ ์ถœ๋ ฅ ๋ถ„ํฌ ํ•™์Šต
      3. ์ถ”๊ฐ€ attention head์™€ ๊ฐ™์€ ์ƒˆ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” gradual unfreezing1์œผ๋กœ ์ ์ง„์  ํ•™์Šต
  • Mistral 7B(7.3B)

    • Mistral AI ๋ชจ๋ธ๋กœ ๊ณต๊ฐœ ๋‹น์‹œ ๋™๊ธ‰ ์ตœ๊ณ  ์„ฑ๋Šฅ ๊ธฐ๋ก
    • Llama2 13B๋ฅผ ๋Šฅ๊ฐ€ํ•˜๊ณ  Apache-2.0 ๋ผ์ด์„ ์Šค๋กœ ์ž์œ  ์‚ฌ์šฉ
    • GQA (๊ทธ๋ฃน ์ฟผ๋ฆฌ ์–ดํ…์…˜)ยทSWA (์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ์–ดํ…์…˜) ๋“ฑ ์ถ”๋ก  ์ตœ์ ํ™” ๊ธฐ์ˆ  ์ ์šฉํ•ด ๊ธด ๋ฌธ๋งฅ ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌ

    GQA : Multi-head attention์˜ ๊ณ„์‚ฐ/๋ฉ”๋ชจ๋ฆฌ ๋น„์šฉ ์ ˆ๊ฐ ๋ฐ ์„ฑ๋Šฅ ์œ ์ง€

    • ์—ฌ๋Ÿฌ attention head๊ฐ€ query๋Š” ๊ฐœ๋ณ„์ ์œผ๋กœ key, value๋Š” ๊ทธ๋ฃน ๋‹จ์œ„๋กœ ์—ฐ์‚ฐ
    • ๊ธฐ์กด dense attention๊ณผ ๊ฑฐ์˜ ๊ฐ™์€ ์„ฑ๋Šฅ์„ ๋‚ด๋ฉด์„œ ๋ฉ”๋ชจ๋ฆฌ, ์—ฐ์‚ฐ๋Ÿ‰์€ ๋Œ€ํญ ๊ฐ์†Œ
    • ์ฐธ๊ณ 

    SWA : ๊ธด ์‹œํ€€์Šค ์ž…๋ ฅ์—์„œ attention ์—ฐ์‚ฐ์„ ํšจ์œจ์ ์œผ๋กœ ํ•˜๋„๋ก ๊ฐœ์„ 

    • ๊ฐ ํ† ํฐ์ด ์ „์ฒด ํ† ํฐ์„ ๋ณด์ง€ ์•Š๊ณ , ์ž์‹ ์„ ์ค‘์‹ฌ์œผ๋กœ ํ•œ ์ผ์ • ํฌ๊ธฐ์˜ ์Šฌ๋ผ์ด๋”ฉ ์œˆ๋„์šฐ ๋‚ด ํ† ํฐ๋งŒ ์ฐธ์กฐ
    • ๋ฉ”๋ชจ๋ฆฌ, ์—ฐ์‚ฐ๋Ÿ‰ ์„ ํ˜•์œผ๋กœ ๊ฐ์†Œํ•˜๊ณ  ๊ธด ์ปจํ…์ŠคํŠธ์—์„œ๋„ ๋น ๋ฅธ ์ถ”๋ก  ๊ฐ€๋Šฅ
    • ์ฐธ๊ณ 
  • DistilBERT(66M)

    • ๊ตฌ๊ธ€ BERT ์ง€์‹ ์ฆ๋ฅ˜ ๊ธฐ๋ฒ•์œผ๋กœ ์••์ถ•ํ•˜์—ฌ 40% ๋ชจ๋ธ ์ถ•์†Œยท60% ์ถ”๋ก  ๊ฐ€์†์—๋„ ์ •ํ™•๋„ 95 % ์ด์ƒ ์œ ์ง€
    • ๋ฌธ์„œ ๋ถ„๋ฅ˜, ์งˆ์˜์‘๋‹ต ๋“ฑ ์–ธ์–ด ์ดํ•ด ์ž‘์—…์—์„œ BERT์— ์ค€ํ•˜๋Š” ์„ฑ๋Šฅ์„ ํ›จ์”ฌ ์ ์€ ์ž์›์œผ๋กœ ๋‚ผ ์ˆ˜ ์žˆ์Œ
    • 2020๋…„ ์ดˆ๋ถ€ํ„ฐ ์‚ฐ์—…๊ณ„์—์„œ ๋งŽ์ด ํ™œ์šฉ
  • Gemma ์‹œ๋ฆฌ์ฆˆ(2B~27B)

    • Google์ด ๊ฐœ๋ฐœํ•œ Gemini ๊ธฐ๋ฐ˜ ๊ฒฝ๋Ÿ‰ ๋ชจ๋ธ๊ตฐ
      • 1์„ธ๋Œ€ : 2B/7B ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์—ฌ์–ด์™€ ์ฝ”๋“œ/์ˆ˜ํ•™ ๋ฐ์ดํ„ฐ ์œ„์ฃผ ํ•™์Šต
      • 2์„ธ๋Œ€ : 2B/9B/27B ๋“ฑ์œผ๋กœ ์„ฑ๋Šฅ ํ–ฅ์ƒน
    • Gemma3๋Š” 10์—ฌ๊ฐœ ์–ธ์–ด์—์„œ ์ง€์› ๋ฒ”์œ„๋ฅผ 140๊ฐœ ์ด์ƒ ์–ธ์–ด๋กœ ํ™•๋Œ€, 128k ๋ฌธ๋งฅยท๋ฉ€ํ‹ฐ๋ชจ๋‹ฌ ์ง€์›๊นŒ์ง€ ํ™•์žฅ, ๋ชจ๋ฐ”์ผยท์›น์—๋„ ๋ฐฐํฌ ๊ฐ€๋Šฅํ•˜๋„๋ก ์ตœ์ ํ™”

3. ๋Œ€ํ˜• LLM ๋Œ€๋น„ SLM์˜ ๊ฐ•์ ยท์•ฝ์ 

๋Œ€ํ˜• ๋ชจ๋ธ๊ณผ ์†Œํ˜• ๋ชจ๋ธ์„ ์šฉ๋„๋ณ„๋กœ ๋ณ‘ํ–‰ ์‚ฌ์šฉํ•˜๋Š” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์ „๋žต์ด ํ™•์‚ฐ ์ค‘

๊ฐ•์  : ๊ฒฝ๋Ÿ‰ํ™”์—์„œ ์˜ค๋Š” ํšจ์œจ์„ฑ
  • ๋‚ฎ์€ ์ธํ”„๋ผ ๋น„์šฉ๊ณผ ์ „๋ ฅ ์†Œ๋น„ โ†’ ์˜จํ”„๋ ˆ๋ฏธ์Šค ์„œ๋ฒ„๋‚˜ ๋‹จ๋ง๊ธฐ์—์„œ ์ง์ ‘ ๋Œ๋ฆด ์ˆ˜ ์žˆ์Œ
  • ๋„คํŠธ์›Œํฌ ์™•๋ณต ์—†๋Š” ๋ฐ€๋ฆฌ์ดˆ ์‘๋‹ต โ†’ IoT๊ธฐ๊ธฐ๋‚˜ ์Šค๋งˆํŠธํฐ ์Œ์„ฑ๋น„์„œ, ์ฑ—๋ด‡ ์‹ค์‹œ๊ฐ„ ๊ตฌ๋™์— ์ ํ•ฉ
  • ์†Œ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋กœ ๋น ๋ฅธ ํŒŒ์ธํŠœ๋‹ ๊ธฐ์—… ๋‚ด๋ถ€ ์ง€์‹ ๋ฐ˜์˜ ์‰ฌ์›€
  • ๊ธฐ๊ธฐ ๋‚ด ์ถ”๋ก ์œผ๋กœ ๋ฏผ๊ฐ ์ •๋ณด ์œ ์ถœ ์ตœ์†Œํ™” โ†’ ์˜๋ฃŒ, ๊ธˆ์œต ๋ถ„์•ผ์—์„œ ํด๋ผ์šฐ๋“œ LLM๋ณด๋‹ค๋Š” ์˜จํ”„๋ ˆ๋ฏธ์Šค SML ์ˆ˜์š” ํผ
์•ฝ์  : ์ง€์‹ ๋ฒ”์œ„์™€ ๋ฒ”์šฉ์„ฑ ํ•œ๊ณ„
  • ํ•™์Šต ๋ฐ์ดํ„ฐ ๋ฒ”์œ„๊ฐ€ ์ข์•„ ์ผ๋ฐ˜ ์ƒ์‹ ์ปค๋ฒ„๋ฆฌ์ง€ ํ•œ๊ณ„
  • Emergent capability (๋Œ๋ฐœ์  ๋Šฅ๋ ฅ) ๋ถ€์กฑ์œผ๋กœ ๋ณต์žกํ•œ ์ถ”๋ก  ๋ฐ ๋‹ค๋‹จ๊ณ„ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ ์—ด์„ธ โ†’ ํŠน๋ณ„ํ•œ ํ›ˆ๋ จ ์ „๋žต์œผ๋กœ ๋ณด์™„ ํ•„์š” (Phi-2 ์‚ฌ๋ก€)
  • ๋„๋ฉ”์ธ ์™ธ ์งˆ๋ฌธ์—์„œ ํ™˜๊ฐ ๊ฐ€๋Šฅ์„ฑ ์ฆ๊ฐ€ โ†’ ํŠน์ • ๋„๋ฉ”์ธ์— ๊ณผ์ ํ•ฉ
  • ์ œ๋Œ€๋กœ ์“ฐ๋ ค๋ฉด ๋ชจ๋ธ ๊ฒฝ๋Ÿ‰ํ™”ยทํŠœ๋‹ ๊ธฐ์ˆ  ์ดํ•ด ํ•„์š” โ†’ ํฐ ๋ชจ๋ธ์€ API ๋ฐ”๋กœ ์จ๋„ ๋˜์ง€๋งŒ ์ž‘์€ ๋ชจ๋ธ์„ ์ œ๋Œ€๋กœ ์“ฐ๋ ค๋ฉด ๊ฒฝ๋Ÿ‰ํ™”๋‚˜ ํŒŒ์ธํŠœ๋‹ ์—ญ๋Ÿ‰ ํ•„์š”

4. ์—ฃ์ง€ยท์˜จ๋””๋ฐ”์ด์Šค ํ™œ์šฉ ์‚ฌ๋ก€ ๋ฐ ๊ธฐ์ˆ  ์š”๊ฑด

์†Œํ˜• ์–ธ์–ด ๋ชจ๋ธ์˜ ๊ฐ€์žฅ ํฐ ํ™œ์šฉ์ฒ˜ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์—ฃ์ง€ ์ปดํ“จํŒ…๊ณผ ์˜จ๋””๋ฐ”์ด์Šค AI
๋ชจ๋‘ ํด๋ผ์šฐ๋“œ ์˜์กด ์—†์ด ๋™์ž‘ํ•ด ์ €์ง€์—ฐยทํ”„๋ผ์ด๋ฒ„์‹œ, ์˜คํ”„๋ผ์ธ ๊ฐ€์šฉ์„ฑ ์ธก๋ฉด์—์„œ ์žฅ์ ์ด ํผ

  • ๋ชจ๋ฐ”์ผ ๋””๋ฐ”์ด์Šค
    • 7B ๋ชจ๋ธ์„ 4-bit ์–‘์žํ™”ํ•˜๋ฉด 3 ~ 4GB ๋ฉ”๋ชจ๋ฆฌ๋กœ ์‹คํ–‰ ๊ฐ€๋Šฅํ•ด 12GB RAM ์Šค๋งˆํŠธํฐ์—์„œ ์‹คํ–‰ ๊ฐ€๋Šฅ
    • Google์ด Gemma 3 ๋“ฑ SLM 10์—ฌ ์ข…์„ ์˜จ๋””๋ฐ”์Šค์ด์Šค๋กœ ๊ตฌ๋™ํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ œ๊ณต
  • IoTยท์ž„๋ฒ ๋””๋“œ
    • ๊ณต์žฅ ์„ค๋น„๊ฐ€ ์ž์ฒด SLM์œผ๋กœ ์„ผ์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์‹œ๊ฐ„ ํ•ด์„
    • ๋„คํŠธ์›Œํฌ ์ง€์—ฐ์ด๋‚˜ ์—ฐ๊ฒฐ ๋ถˆ์•ˆ์— ์˜ํ–ฅ ๋ฐ›์ง€ ์•Š์•„ ์‹ค์‹œ๊ฐ„ ์ œ์–ด์™€ ์•ˆ์ •์„ฑ ํ–ฅ์ƒ
    • SLM์„ ๊ฒฝ๋Ÿ‰ ํ”„๋ ˆ์ž„์›Œํฌ (C++/๋งˆ์ดํฌ๋กœ๋Ÿฐํƒ€์ž„)๋กœ ๊ตฌ๋™ํ•˜๊ณ , ๋ชจ๋ธ์„ 8-bit ์ดํ•˜ ์ €์ •๋ฐ€ ์–‘์žํ™”ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ์ค„์ด๋Š” ๊ธฐ์ˆ ์ด ํ•„์š”
  • ์›น ๋ธŒ๋ผ์šฐ์ €
    • WebGPU+WebLLM์œผ๋กœ 7B ๋ชจ๋ธ์„ ๋ธŒ๋ผ์šฐ์ € ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œํ•ด ์˜คํ”„๋ผ์ธ ์ฑ—๋ด‡ ๊ตฌํ˜„
    • ์„ค์น˜์—†์ด ๋™์ž‘ํ•˜๊ณ  ํ”„๋ผ์ด๋ฒ„์‹œ ์ง€ํ‚ค๋ฉด์„œ AI ๊ธฐ๋Šฅ ์ œ๊ณต
  • ๋ฉ€ํ‹ฐ๋ชจ๋‹ฌยทRAG
    • Gemma 3 ๋ฉ€ํ‹ฐ๋ชจ๋‹ฌ variant๊ฐ€ ์˜จ๋””๋ฐ”์ด์Šค์—์„œ ์ด๋ฏธ์ง€ยท์Œ์„ฑ์„ ์ง์ ‘ ์ฒ˜๋ฆฌ
    • ์ž‘์€ ๋ชจ๋ธ + RAG๋กœ ์ง€์‹ ๋ณด์™„ โ†’ ํšŒ์‚ฌ ๋‚ด๋ถ€ ๋ฌธ์„œ๋ฅผ ํœด๋Œ€ํฐ์—์„œ ๊ฒ€์ƒ‰ + ์งˆ์˜์‘๋‹ต ํ•ด์ฃผ๋Š” ๊ธฐ์—…์šฉ ์ฑ—๋ด‡์œผ๋กœ ํ™œ์šฉ

๋ชจ๋ธ ์ตœ์ ํ™” ๋ฐ ๊ฒฝ๋Ÿ‰ํ™”๊ฐ€ ํ•„์ˆ˜๋กœ ๋ณดํ†ต 4-bit ์ •๋ฐ€๋„๋กœ ์–‘์žํ™”ํ•œ ggml/GGUF ํฌ๋งท ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜๊ณ  C++ ๊ธฐ๋ฐ˜ ์ถ”๋ก ์—”์ง„์„ ํ†ตํ•ด GPU ์—†์ด CPU ๋งŒ์œผ๋กœ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ๊ฒŒ ์„ธํŒ…์ด ํ•„์š”
๋˜ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ์™€ ๋ฐœ์—ด๋„ ๊ณ ๋ คํ•ด์•ผํ•ด์„œ ํ•„์š”์‹œ ์ €์šฉ๋Ÿ‰ ๋ชจ๋ธ (3B ์ดํ•˜) ์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ํ”„๋ ˆ์ž„ ๋‹จ์œ„๋กœ ๋กœ๋“œ/์–ธ๋กœ๋“œํ•˜๋Š” ๊ธฐ๋ฒ• ํ™œ์šฉ

ggml๊ณผ GGUF

  • ggml : C/C++๋กœ ๊ตฌํ˜„๋œ ๊ฒฝ๋Ÿ‰ ํ…์„œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
    • ๋ฉ”๋ชจ๋ฆฌ ์ ˆ์•ฝ, SIMD ์ตœ์ ํ™”, ๋‹ค์–‘ํ•œ ์–‘์žํ™” ์ง€์›
    • ๋ชฉ์  : GPU ์—†์ด๋„ ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ LLM์„ ๋น ๋ฅด๊ฒŒ ๊ตฌ๋™
  • GGUF : ggml ๊ธฐ๋ฐ˜ ๋ชจ๋ธ์„ ์ €์žฅํ•˜๋Š” ์ƒˆ๋กœ์šด ํ†ตํ•ฉ ํŒŒ์ผ ํฌ๋งท
    • GGML Universal Format์˜ ์•ฝ์ž
    • ๋ชจ๋ธ ๊ตฌ์กฐ/๋ฉ”ํƒ€์ •๋ณด ํ‘œ์ค€ํ™”

5. ์‚ฐ์—… ๋„์ž… ์‚ฌ๋ก€

  • ์€ํ–‰ : ๊ณ ๊ฐ์ง€์› ์ฑ—๋ด‡์— 7B ํ•œ๊ตญ์–ด SLM+RAG๋ฅผ ์ ์šฉํ•ด ์—ฐ๊ฐ„ API ๋น„์šฉ ์ˆ˜์–ต ์› ์ ˆ๊ฐ
  • ์ง€๋ฐฉ์ž์น˜๋‹จ์ฒด : ๋ฏผ์› Q&A๋ฅผ ์˜จํ”„๋ ˆ๋ฏธ์Šค 7B ๋ชจ๋ธ๋กœ 24์‹œ๊ฐ„ ์ž๋™ ์‘๋‹ต
  • ์Šคํƒ€ํŠธ์—… : ๊ต์žฌ PDF ์š”์•ฝยท๋ฌธ์ œ ์ถœ์ œ, ์•ฑ์— Mistral 7B ๋‚ด์žฅํ•ด์„œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ ์™ธ๋ถ€ ์ „์†ก ์—†์Œ
  • ์ œ์กฐ ๊ธฐ์—… : ์‚ฌ๋‚ด ๊ธฐ์ˆ  ์œ„ํ‚ค๋ฅผ ๋ฒกํ„ฐ DB๋กœ ๊ตฌ์ถ•, 7B ์ฑ—๋ด‡์ด ์ตœ์‹  ๋ฌธ์„œ ๊ธฐ๋ฐ˜ ๋‹ต๋ณ€ ์ œ๊ณต
  • ์ „์ž์ƒ๊ฑฐ๋ž˜ : ๋ฆฌ๋ทฐ ๋ฐ์ดํ„ฐ ํ•™์Šต, 300M ํŒŒ๋ผ๋ฏธํ„ฐ ์‡ผํ•‘ ํŠนํ™” SLM ์˜คํ”ˆ์†Œ์Šค ๊ณต๊ฐœ

6. ํ›ˆ๋ จ ๋ฐ ํŒŒ์ธํŠœ๋‹ ์ „๋žต

SLM ์ œ์ž‘ยทํ™œ์šฉ์„ ์œ„ํ•œ ํ•ต์‹ฌ ๊ฒฝ๋Ÿ‰ํ™” ๊ธฐ๋ฒ•

  • Knowledge Distillation
    • ๋Œ€์šฉ๋Ÿ‰ teacher ๋ชจ๋ธ์˜ ์ง€์‹์„ ์†Œํ˜• student ๋ชจ๋ธ์— ์ „๋‹ฌํ•˜์—ฌ ์„ฑ๋Šฅ์„ ๋†’์ด๋Š” ๊ธฐ๋ฒ•
    • student ๋ชจ๋ธ์€ ํ•™์Šต ๊ณผ์ •์—์„œ teacher ๋ชจ๋ธ์˜ ์ถœ๋ ฅ ๋ถ„ํฌ ๋ชจ๋ฐฉํ•˜๋„๋ก ํ•™์Šต โ†’ ํฐ ๋ชจ๋ธ ์ˆ˜์ค€์˜ ์ถ”๋ก  ๋Šฅ๋ ฅ ๊ฐ–์ถ”๊ฒŒ ๋จ
    • ๋Œ€๊ทœ๋ชจ Pre-training ๋‹จ๊ณ„์—์„œ ์ ์šฉ๋˜๊ธฐ๋„ ํ•˜๊ณ  ํŠน์ • ๋‹ค์šด์ŠคํŠธ๋ฆผ ํƒœ์Šคํฌ์— ๋Œ€ํ•ด ๋ฏธ์„ธ์กฐ์ •ํ•  ๋•Œ ์‚ฌ์šฉ
  • Quantization
    • ๋ชจ๋ธ์˜ ๊ฐ€์ค‘์น˜์™€ ์—ฐ์‚ฐ์„ ๊ณ ์ •์†Œ์ˆ˜์ ์˜ ์ €์ •๋ฐ€๋„ ํ‘œํ˜„ (8-bit or 4-bit)์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ธฐ๋ฒ•
    • ํ•™์Šต ์ค‘ (QAT) ํ˜น์€ ํ•™์Šต ํ›„ (PTQ)์— ์ ์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ PTQ์˜ ๊ฒฝ์šฐ ์ถ”๊ฐ€ ํ•™์Šต ์—†์ด ๋ชจ๋ธ ์ค„์ผ ์ˆ˜ ์žˆ๊ณ  QAT๋Š” ์ข€ ๋” ๋ณต์žกํ•˜์ง€๋งŒ ์ •ํ™•๋„ ์ €ํ•˜ ์ตœ์†Œํ™”
    • ์—ฐ์‚ฐ ์‹œ์—๋„ ์บ์‹œ ์ ์ค‘์œจ์ด ๋†’์•„ ์ถ”๋ก  ๋นจ๋ผ์ง€๋Š” ํšจ๊ณผ๋„ ์žˆ์Œ
    • 8-bitยท4-bit ์–‘์žํ™”๋Š” ์„ฑ์ˆ™ ๋‹จ๊ณ„์ด๊ณ  3-bit ์–‘์žํ™” ์—ฐ๊ตฌ ์ค‘
  • LoRA2
    • ํŒŒ์ธํŠœ๋‹ ์‹œ ๋ชจ๋“  ๊ฐ€์ค‘์น˜ ์—…๋ฐ์ดํŠธํ•˜์ง€ ์•Š๊ณ  ๊ฐ€์ค‘์น˜ ํ–‰๋ ฌ์„ ์ €๋žญํฌ ํ–‰๋ ฌ๋กœ ๋ถ„ํ•ดํ•˜์—ฌ ๊ทนํžˆ ์ผ๋ถ€๋งŒ ํ•™์Šตํ•ด ํŒŒ๋ผ๋ฏธํ„ฐ ์ˆ˜์ฒœ๋ถ„์˜ ์ผ๋กœ ์ถ•์†Œ
    • ๊ฐ ๋ ˆ์ด์–ด์˜ ๊ฐ€์ค‘์น˜ ๋ฅผ ๋‘ ๊ฐœ์˜ ์ž‘์€ ํ–‰๋ ฌ ๊ณฑ์œผ๋กœ ๋‚˜ํƒ€๋‚ด ๋กœ ๊ทผ์‚ฌํ•˜๊ณ , ๋งŒ ์ดˆ๊ธฐํ™”ํ•˜์—ฌ ํ•™์Šต
    • ์ถ”๋ก  ์‹œ์—๋„ ์ €๋žญํฌ ๋ณด์กฐ ํ–‰๋ ฌ๋งŒ ์ถ”๊ฐ€ ๊ณ„์‚ฐํ•˜๋ฉด ๋˜์–ด ์ถ”๋ก  ์†๋„์— ๊ฑฐ์˜ ์˜ํ–ฅ ์ฃผ์ง€ ์•Š์Œ
  • QLoRA
    • 4-bit ์–‘์žํ™” ๋ชจ๋ธ ์œ„ LoRA ์ ์šฉํ•ด์„œ 65์–ต~330์–ต ๊ธ‰ ๋ชจ๋ธ๋„ ๋‹จ์ผ 48GB GPU์—์„œ ํŒŒ์ธํŠœ๋‹ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์„ฑ๋Šฅ์€ 99% ์ด์ƒ ์œ ์ง€
    • ์ €๋น„์šฉ์œผ๋กœ ๊ฑฐ๋Œ€ ๋ชจ๋ธ์„ ๋„๋ฉ”์ธ ํŠนํ™” ๋ฐ์ดํ„ฐ์— ๋ฏธ์„ธํŠœ๋‹ํ•˜๋Š” ํ‘œ์ค€ ๊ธฐ์ˆ ๋กœ ๊ฐ๊ด‘
  • Pruning
    • ์‹ ๊ฒฝ๋ง์—์„œ ๊ธฐ์—ฌ๋„ ๋‚ฎ์€ ๊ฐ€์ค‘์น˜๋ฅผ ์ œ๊ฑฐํ•ด ๋ชจ๋ธ ๊ฒฝ๋Ÿ‰ํ™” โ†’ ์ ˆ๋Œ€๊ฐ’ ์ž‘์€ ๊ฐ€์ค‘์น˜, ๊ธฐ์—ฌ๋„ ๋‚ฎ์€ ๋‰ด๋Ÿฐ ์ œ๊ฑฐ
    • ์ •ํ™•๋„ ์ €ํ•˜๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ถ”๊ฐ€ ํŒŒ์ธํŠœ๋‹์œผ๋กœ ํšŒ๋ณต
    • ๋ชจ๋ธ ์ถ”๋ก  ์‹œ ๊ณ„์‚ฐ๋Ÿ‰์„ ์ค„์ด์ง€๋งŒ ํ˜„๋Œ€ transformer์—์„œ๋Š” ๊ตฌ์กฐ์  pruning ์•„๋‹ˆ๋ฉด ํฐ ํšจ๊ณผ ์—†์–ด์„œ N:M sparsity ๋“ฑ ํ•˜๋“œ์›จ์–ด ์นœํ™”์  ๊ธฐ๋ฒ•๊ณผ ์—ฐ๊ตฌ

๊ตฌ์กฐ์  Pruning : ์‹ ๊ฒฝ๋ง์˜ ๊ตฌ์กฐ ๋‹จ์œ„๋กœ ํ†ต์งธ๋กœ ์ž˜๋‚˜๋‚ด๋Š” pruning

  • ์žฅ์  : ๊ตฌ์กฐ ์ „์ฒด๊ฐ€ ์‚ฌ๋ผ์ง€๋ฏ€๋กœ ์—ฐ์‚ฐ๋Ÿ‰ ๋ฉ”๋ชจ๋ฆฌ ์†๋„ ๊ฐœ์„  ํšจ๊ณผ ๋งค์šฐ ํผ
  • ๋‹จ์  : ์ •๋ฐ€ํ•˜์ง€ ๋ชปํ•˜๋ฉด ์„ฑ๋Šฅ ์ €ํ•˜ ์œ„ํ—˜
  • ์˜ˆ์‹œ
    • CNN์—์„œ ํ•„ํ„ฐ (์ฑ„๋„) ๋‹จ์œ„๋กœ ์ œ๊ฑฐ
    • Transformer์—์„œ Attention head ๋‹จ์œ„๋กœ ์ œ๊ฑฐ
  • ์ฐธ๊ณ 

N:M Sparsity : N ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ ์ค‘ M๊ฐœ๋งŒ ๋‚จ๊ธฐ๊ณ  ๋‚˜๋จธ์ง€๋Š” 0์œผ๋กœ ๋งŒ๋“œ๋Š” ํŒจํ„ดํ™”๋œ ๋น„๊ตฌ์กฐ์  sparsity

  • ๊ฐ weight chunk๋งˆ๋‹ค ๊ณ ์ •๋œ N:M ๊ทœ์น™์œผ๋กœ ์ œ๊ฑฐ
  • ์žฅ์  : GPU/AI chip ๋“ฑ์—์„œ ์ „์šฉ sparsity ๊ฐ€์† ์ง€์›, ๋ฉ”๋ชจ๋ฆฌ์™€ ์—ฐ์‚ฐ๋Ÿ‰ ํ™•์‹คํžˆ ๊ฐ์†Œ
  • ๋‹จ์  : ๊ตฌ์กฐ์  pruning ๋งŒํผ ์‰ฌ์šด ์„ค๊ณ„์•„๋‹ˆ๊ณ  ๋„ˆ๋ฌด ํฐ N:M์ด๋ฉด ์„ฑ๋Šฅ ์ €ํ•˜ ์œ„ํ—˜
  • ์ฐธ๊ณ 

7. ํ•ต์‹ฌ ํˆดํ‚ท ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ

  • llama.cpp
    • LLaMA ๊ณ„์—ด ๋ชจ๋ธ์„ CPU ์ƒ์—์„œ ๋Œ๋ฆฌ๊ธฐ ์œ„ํ•ด ๋งŒ๋“  C++ ์ถ”๋ก  ์—”์ง„
    • ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋ฅผ GGUF 4-bit ์œผ๋กœ ๋ณ€ํ™˜ํ•ด ์‚ฌ์šฉํ•˜๋ฉฐ ์•„์ฃผ ์ ์€ ๋ฉ”๋ชจ๋ฆฌ๋กœ CPUยท๋ชจ๋ฐ”์ผ์—์„œ LLM ์ถ”๋ก  ๊ฐ€๋Šฅ
    • ์‚ฌ์‹ค์ƒ ๋กœ์ปฌ LLM ์‹คํ–‰์˜ ํ‘œ์ค€ ๋„๊ตฌ
  • ggml
    • llama.cpp์—์„œ๋„ ํ™œ์šฉ๋œ ๊ณ ์„ฑ๋Šฅ ํ…์„œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
    • ์˜จ๋””๋ฐ”์ด์Šค ์ถ”๋ก ์„ ์œ„ํ•œ ๊ฒฝ๋Ÿ‰ ๋ชจ๋ธ์˜ ํ•ต์‹ฌ
    • GGUF ํฌ๋งท ๋„์ž…์œผ๋กœ ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด ์ตœ์ ํ™”
  • Ollama
    • llama.cpp๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๋กœ์ปฌ LLM ์‹คํ–‰/๊ด€๋ฆฌ ํ”Œ๋žซํผ
    • ๋ชจ๋ธ ๋‹ค์šด๋กœ๋“œยท์„œ๋น™์„ CLI ํ•œ ์ค„๋กœ ์ฒ˜๋ฆฌ
    • Modelfile๋งŒ ์ž‘์„ฑํ•˜๋ฉด ํ•„์š”ํ•œ ๋ชจ๋ธ์„ ๋ฐ›๊ณ  ๋กœ์ปฌ inference API ์—ด์–ด์คŒ (Docker-like ์šด์˜)
    • ๊ธฐ์—… ํ˜„์žฅ์—์„œ ์—ฌ๋Ÿฌ ๊ฒฝ๋Ÿ‰ ๋ชจ๋ธ ์šด์šฉ์— ์œ ์šฉํ•œ ๋„๊ตฌ
  • Hugging Face Transformers
    • Python ๊ธฐ๋ฐ˜ ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์ˆ˜์ฒœ ๊ฐœ ์ด์ƒ์˜ ๋ชจ๋ธ์„ ์‰ฝ๊ฒŒ ๋ถˆ๋Ÿฌ์™€ ์ถ”๋ก ํ•˜๊ฑฐ๋‚˜ ํŒŒ์ธํŠœ๋‹ ๊ฐ€๋Šฅ
    • ๋Œ€ํ˜• LLM๋ถ€ํ„ฐ SML, LoRAยท์–‘์žํ™”ยทPEFT ๋“ฑ ์ตœ์‹  ๊ธฐ๋Šฅ ํ†ตํ•ฉ
    • ์—ฐ๊ตฌ์ž ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๊ฐ€์žฅ ๋„๋ฆฌ ์“ฐ์ด๋Š” LLM/SML ํˆดํ‚ท

8. ํ–ฅํ›„ ์ „๋ง๊ณผ ํ•œ๊ณ„

  • ๋Œ€ํ˜• LLM๊ณผ SLM์˜ ์—ญํ• ์ด ๋ถ„ํ™”ยท์ƒํ˜ธ๋ณด์™„์  ๊ตฌ์กฐ๋กœ ์ •์ฐฉ๋  ์ „๋ง โ†’ ๊ฐ„๋‹จํ•œ ์š”์ฒญ์€ SLM, ๋ณต์žกํ•œ ์š”๊ตฌ๋Š” LLM๊ฐ™์€ ์ง€๋Šฅํ˜• ๋ผ์šดํŒ…
  • ๊ณ ํ’ˆ์งˆ ๋ฐ์ดํ„ฐ์™€ ๊ตฌ์กฐ ํ˜์‹ ์œผ๋กœ ์ž‘์€ ๋ชจ๋ธ๋„ 128k ๋ฌธ๋งฅยท๋ฉ€ํ‹ฐ๋ชจ๋‹ฌ ์ฒ˜๋ฆฌ ๋Šฅ๋ ฅ์„ ํ™•๋ณด ์ค‘
  • ๋Œ€ํ˜• ๋ชจ๋ธ ๊ธฐ๋Šฅ์˜ ๊ฒฝ๋Ÿ‰ํ™” ์ถ”์„ธ ์ด์–ด์ง€๊ณ  ์—ฌ๋Ÿฌ ์†Œํ˜• ๋ชจ๋ธ ์•™์ƒ๋ธ” ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ์ฆ๊ฐ•์œผ๋กœ ์™ธ๋ถ€ ์ง€์‹ ํ™œ์šฉํ•˜๋Š” ๊ตฌ์กฐ ์ฆ๊ฐ€ํ•  ๊ฒƒ
  • ์ฐฝ์˜์  ๊ธ€์“ฐ๊ธฐยทํฌ๊ท€ ์–ธ์–ด ๋“ฑ ๊ณ ๋‚œ๋„ ๊ณผ์ œ๋Š” ๋Œ€ํ˜• ๋ชจ๋ธ์ด ์—ฌ์ „ํžˆ ์šฐ์œ„
  • ์˜คํ”ˆ์†Œ์Šค ์ƒํƒœ๊ณ„ ํ™•์žฅ์œผ๋กœ ํ•œ๊ตญ์–ดยท๋‹ค๊ตญ์–ด SLM์ด ๊ณ„์† ๋Š˜์–ด๋‚˜๋ฉฐ ๊ฒฝ๋Ÿ‰ AI ๋Œ€์ค‘ํ™”๋ฅผ ๊ฐ€์†

Footnotes

  1. ํŒŒ๋ผ๋ฏธํ„ฐ์˜ lock์„ ์กฐ๊ธˆ์”ฉ ํ’€์–ด๊ฐ€๋ฉฐ ํ•™์Šต์‹œํ‚ค๋Š” ์ „๋žต. ํŒŒ์ธํŠœ๋‹ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ชจ๋ธ ์ „์ฒด์— ๋ฌด์ž‘์ • ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๊ฒŒ ์•ˆ์ •์ ์œผ๋กœ ์„ฑ๋Šฅ ์†์‹ค ์—†์ด ์„ธ๋ฐ€ํ•˜๊ฒŒ ๋„๋ฉ”์ธ ์ ์‘ ์œ ๋„ โ†ฉ

  2. Low-Rank Adaptation โ†ฉ