LUCATHREE.COM

โ† Back to list

music-gen

์Œ์•… ์ƒ์„ฑ AI ์„œ๋น„์Šค๋ฅผ ์œ„ํ•œ ์ฝ”์–ด ์Œ์› ์ƒ์„ฑ ์‹œ์Šคํ…œ

๐Ÿข POZA Labs
|ํŒ€์› 2๋ช…
|2022. 11. ~ 2024. 11.
PythonFastAPIMongoDBMySQLDjangoAWS

ย 
AI ์Œ์•… ์Šคํƒ€ํŠธ์—… ํฌ์ž๋žฉ์Šค์—์„œ ์ž์ฒด AI ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์Œ์›์„ ์ƒ์„ฑํ•˜๋Š” ์ฝ”์–ด ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์„ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
ํ•ด๋‹น ์‹œ์Šคํ…œ์„ ํ†ตํ•ด ์ƒ์„ฑ๋œ ์Œ์›์€ ํฌ์ž๋žฉ์Šค์˜ B2C ์„œ๋น„์Šค viodio์™€ laive์— API๋ฅผ ํ†ตํ•ด ์ œ๊ณต๋˜๊ฑฐ๋‚˜ ๊ฐ์ข… B2B ์‚ฌ์—…์„ ์œ„ํ•ด ํŒŒ์ผ ํ˜•ํƒœ๋กœ ์ œ๊ณต๋˜์–ด ์‚ฌ์šฉ๋์Šต๋‹ˆ๋‹ค.
(๋ณธ ๊ธ€์—์„œ ํฌ์ž๋žฉ์Šค์˜ ์ฃผ์š” ๊ธฐ์ˆ ๊ณผ ๊ด€๋ จ๋œ ๋‚ด์šฉ๋“ค์€ ํฌ๊ด„์ ์œผ๋กœ ์„ค๋ช…ํ•˜๊ฑฐ๋‚˜ ์ƒ๋žต๋˜์—ˆ์Šต๋‹ˆ๋‹ค.)
ย 

๊ธฐ๋Šฅ ์š”์•ฝ

  • ์žฅ๋ฅด, ๋ฐ•์ž, ์‚ฌ์šฉ์•…๊ธฐ ๋“ฑ์˜ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ๊ธฐ๋ฐ˜ ์Œ์› ์ƒ์„ฑ
    • ์ž์ฒด AI ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•œ ์ƒ˜ํ”Œ(์Œ์› ์กฐ๊ฐ) ๋ฐ ๊ฐ€์‚ฌ ์ƒ์„ฑ
    • ์Œ์•… ๊ตฌ์„ฑ์— ๋”ฐ๋ฅธ ์ƒ˜ํ”Œ ๋ฐฐ์น˜/์กฐํ•ฉ ์ž‘์—…
    • ์™ธ๋ถ€ API๋ฅผ ํ†ตํ•œ ์Œ์› ๊ฐ€๊ณต ์ฒ˜๋ฆฌ
  • ์ƒ์„ฑ๋œ ์Œ์›, ์ƒ˜ํ”Œ ๋ฐ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ
  • ๊ฐœ๋ณ„ ์Œ์›์— ๋Œ€ํ•œ ์„œ๋น„์Šค ๋‚ฉํ’ˆ ๋‚ด์—ญ ๊ด€๋ฆฌ
  • LLM ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์„ ํ†ตํ•œ ์ž์—ฐ์–ด ์š”์ฒญ์˜ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜
ย 

์ฃผ์š” ์ž‘์—… ๋ฐ ์„ฑ๊ณผ

๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ ์žฌ๊ตฌ์ถ•

๋ฌธ์ œ: ๊ธฐ์กด ์Œ์› ์ƒ์„ฑ ์‹œ์Šคํ…œ์˜ ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์ด ๋–จ์–ด์ ธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ๋ฐ ์‹ ๊ทœ ๋น„์ฆˆ๋‹ˆ์Šค ์ง„ํ–‰์— ๋ถ€์ ํ•ฉ
โ€” ๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ์˜ ์žฌ๊ตฌ์ถ• ์ž‘์—… ์ง„ํ–‰
  • ํ”„๋กœ๋•ํŠธ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ Django์—์„œ FastAPI๋กœ ์ด์ „
    • Django+DRF์˜ ํ”„๋ ˆ์ž„์›Œํฌ ๊ฐ•์ œ์„ฑ์ด ์ง™์–ด ์œ ์—ฐ์„ฑ์ด ๋‚ฎ์Œ
    • Django์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฌด๊ฑฐ์šด ๊ธฐ๋Šฅ๋“ค์ด ํ”„๋กœ์ ํŠธ์— ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค๊ณ  ํŒ๋‹จ
  • MySQL RDB ๊ธฐ๋ฐ˜์—์„œ MongoDB NoSQL DB๋กœ ๋ณ€๊ฒฝ
    • ์Œ์› ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์˜ ์Šคํ‚ค๋งˆ ๋ณ€๊ฒฝ์ด ์žฆ์œผ๋ฉฐ ์ƒ์„ฑ ๋‚ด์—ญ, ๊ฐœ๋ณ„ ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ ๋“ฑ ์˜์†ํ™” ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋“ค์˜ ๊ด€๊ณ„์„ฑ์ด ์ ์–ด ์„ฑ๋Šฅ์ƒ ์ด์ ์„ ๊ฐ€์ ธ๊ฐ€๊ธฐ ์œ„ํ•ด MongoDB ์‚ฌ์šฉ ๊ฒฐ์ •
  • Redis+Celery ์กฐํ•ฉ์˜ ๋น„๋™๊ธฐ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ์—์„œ AWS SQS+ECS Task ์กฐํ•ฉ์œผ๋กœ ๋ณ€๊ฒฝ
    • ์Œ์› ์ƒ์„ฑ ์ž‘์—…์˜ ๋ฉ”๋ชจ๋ฆฌ ๋ถ€๋‹ด์ด ์ปค ๋‹ค์ˆ˜์˜ ์ž‘์—…๋“ค์„ Celery ์ธ์Šคํ„ด์Šค์—์„œ ์žฅ์‹œ๊ฐ„ ์‹คํ–‰ํ–ˆ์„ ๋•Œ ์žฆ์€ ์—๋Ÿฌ ๋ฐœ์ƒ โ†’ ์ž‘์—…์ด ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ๊ฐœ๋ณ„ Task ์ปจํ…Œ์ด๋„ˆ์—์„œ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๊ตฌ์กฐ ๋ณ€๊ฒฝ

์Œ์› ์ƒ์„ฑ ํŒŒ์ดํ”„๋ผ์ธ ๋ถ„๋ฆฌ ์ž‘์—…

๋ฌธ์ œ: ์ „์ฒด ์Œ์› ์ƒ์„ฑ ๊ณผ์ •์ด ํ•˜๋‚˜์˜ ํ•จ์ˆ˜ ์•ˆ์— ๊ตฌ์ถ•๋˜๊ณ  ๊ฐ•ํ•˜๊ฒŒ ๊ฒฐํ•ฉ๋˜์–ด ์žˆ์–ด ์ƒ์„ฑ ๋ฐฉ์‹์ด๋‚˜ ์กฐ๊ฑด์„ ์ˆ˜์ •ํ•˜๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์— ๋งž์ถฐ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ธฐ ์–ด๋ ค์›€
โ€” ๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ ์žฌ๊ตฌ์ถ• ๊ณผ์ •์˜ ์ผํ™˜์œผ๋กœ ์Œ์› ์ƒ์„ฑ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹จ๊ณ„๋ณ„๋กœ ๋ถ„๋ฆฌ.
  • ์Œ์› ์ƒ์„ฑ์˜ ๊ฐ ๋‹จ๊ณ„๋ฅผ ํ•จ์ˆ˜ํ˜•์œผ๋กœ ๊ตฌํ˜„, ๋ถ„๋ฆฌ
  • ์ƒ์„ฑ ๋‹จ๊ณ„๋ฅผ ํ•˜๋‚˜์˜ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ดํ„ฐ๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ํŒจํ„ด ๋Œ€์‹  ์ƒ์„ฑ ์กฐ๊ฑด๊ณผ ๋‹จ๊ณ„ ๋ณ„ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ๊ฐ ์„œ๋น„์Šค๊ฐ€ ์ด๋ฒคํŠธ๋ฅผ ๊ตฌ๋…ํ•˜๊ณ  ๋ฐ˜์‘ํ•˜๋Š” ์ฝ”๋ ˆ์˜ค๊ทธ๋ž˜ํ”ผ ํŒจํ„ด ์ ์šฉ
  • ์ž‘์—… ์ˆœ์„œ ๋ฐ ์‹คํ–‰ ์‹œ๊ฐ„์— ๋Œ€ํ•œ ์˜์กด์„ฑ์„ ํ•ด์†Œ
    • ์กฐ๊ฑด ์ƒ ๋ถˆํ•„์š”ํ•œ ์ž‘์—…์€ ์ƒ๋žต ๊ฐ€๋Šฅํ•˜๋„๋ก ๋ณ€๊ฒฝ
    • ์š”๊ตฌ์‚ฌํ•ญ์— ๋”ฐ๋ผ ํŠน์ • ์ž‘์—…์„ ์šฐ์„  ์ˆ˜ํ–‰ํ•˜๋„๋ก ๋ช…๋ นํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅ
    • ์ž‘์—…์ด ์‹คํŒจํ•œ ๊ฒฝ์šฐ ๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„์—์„œ ์žฌ์‹œ์ž‘์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ์ง€๋‚ฌ์–ด๋„ ์žฌ์‹œ์ž‘์ด ๊ฐ€๋Šฅ

์Œ์› ์ƒ์„ฑ ์‹œ๊ฐ„ ๋‹จ์ถ• ์ž‘์—…

๋ฌธ์ œ: ์‚ฌ์šฉ์ž์—๊ฒŒ ์‹ค์‹œ๊ฐ„ ์Œ์› ์ œ๊ณต ๋ฐ ๋น„์ฆˆ๋‹ˆ์Šค ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ์„ ์œ„ํ•ด ์Œ์› ์ƒ์„ฑ์— ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์˜ ๋‹จ์ถ•์ด ํ•„์š”
โ€” 3๋ถ„ ๋‚ด์™ธ์˜ ์Œ์› ๊ธฐ์ค€ ์ตœ์†Œ 10๋ถ„, ์ตœ๋Œ€ 30๋ถ„์ด ์†Œ์š”๋˜๋˜ ์Œ์› ์ƒ์„ฑ ์‹œ๊ฐ„์˜ ๋‹จ์ถ• ์ž‘์—… ์ง„ํ–‰
  • ์ƒ˜ํ”Œ ํŒŒ์ผ I/O ์‹œ๊ฐ„ ๋‹จ์ถ•์„ ์œ„ํ•œ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋”ฉ ์ ์šฉ
  • ๋ถˆํ•„์š”ํ•œ ์ค‘๋ณต I/O ์ž‘์—…์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ๋ฆฌํŒฉํ„ฐ๋ง
  • ์™ธ๋ถ€ API ํ†ต์‹  ๋ ˆ์ด์–ด์˜ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ
  • ํ•„์ˆ˜์ ์ด์ง€ ์•Š์€ ๋‹จ๊ณ„๋Š” ์„ ํƒ์ ์œผ๋กœ ๊ฑฐ์น  ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ์„ 
โ‡’ R&D ํŒ€์˜ AI ๋ชจ๋ธ์˜ ์„ฑ๋Šฅ ๊ฐœ์„  ์ž‘์—…๊ณผ ๋ Œ๋”๋ง ์‹œ์Šคํ…œ ๊ฐœ๋ฐœํŒ€์˜ midi2wav ๋ Œ๋”๋ง ์‹œ๊ฐ„ ๋‹จ์ถ•๊นŒ์ง€ ๋‹คํ•˜์—ฌ ์ƒ์„ฑ ์‹œ๊ฐ„์„ ์ตœ์†Œ 3๋ถ„๊นŒ์ง€ ๋‹จ์ถ•

LLM์„ ์ด์šฉํ•œ ์‚ฌ์šฉ์ž ์š”์ฒญ ๋ณ€ํ™˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„

๋ฌธ์ œ: ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋งž์ถค ์Œ์›์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ทธ์— ๋งž๋Š” ์ •ํ™•ํ•œ ์Œ์› ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
โ€” LLM์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ์ž์—ฐ์–ด ์š”๊ตฌ์‚ฌํ•ญ์„ ์ ์ ˆํ•œ ์Œ์› ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • AWS Bedrock์„ ์‚ฌ์šฉํ•˜์—ฌ ์‚ฌ์šฉ์ž ์š”์ฒญ์„ ๋ณ€ํ™˜ํ•˜๋Š” ํ”Œ๋กœ์šฐ ๊ตฌ์„ฑ
    • ํ”„๋กฌํ”„ํŠธ ์ฒด์ด๋‹ ์ ์šฉ
    • ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ํ‚ค-๊ฐ’์„ RAG๋ฅผ ํ†ตํ•ด LLM์— ์ฃผ์ž…
    • ๋‹ค์–‘ํ•œ ์ตœ์‹  LLM ๋ชจ๋ธ์„ ํ…Œ์ŠคํŠธ ํ•ด๋ณด๊ณ  ์ ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฒ„์ „ ๊ด€๋ฆฌ
  • LLM์„ ํ†ตํ•ด ์ƒ์„ฑ๋œ ๊ฒฐ๊ณผ๋ฌผ์ด ๋‚ด๋ถ€ ์กฐ๊ฑด์— ๋งž๊ฒŒ ์ƒ์„ฑ๋˜์—ˆ๋Š”์ง€ ํ‰๊ฐ€ํ•˜๋Š” ์‹œ์Šคํ…œ ๊ตฌ์ถ•
ย 

๊ธฐ์ˆ  ์Šคํƒ

v1

  • Python
  • Django + Django Rest Framework
  • MySQL
  • SqlAlchemy
  • Redis
  • Celery
  • AWS โ€” S3, ECS, Systems Manager
ย 

v2

  • Python
  • FastAPI
  • Pydantic
  • MongoDB
  • AWS โ€” S3, ECS, SQS, Lambda, Bedrock, Systems Manager
ย 
ย