Skip to content

won-seoop/eardream

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

5 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

์ด์–ด๋“œ๋ฆผ

์‹œ๊ฐ์žฅ์• ์ธ์„ ์œ„ํ•œ ์Œ์„ฑ ๋Œ€ํ™”ํ˜• AI ๊ณ ์šฉ์ง€์› ์„œ๋น„์Šค

1. ํ•„์š”์„ฑ

ํ˜„์žฌ ์žฅ์• ์ธ์˜ ๊ณ ์šฉ ์ ‘๊ทผ์„ฑ์€ ์—ฌ์ „ํžˆ ๋‚ฎ์€ ์ˆ˜์ค€์— ๋จธ๋ฌผ๋Ÿฌ ์žˆ๋‹ค. ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ๊ณ ์šฉ๊ฐœ๋ฐœ์›์˜ 2025๋…„ ํ•˜๋ฐ˜๊ธฐ ์žฅ์• ์ธ๊ฒฝ์ œํ™œ๋™์‹คํƒœ์กฐ์‚ฌ์— ๋”ฐ๋ฅด๋ฉด, 15์„ธ ์ด์ƒ ๋“ฑ๋ก์žฅ์• ์ธ์˜ ๊ฒฝ์ œํ™œ๋™์ฐธ๊ฐ€์œจ์€ 35.6%, ๊ณ ์šฉ๋ฅ ์€ 34.0%, ์‹ค์—…๋ฅ ์€ 4.4% ๋กœ ๋‚˜ํƒ€๋‚ฌ๋‹ค. ์ด๋Š” ์žฅ์• ์ธ์˜ ๋…ธ๋™์‹œ์žฅ ์ฐธ์—ฌ๊ฐ€ ์—ฌ์ „ํžˆ ์ œํ•œ์ ์ด๋ฉฐ, ๊ตฌ์ง ์ •๋ณด ์ ‘๊ทผ, ์ง๋ฌด ํƒ์ƒ‰, ์ง€์› ์ค€๋น„ ๊ณผ์ •์—์„œ ์‹ค์งˆ์ ์ธ ์ง€์› ์ฒด๊ณ„๊ฐ€ ํ•„์š”ํ•จ์„ ๋ณด์—ฌ์ค€๋‹ค.

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

๋˜ํ•œ ๋””์ง€ํ„ธ ์ทจ์•ฝ๊ณ„์ธต์˜ ์ •๋ณดํ™” ์ˆ˜์ค€์€ ๊ฐœ์„ ๋˜๊ณ  ์žˆ์ง€๋งŒ, ์—ฌ์ „ํžˆ ์ผ๋ฐ˜ ๊ตญ๋ฏผ ๋Œ€๋น„ ๊ฒฉ์ฐจ๊ฐ€ ์กด์žฌํ•œ๋‹ค. 2025๋…„ ๋””์ง€ํ„ธ ์ •๋ณด๊ฒฉ์ฐจยท์›น ์ ‘๊ทผ์„ฑ ์‹คํƒœ์กฐ์‚ฌ์— ๋”ฐ๋ฅด๋ฉด ๋””์ง€ํ„ธ ์ทจ์•ฝ๊ณ„์ธต์˜ ๋””์ง€ํ„ธ์ •๋ณดํ™” ์ˆ˜์ค€์€ ์ผ๋ฐ˜ ๊ตญ๋ฏผ ๋Œ€๋น„ **77.9%**์ด๋ฉฐ, ์›น ์ ‘๊ทผ์„ฑ ์ „์ฒด ํ‰๊ท  ์ ์ˆ˜๋Š” 70.4์ ์œผ๋กœ ์กฐ์‚ฌ๋˜์—ˆ๋‹ค. ์ด๋Š” ์˜จ๋ผ์ธ ์ค‘์‹ฌ์˜ ๊ตฌ์ง ํ™˜๊ฒฝ์—์„œ ๋””์ง€ํ„ธ ์ ‘๊ทผ์„ฑ๊ณผ ํ™œ์šฉ ๋Šฅ๋ ฅ์˜ ์ฐจ์ด๊ฐ€ ์ฑ„์šฉ ๊ธฐํšŒ ๊ฒฉ์ฐจ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•œ๋‹ค.

๋”ฐ๋ผ์„œ ์‹œ๊ฐ์žฅ์• ์ธ์„ ์œ„ํ•œ ๊ณ ์šฉ ์„œ๋น„์Šค๋Š” ๋‹จ์ˆœํžˆ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ˆ˜์ค€์„ ๋„˜์–ด, ์‚ฌ์šฉ์ž๊ฐ€ ๋ง๋กœ ์›ํ•˜๋Š” ์กฐ๊ฑด์„ ์ž…๋ ฅํ•˜๊ณ , AI๊ฐ€ ๊ณต๊ณต ์ฑ„์šฉ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•ด ๊ณต๊ณ ๋ฅผ ์š”์•ฝํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž์˜ ๊ฒฝ๋ ฅยทํฌ๋ง์กฐ๊ฑด๊ณผ ๋น„๊ตํ•ด ์ ํ•ฉ๋„๋ฅผ ์„ค๋ช…ํ•˜๊ณ , ์ง€์›์„œ ์ž‘์„ฑ๊ณผ ๋ฉด์ ‘ ์ค€๋น„๊นŒ์ง€ ์•ˆ๋‚ดํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ™•์žฅ๋  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

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

2. ์„œ๋น„์Šค ๊ฐœ์š”

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

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

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


3. ์š”๊ตฌ์‚ฌํ•ญ ์ •์˜์„œ

3.1 ๋ฌธ์„œ ๋ชฉ์ 

๋ณธ ์š”๊ตฌ์‚ฌํ•ญ ์ •์˜์„œ๋Š” ์ด์–ด๋“œ๋ฆผ์˜ 1์ฃผ์ผ MVP ๊ฐœ๋ฐœ ๋ฒ”์œ„๋ฅผ ์ •์˜ํ•˜๊ณ , ๊ณต๋ชจ์ „ ์‹ฌ์‚ฌ๊ธฐ์ค€์ธ AI ํ˜์‹ ์„ฑ, ํ™œ์šฉ์„ฑ, ์‹คํ˜„ ๊ฐ€๋Šฅ์„ฑ, ์ฐฝ์˜์„ฑ/์ฐจ๋ณ„์„ฑ, ํšจ๊ณผ์„ฑ์— ๋งž์ถฐ ํ•ต์‹ฌ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ •๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๋ชฉ์ ์œผ๋กœ ํ•œ๋‹ค. ๊ณต๋ชจ์ „์€ ๊ณ ์šฉ๋…ธ๋™ ๊ณต๊ณต๋ฐ์ดํ„ฐ์™€ AI ํ™œ์šฉ์„ ์š”๊ตฌํ•˜๋ฉฐ, ์ฃผ๊ด€๊ธฐ๊ด€ ๊ณต๊ณต๋ฐ์ดํ„ฐ ํ™œ์šฉ ์‹œ ๊ฐ€์ ์ด ๋ถ€์—ฌ๋œ๋‹ค. (2026 ๋ฐ์ดํ„ฐ ๊ณต๋ชจ์ „)


3.2 ์„œ๋น„์Šค ๊ฐœ๋ฐœ ๋ฐฉํ–ฅ

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

1์ฃผ์ผ ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„์„ ๊ณ ๋ คํ•˜์—ฌ MVP์—์„œ๋Š” ์‚ฌ์šฉ์ž ๊ฐ„ ์†Œํ†ต ๊ธฐ๋Šฅ, ์ƒ๋‹ด์‚ฌ ์—ฐ๊ณ„, ์‹ค์ œ ์ž…์‚ฌ์ง€์› ์ž๋™ํ™”, ๊ธฐ์—…ํšŒ์› ๊ธฐ๋Šฅ, ์ •์‹ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์€ ์ œ์™ธํ•œ๋‹ค.


3.3 MVP ๋‹จ๊ณ„๋ณ„ ์š”๊ตฌ์‚ฌํ•ญ

๋‹จ๊ณ„ ๋ฒ”์œ„ ์„ค๋ช… MVP ํฌํ•จ ์—ฌ๋ถ€
1๋‹จ๊ณ„ ์Œ์„ฑ์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ  ์ฐพ๊ธฐ ์‚ฌ์šฉ์ž๊ฐ€ ์Œ์„ฑ์œผ๋กœ ์กฐ๊ฑด์„ ๋งํ•˜๋ฉด ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์•ˆ๋‚ด ํฌํ•จ
2๋‹จ๊ณ„ AI์™€ ์†Œํ†ต ์„ ํƒํ•œ ๊ณต๊ณ ์— ๋Œ€ํ•ด ์š”์•ฝ, ์ ํ•ฉ๋„ ๋ถ„์„, ์ง€์›์„œ ์ดˆ์•ˆ ์ƒ์„ฑ ํฌํ•จ
3๋‹จ๊ณ„ ์‚ฌ๋žŒ๋“ค๊ณผ ์†Œํ†ต ๊ตฌ์ง์ž, ์ƒ๋‹ด์‚ฌ, ๋ณดํ˜ธ์ž ๊ฐ„ ์งˆ๋ฌธยท๋‹ต๋ณ€ยทํ›„๊ธฐ ๊ณต์œ  ์ œ์™ธ, ํ›„์† ํ™•์žฅ

3.4 ์‹ฌ์‚ฌ๊ธฐ์ค€ ๊ธฐ๋ฐ˜ ์š”๊ตฌ์‚ฌํ•ญ

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

3.5 ํ•ต์‹ฌ ์‚ฌ์šฉ์ž ์š”๊ตฌ์‚ฌํ•ญ

ID ์‚ฌ์šฉ์ž ์š”๊ตฌ์‚ฌํ•ญ ์„ค๋ช… ์šฐ์„ ์ˆœ์œ„
UR-01 ์‚ฌ์šฉ์ž๋Š” ์Œ์„ฑ์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. โ€œ์„œ์šธ์—์„œ ์‚ฌ๋ฌด์ง ์ผ์ž๋ฆฌ ์ฐพ์•„์ค˜โ€ P0
UR-02 ์‚ฌ์šฉ์ž๋Š” ๊ฒ€์ƒ‰๋œ ๊ณต๊ณ  ๋ชฉ๋ก์„ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ด๋ฐ›์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ํšŒ์‚ฌ๋ช…, ์ง๋ฌด, ์ง€์—ญ, ๊ณ ์šฉํ˜•ํƒœ, ์ž„๊ธˆ ์ค‘์‹ฌ P0
UR-03 ์‚ฌ์šฉ์ž๋Š” ์›ํ•˜๋Š” ๊ณต๊ณ ๋ฅผ ์„ ํƒํ•ด ์ž์„ธํ•œ ์„ค๋ช…์„ ๋“ค์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. โ€œ์ฒซ ๋ฒˆ์งธ ๊ณต๊ณ  ์ž์„ธํžˆ ์•Œ๋ ค์ค˜โ€ P0
UR-04 ์‚ฌ์šฉ์ž๋Š” AI์—๊ฒŒ ๊ณต๊ณ ๋ฅผ ์‰ฝ๊ฒŒ ์š”์•ฝํ•ด๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๊ธด ๊ณต๊ณ ๋ฅผ ํ•ต์‹ฌ ์ •๋ณด๋กœ ์š”์•ฝ P1
UR-05 ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ์กฐ๊ฑด๊ณผ ๊ณต๊ณ ๊ฐ€ ๋งž๋Š”์ง€ ๋ฌผ์–ด๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ํฌ๋ง์ง๋ฌด, ์ง€์—ญ, ๊ฒฝ๋ ฅ, ํ•™๋ ฅ ์กฐ๊ฑด ๋น„๊ต P1
UR-06 ์‚ฌ์šฉ์ž๋Š” ์„ ํƒํ•œ ๊ณต๊ณ  ๊ธฐ๋ฐ˜ ์ง€์›๋™๊ธฐ ์ดˆ์•ˆ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ง€์›์„œ ์ž‘์„ฑ ๋ณด์กฐ P1
UR-07 ์‚ฌ์šฉ์ž๋Š” ๊ณต๊ณ  ๊ธฐ๋ฐ˜ ์˜ˆ์ƒ ๋ฉด์ ‘ ์งˆ๋ฌธ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋ฉด์ ‘ ์ค€๋น„ ๋ณด์กฐ P2
UR-08 ์‚ฌ์šฉ์ž๋Š” ๊ด€์‹ฌ ๊ณต๊ณ ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋‹ค์‹œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋ธŒ๋ผ์šฐ์ € ๋กœ์ปฌ ์ €์žฅ P2
UR-09 ์‚ฌ์šฉ์ž๋Š” ๋‹ต๋ณ€์„ ๋‹ค์‹œ ๋“ฃ๊ฑฐ๋‚˜ ๋” ์‰ฝ๊ฒŒ ์„ค๋ช…๋ฐ›์„ ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. โ€œ๋‹ค์‹œ ๋งํ•ด์ค˜โ€, โ€œ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•ด์ค˜โ€ P1

3.6 ๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ

ID ๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ ์šฐ์„ ์ˆœ์œ„
FR-01 ์Œ์„ฑ ์ž…๋ ฅ ์‚ฌ์šฉ์ž์˜ ์Œ์„ฑ์„ ํ…์ŠคํŠธ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค. P0
FR-02 ๊ฒ€์ƒ‰ ์กฐ๊ฑด ์ถ”์ถœ ์Œ์„ฑ ๋ฌธ์žฅ์—์„œ ์ง€์—ญ, ์ง๋ฌด, ๊ทผ๋ฌดํ˜•ํƒœ, ํ‚ค์›Œ๋“œ๋ฅผ ์ถ”์ถœํ•œ๋‹ค. P0
FR-03 ๊ณต๊ณ  ๊ฒ€์ƒ‰ ์ถ”์ถœ๋œ ์กฐ๊ฑด์œผ๋กœ ์žฅ์• ์ธ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค. P0
FR-04 ๊ณต๊ณต๋ฐ์ดํ„ฐ ์—ฐ๋™ ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ์žฅ์• ์ธ ๊ตฌ์ธ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ API๋ฅผ ํ™œ์šฉํ•œ๋‹ค. P0
FR-05 ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์•ˆ๋‚ด ๊ฒ€์ƒ‰๋œ ๊ณต๊ณ ๋ฅผ ํ•ต์‹ฌ ์ •๋ณด ์ค‘์‹ฌ์œผ๋กœ ํ™”๋ฉด๊ณผ ์Œ์„ฑ์œผ๋กœ ์ œ๊ณตํ•œ๋‹ค. P0
FR-06 ๊ณต๊ณ  ์ƒ์„ธ ์š”์•ฝ ์„ ํƒํ•œ ๊ณต๊ณ ๋ฅผ AI๊ฐ€ ๋“ฃ๊ธฐ ์‰ฌ์šด ํ˜•ํƒœ๋กœ ์š”์•ฝํ•œ๋‹ค. P1
FR-07 AI ์งˆ์˜์‘๋‹ต ์‚ฌ์šฉ์ž๊ฐ€ ๊ณต๊ณ ์— ๋Œ€ํ•ด ์งˆ๋ฌธํ•˜๋ฉด AI๊ฐ€ ๋‹ต๋ณ€ํ•œ๋‹ค. P1
FR-08 ์ ํ•ฉ๋„ ๋ถ„์„ ์‚ฌ์šฉ์ž ์กฐ๊ฑด๊ณผ ๊ณต๊ณ  ์กฐ๊ฑด์„ ๋น„๊ตํ•ด ์ง€์› ๊ฐ€๋Šฅ์„ฑ์„ ์„ค๋ช…ํ•œ๋‹ค. P1
FR-09 ์ง€์›์„œ ์ดˆ์•ˆ ์ƒ์„ฑ ์„ ํƒํ•œ ๊ณต๊ณ  ๊ธฐ๋ฐ˜ ์ง€์›๋™๊ธฐ ๋˜๋Š” ์ž๊ธฐ์†Œ๊ฐœ์„œ ์ดˆ์•ˆ์„ ์ƒ์„ฑํ•œ๋‹ค. P1
FR-10 ๋ฉด์ ‘ ์งˆ๋ฌธ ์ƒ์„ฑ ๊ณต๊ณ  ๊ธฐ๋ฐ˜ ์˜ˆ์ƒ ๋ฉด์ ‘ ์งˆ๋ฌธ์„ ์ƒ์„ฑํ•œ๋‹ค. P2
FR-11 ๊ด€์‹ฌ ๊ณต๊ณ  ์ €์žฅ ๊ด€์‹ฌ ๊ณต๊ณ ๋ฅผ ๋ธŒ๋ผ์šฐ์ €์— ์ €์žฅํ•˜๊ณ  ์žฌ์กฐํšŒํ•œ๋‹ค. P2
FR-12 ์˜ค๋ฅ˜ ์•ˆ๋‚ด ์Œ์„ฑ ์ธ์‹ ์‹คํŒจ, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์—†์Œ, API ์˜ค๋ฅ˜๋ฅผ ์•ˆ๋‚ดํ•œ๋‹ค. P0

Web Speech API๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์Œ์„ฑ ์ธ์‹๊ณผ ์Œ์„ฑ ํ•ฉ์„ฑ์„ ์ œ๊ณตํ•˜์ง€๋งŒ, SpeechRecognition์€ ์ผ๋ถ€ ์ฃผ์š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ œํ•œ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ…์ŠคํŠธ ์ž…๋ ฅ fallback์„ ํ•จ๊ป˜ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜๋‹ค. (MDN ์›น ๋ฌธ์„œ)


3.7 ๋ฐ์ดํ„ฐ ์š”๊ตฌ์‚ฌํ•ญ

์ด์–ด๋“œ๋ฆผ์€ ์‹ค์ œ ์ฑ„์šฉ๊ณต๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•ด์•ผ ํ•œ๋‹ค. ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ์˜ ์žฅ์• ์ธ ๊ตฌ์ธ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ API๋Š” ํ˜„์žฌ ์ง„ํ–‰ ์ค‘์ธ ์žฅ์• ์ธ ๊ตฌ์ธ ์‚ฌ์—…์ฒด์˜ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ์„ ์ œ๊ณตํ•˜๋ฉฐ, ๋ชจ์ง‘๊ธฐ๊ฐ„, ์‚ฌ์—…์žฅ๋ช…, ๋ชจ์ง‘์ง์ข…, ๊ณ ์šฉํ˜•ํƒœ, ์ž„๊ธˆ, ์š”๊ตฌ๊ฒฝ๋ ฅ, ์š”๊ตฌํ•™๋ ฅ, ์‚ฌ์—…์žฅ ์ฃผ์†Œ ๋“ฑ์˜ ํ•ญ๋ชฉ์„ ํฌํ•จํ•œ๋‹ค. (๋ฐ์ดํ„ฐ.go.kr)

๋ฐ์ดํ„ฐ ํ™œ์šฉ ๋ชฉ์ 
์žฅ์• ์ธ ๊ตฌ์ธ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ API ์žฅ์• ์ธ ์ฑ„์šฉ๊ณต๊ณ  ๊ฒ€์ƒ‰
๊ณต๊ณ  ์ƒ์„ธ ๋ฐ์ดํ„ฐ ๊ณต๊ณ  ์š”์•ฝ, ์ ํ•ฉ๋„ ๋ถ„์„, ์ง€์›์„œ ์ดˆ์•ˆ ์ƒ์„ฑ
์‚ฌ์šฉ์ž ์ž…๋ ฅ ์กฐ๊ฑด ๊ฒ€์ƒ‰ ์กฐ๊ฑด ์ถ”์ถœ
์‚ฌ์šฉ์ž ์ž„์‹œ ํ”„๋กœํ•„ ์ ํ•ฉ๋„ ๋ถ„์„, ์ง€์›์„œ ์ดˆ์•ˆ ์ƒ์„ฑ
๊ด€์‹ฌ ๊ณต๊ณ  ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ณต๊ณ  ์žฌ์กฐํšŒ

3.8 ์ธ์ฆ ๋ฐ ๋กœ๊ทธ์ธ ์š”๊ตฌ์‚ฌํ•ญ

1์ฃผ์ผ MVP์—์„œ๋Š” ํšŒ์›๊ฐ€์ž… ๋ฐ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ์„ ์ œ์™ธํ•œ๋‹ค.

๋กœ๊ทธ์ธ์€ ์•„์ด๋””ยท๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ, ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ, ์ ‘๊ทผ์„ฑ ๊ฒ€์ฆ, ๊ฐœ์ธ์ •๋ณด ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ MVP ํ•ต์‹ฌ ๊ธฐ๋Šฅ๋ณด๋‹ค ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ๋‹ค. WCAG 2.2์—์„œ๋„ ๋กœ๊ทธ์ธ ๊ณผ์ •์€ ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ์ธ์ฆํ•  ์ˆ˜ ์žˆ๋„๋ก ์ ‘๊ทผ์„ฑ์ด ๋ณด์žฅ๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ์„ค๋ช…ํ•œ๋‹ค. (W3C)

ID ์š”๊ตฌ์‚ฌํ•ญ ์„ค๋ช…
AUTH-01 MVP์—์„œ๋Š” ๋กœ๊ทธ์ธ ์—†์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๊ณต๊ณ  ๊ฒ€์ƒ‰, ์š”์•ฝ, ์Œ์„ฑ ์•ˆ๋‚ด๋Š” ๋น„ํšŒ์› ์‚ฌ์šฉ
AUTH-02 ์‚ฌ์šฉ์ž ํ”„๋กœํ•„์€ ์ž„์‹œ ์ž…๋ ฅ ๋ฐฉ์‹์œผ๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค. ํฌ๋ง์ง๋ฌด, ํฌ๋ง์ง€์—ญ, ๊ฒฝ๋ ฅ, ๋ณด์œ ์—ญ๋Ÿ‰
AUTH-03 ๊ด€์‹ฌ ๊ณต๊ณ ๋Š” ๋ธŒ๋ผ์šฐ์ € ๋กœ์ปฌ ์ €์žฅ์†Œ์— ์ €์žฅํ•œ๋‹ค. ์„œ๋ฒ„ ๊ณ„์ • ์ €์žฅ ์ œ์™ธ
AUTH-04 ๋ฏผ๊ฐ์ •๋ณด๋Š” ์ €์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ฃผ๋ฏผ๋“ฑ๋ก๋ฒˆํ˜ธ, ์žฅ์• ๋“ฑ๋ก๋ฒˆํ˜ธ, ์ƒ์„ธ ์ฃผ์†Œ ์ œ์™ธ
AUTH-05 ์ •์‹ ๋กœ๊ทธ์ธ์€ ํ›„์† ํ™•์žฅ์œผ๋กœ ๋ถ„๋ฅ˜ํ•œ๋‹ค. ์ ‘๊ทผ์„ฑ ๋กœ๊ทธ์ธ ํ™”๋ฉด์€ V2์—์„œ ๊ฒ€ํ† 

3.9 MVP ํฌํ•จ ๋ฒ”์œ„

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

3.10 ๊ฐœ๋ฐœ ์šฐ์„ ์ˆœ์œ„

์šฐ์„ ์ˆœ์œ„ ๊ตฌํ˜„ ํ•ญ๋ชฉ
P0 ์Œ์„ฑ ์ž…๋ ฅ, ์กฐ๊ฑด ์ถ”์ถœ, ์žฅ์• ์ธ ๊ตฌ์ธ API ๊ฒ€์ƒ‰, ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด, ์˜ค๋ฅ˜ ์•ˆ๋‚ด
P1 AI ๊ณต๊ณ  ์š”์•ฝ, AI ์งˆ์˜์‘๋‹ต, ์ ํ•ฉ๋„ ๋ถ„์„, ์ง€์›์„œ ์ดˆ์•ˆ ์ƒ์„ฑ
P2 ๋ฉด์ ‘ ์งˆ๋ฌธ ์ƒ์„ฑ, ๊ด€์‹ฌ ๊ณต๊ณ  ์ €์žฅ
V2 ๋กœ๊ทธ์ธ, ์‚ฌ์šฉ์ž ๊ฐ„ ์†Œํ†ต, ์ƒ๋‹ด์‚ฌ ์—ฐ๊ณ„, ์‹ค์ œ ์ž…์‚ฌ์ง€์› ์ž๋™ํ™”

3.11 ์š”๊ตฌ์‚ฌํ•ญ ์ •์˜ ์š”์•ฝ

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

์‚ฌ์šฉ์ž ๊ฐ„ ์†Œํ†ต ๊ธฐ๋Šฅ์€ ์„œ๋น„์Šค ํ™•์žฅ ๋ฐฉํ–ฅ์œผ๋กœ๋Š” ์˜๋ฏธ๊ฐ€ ์žˆ์ง€๋งŒ, ๋กœ๊ทธ์ธ, ๊ฒŒ์‹œ๊ธ€ ๊ด€๋ฆฌ, ์‹ ๊ณ  ์ฒ˜๋ฆฌ, ๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ ์ด์Šˆ๊ฐ€ ํ•จ๊ป˜ ํ•„์š”ํ•˜๋ฏ€๋กœ 1์ฃผ์ผ MVP์—์„œ๋Š” ์ œ์™ธํ•œ๋‹ค. ๋”ฐ๋ผ์„œ MVP ๋ฒ”์œ„๋Š” ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰ โ†’ ๊ณต๊ณ  ์Œ์„ฑ ์•ˆ๋‚ด โ†’ AI์™€ ๊ณต๊ณ  ๊ธฐ๋ฐ˜ ์†Œํ†ต๊นŒ์ง€๋กœ ํ•œ์ •ํ•œ๋‹ค.


4. ์š”๊ตฌ์‚ฌํ•ญ ๋ช…์„ธ์„œ

4.1 ์„œ๋น„์Šค ๋ชฉํ‘œ

์ด์–ด๋“œ๋ฆผ์€ ์‹œ๊ฐ์žฅ์• ์ธ์ด ์Œ์„ฑ์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ , AI์™€ ๋Œ€ํ™”ํ•˜๋ฉฐ ์ž์‹ ์—๊ฒŒ ๋งž๋Š” ๊ณต๊ณ ๋ฅผ ์ฐพ๊ณ , ํ•ด๋‹น ๊ณต๊ณ  ์ง€์›์ž ์ฑ„ํŒ…๋ฐฉ์˜ ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ์„œ๋น„์Šค์ด๋‹ค.

MVP์—์„œ๋Š” ์™„์„ฑํ˜• ๊ณ ์šฉํฌํ„ธ์ด ์•„๋‹ˆ๋ผ, ๋‹ค์Œ ์„ธ ๊ฐ€์ง€ ํ•ต์‹ฌ ํ๋ฆ„์„ ๊ตฌํ˜„ํ•œ๋‹ค.

์Œ์„ฑ์œผ๋กœ ๊ณต๊ณ  ๊ฒ€์ƒ‰
โ†’ AI์™€ ๊ณต๊ณ  ๊ธฐ๋ฐ˜ ๋Œ€ํ™”
โ†’ ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ๋‚ด์šฉ ์Œ์„ฑ ํ™•์ธ

4.2 ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ

ID ๊ธฐ๋Šฅ ์„ค๋ช… ์šฐ์„ ์ˆœ์œ„
FR-01 ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ์‚ฌ์šฉ์ž๊ฐ€ ์Œ์„ฑ์œผ๋กœ ์›ํ•˜๋Š” ์ง๋ฌด, ์ง€์—ญ, ๊ทผ๋ฌดํ˜•ํƒœ๋ฅผ ๋งํ•˜๋ฉด ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค. ํ•„์ˆ˜
FR-02 ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด ๊ฒ€์ƒ‰๋œ ๊ณต๊ณ ์˜ ํšŒ์‚ฌ๋ช…, ์ง๋ฌด, ์ง€์—ญ, ์ž„๊ธˆ, ๊ณ ์šฉํ˜•ํƒœ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ดํ•œ๋‹ค. ํ•„์ˆ˜
FR-03 AI ๊ณต๊ณ  ๋Œ€ํ™” ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•œ ๊ณต๊ณ ์— ๋Œ€ํ•ด ์งˆ๋ฌธํ•˜๋ฉด AI๊ฐ€ ๊ณต๊ณ  ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋‹ต๋ณ€ํ•œ๋‹ค. ํ•„์ˆ˜
FR-04 AI ๊ณต๊ณ  ์ถ”์ฒœ ๋ณด์กฐ ์‚ฌ์šฉ์ž์˜ ํฌ๋ง ์กฐ๊ฑด๊ณผ ๊ณต๊ณ  ์ •๋ณด๋ฅผ ๋น„๊ตํ•ด ์–ด๋–ค ๊ณต๊ณ ๊ฐ€ ๋” ๋งž๋Š”์ง€ ์„ค๋ช…ํ•œ๋‹ค. ํ•„์ˆ˜
FR-05 ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ๊ฐ ์ฑ„์šฉ๊ณต๊ณ ๋งˆ๋‹ค ์ง€์›์ž๋“ค์ด ๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์ฑ„ํŒ…๋ฐฉ์„ ์ œ๊ณตํ•œ๋‹ค. ํ•„์ˆ˜
FR-06 ์ฑ„ํŒ…๋ฐฉ ์Œ์„ฑ ์ฝ๊ธฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋‚˜ ์ฃผ์š” ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ๋“ค์„ ์ˆ˜ ์žˆ๋‹ค. ํ•„์ˆ˜
FR-07 ์Œ์„ฑ ์ฑ„ํŒ… ์ž…๋ ฅ ์‚ฌ์šฉ์ž๊ฐ€ ๋งํ•œ ๋‚ด์šฉ์„ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€๋กœ ์ „์†กํ•  ์ˆ˜ ์žˆ๋‹ค. ์„ ํƒ
FR-08 ์ฑ„ํŒ… ๋‚ด์šฉ AI ์š”์•ฝ AI๊ฐ€ ์ฑ„ํŒ…๋ฐฉ ๋‚ด์šฉ์„ ์š”์•ฝํ•ด ์ง€์›์ž๋“ค์ด ์ฃผ๋กœ ๋งํ•˜๋Š” ๋‚ด์šฉ์„ ์•Œ๋ ค์ค€๋‹ค. ์„ ํƒ

4.3 MVP ๋™์ž‘ ํ๋ฆ„

1. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์„œ์šธ ์‚ฌ๋ฌด์ง ์ผ์ž๋ฆฌ ์ฐพ์•„์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

2. ์‹œ์Šคํ…œ์ด ์Œ์„ฑ์„ ํ…์ŠคํŠธ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.

3. ์‹œ์Šคํ…œ์ด ์ง€์—ญ, ์ง๋ฌด, ๊ทผ๋ฌดํ˜•ํƒœ ์กฐ๊ฑด์„ ์ถ”์ถœํ•œ๋‹ค.

4. ๊ณต๊ณต ์ฑ„์šฉ๋ฐ์ดํ„ฐ์—์„œ ์กฐ๊ฑด์— ๋งž๋Š” ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค.

5. ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์ค€๋‹ค.

6. ์‚ฌ์šฉ์ž๊ฐ€ ํŠน์ • ๊ณต๊ณ ๋ฅผ ์„ ํƒํ•œ๋‹ค.

7. ์‚ฌ์šฉ์ž๋Š” AI์—๊ฒŒ โ€œ์ด ๊ณต๊ณ  ๋‚˜ํ•œํ…Œ ๋งž์•„?โ€, โ€œ์›”๊ธ‰ ์–ผ๋งˆ์•ผ?โ€, โ€œ์ง€์› ์กฐ๊ฑด ๋ญ์•ผ?โ€๋ผ๊ณ  ์งˆ๋ฌธํ•œ๋‹ค.

8. AI๊ฐ€ ๊ณต๊ณ  ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋‹ต๋ณ€ํ•œ๋‹ค.

9. ์‚ฌ์šฉ์ž๋Š” ํ•ด๋‹น ๊ณต๊ณ ์˜ ์ฑ„ํŒ…๋ฐฉ์— ๋“ค์–ด๊ฐ„๋‹ค.

10. ์‹œ์Šคํ…œ์ด ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€ ๋˜๋Š” ์š”์•ฝ ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์ค€๋‹ค.

4.4 ๋ฐ์ดํ„ฐ ํ™œ์šฉ ์š”๊ตฌ์‚ฌํ•ญ

๋ฐ์ดํ„ฐ ํ™œ์šฉ ๋ชฉ์ 
ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ์žฅ์• ์ธ ๊ตฌ์ธ API ์žฅ์• ์ธ ์ฑ„์šฉ๊ณต๊ณ  ๊ฒ€์ƒ‰
์ฑ„์šฉ๊ณต๊ณ  ์ƒ์„ธ ์ •๋ณด AI ๊ณต๊ณ  ์š”์•ฝ, ๊ณต๊ณ  ์งˆ์˜์‘๋‹ต, ์ ํ•ฉ๋„ ๋ถ„์„
์‚ฌ์šฉ์ž ์Œ์„ฑ ์ž…๋ ฅ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ์กฐ๊ฑด ์ถ”์ถœ, AI ์งˆ๋ฌธ ์ž…๋ ฅ, ์ฑ„ํŒ… ์ž…๋ ฅ
๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ ์ง€์›์ž ๊ฐ„ ์ •๋ณด ๊ณต์œ , ์Œ์„ฑ ์ฝ๊ธฐ, AI ์š”์•ฝ
์‚ฌ์šฉ์ž ํฌ๋ง ์กฐ๊ฑด ๊ณต๊ณ  ์ถ”์ฒœ ๋ณด์กฐ

ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ์˜ ์žฅ์• ์ธ ๊ตฌ์ธ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ API๋Š” ๋ชจ์ง‘๊ธฐ๊ฐ„, ์‚ฌ์—…์žฅ๋ช…, ๋ชจ์ง‘์ง์ข…, ๊ณ ์šฉํ˜•ํƒœ, ์ž„๊ธˆ, ์š”๊ตฌ๊ฒฝ๋ ฅ, ์š”๊ตฌํ•™๋ ฅ, ์‚ฌ์—…์žฅ ์ฃผ์†Œ ๋“ฑ์˜ ํ•ญ๋ชฉ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ MVP์˜ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ๋ฐ์ดํ„ฐ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. (๋ฐ์ดํ„ฐ.go.kr)


4.5 ๊ธฐ๋Šฅ๋ณ„ ์ž…์ถœ๋ ฅ ๋ช…์„ธ

๊ธฐ๋Šฅ ์ž…๋ ฅ ์ฒ˜๋ฆฌ ์ถœ๋ ฅ
์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ์‚ฌ์šฉ์ž ์Œ์„ฑ STT ๋ณ€ํ™˜, ๊ฒ€์ƒ‰ ์กฐ๊ฑด ์ถ”์ถœ ๊ฒ€์ƒ‰ ์กฐ๊ฑด
๊ณต๊ณ  ๊ฒ€์ƒ‰ ์ง€์—ญ, ์ง๋ฌด, ๊ทผ๋ฌดํ˜•ํƒœ ๊ณต๊ณต API ์กฐํšŒ ๊ณต๊ณ  ๋ชฉ๋ก
๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์•ˆ๋‚ด ๊ณต๊ณ  ๋ชฉ๋ก ํ•ต์‹ฌ ์ •๋ณด ์ •๋ฆฌ, TTS ๋ณ€ํ™˜ ์Œ์„ฑ ์•ˆ๋‚ด
AI ๊ณต๊ณ  ๋Œ€ํ™” ์‚ฌ์šฉ์ž ์งˆ๋ฌธ, ์„ ํƒ ๊ณต๊ณ  ๊ณต๊ณ  ์ •๋ณด ๊ธฐ๋ฐ˜ AI ๋‹ต๋ณ€ ์ƒ์„ฑ ๋‹ต๋ณ€
๊ณต๊ณ  ์ถ”์ฒœ ๋ณด์กฐ ์‚ฌ์šฉ์ž ์กฐ๊ฑด, ๊ณต๊ณ  ๋ชฉ๋ก ์กฐ๊ฑด ๋น„๊ต ์ถ”์ฒœ ์„ค๋ช…
๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ๊ณต๊ณ  ID ํ•ด๋‹น ๊ณต๊ณ  ์ฑ„ํŒ…๋ฐฉ ์กฐํšŒ ๋ฉ”์‹œ์ง€ ๋ชฉ๋ก
์ฑ„ํŒ…๋ฐฉ ์Œ์„ฑ ์ฝ๊ธฐ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ TTS ๋ณ€ํ™˜ ๋˜๋Š” AI ์š”์•ฝ ์Œ์„ฑ ์•ˆ๋‚ด
์Œ์„ฑ ์ฑ„ํŒ… ์ž…๋ ฅ ์‚ฌ์šฉ์ž ์Œ์„ฑ STT ๋ณ€ํ™˜ ํ›„ ๋ฉ”์‹œ์ง€ ์ €์žฅ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€

Web Speech API๋Š” ์Œ์„ฑ ์ธ์‹๊ณผ ์Œ์„ฑ ํ•ฉ์„ฑ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ MVP์—์„œ ์Œ์„ฑ ์ž…๋ ฅ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ SpeechRecognition์€ ์ผ๋ถ€ ์ฃผ์š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์ž‘ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ํ…์ŠคํŠธ ์ž…๋ ฅ fallback์„ ํ•จ๊ป˜ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด ์•ˆ์ „ํ•˜๋‹ค. (MDN ์›น ๋ฌธ์„œ)


4.6 ์ฑ„ํŒ… ๊ธฐ๋Šฅ ๋ช…์„ธ

๊ธฐ๋Šฅ ์„ค๋ช…
๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ์ƒ์„ฑ ์‚ฌ์šฉ์ž๊ฐ€ ํŠน์ • ๊ณต๊ณ ๋ฅผ ์„ ํƒํ•˜๋ฉด ํ•ด๋‹น ๊ณต๊ณ  ์ „์šฉ ์ฑ„ํŒ…๋ฐฉ์„ ์ œ๊ณตํ•œ๋‹ค.
๋ฉ”์‹œ์ง€ ์ž‘์„ฑ ์‚ฌ์šฉ์ž๋Š” ํ…์ŠคํŠธ ๋˜๋Š” ์Œ์„ฑ์œผ๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
๋ฉ”์‹œ์ง€ ์กฐํšŒ ์‚ฌ์šฉ์ž๋Š” ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
๋ฉ”์‹œ์ง€ ์Œ์„ฑ ์ฝ๊ธฐ ์‹œ์Šคํ…œ์€ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์ค€๋‹ค.
์ฑ„ํŒ… ์š”์•ฝ AI๊ฐ€ ์ตœ๊ทผ ๋Œ€ํ™” ๋‚ด์šฉ์„ ์š”์•ฝํ•ด ์ง€์›์ž๋“ค์ด ์ฃผ๋กœ ์ด์•ผ๊ธฐํ•˜๋Š” ๋‚ด์šฉ์„ ์•Œ๋ ค์ค€๋‹ค.

์ฑ„ํŒ…๋ฐฉ์€ ์‹ค์‹œ๊ฐ„์„ฑ์ด ํ•„์š”ํ•˜๋ฏ€๋กœ WebSocket ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. WebSocket์€ ๋ธŒ๋ผ์šฐ์ €์™€ ์„œ๋ฒ„ ์‚ฌ์ด์— ์–‘๋ฐฉํ–ฅ ํ†ต์‹  ์„ธ์…˜์„ ์—ด์–ด ์„œ๋ฒ„ ์‘๋‹ต์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์š”์ฒญํ•˜์ง€ ์•Š๊ณ ๋„ ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. (MDN ์›น ๋ฌธ์„œ)


4.7 MVP ์ œ์™ธ ๊ธฐ๋Šฅ

์ œ์™ธ ๊ธฐ๋Šฅ ์ œ์™ธ ์ด์œ 
์ •์‹ ๋กœ๊ทธ์ธ/ํšŒ์›๊ฐ€์ž… ํ•ด์ปคํ†ค MVP ๋ฒ”์œ„ ์ดˆ๊ณผ
์‹ค์ œ ์ž…์‚ฌ์ง€์› ์ž๋™ํ™” ์™ธ๋ถ€ ํฌํ„ธ ๋กœ๊ทธ์ธ๊ณผ ๊ฐœ์ธ์ •๋ณด ์ œ์ถœ ํ•„์š”
๊ธฐ์—… ํšŒ์› ๊ธฐ๋Šฅ ํ•ต์‹ฌ ์‹œ์—ฐ ๋ฒ”์œ„ ์•„๋‹˜
์ƒ๋‹ด์‚ฌ ์—ฐ๊ณ„ ๊ธฐ๊ด€ ๊ณ„์ •๊ณผ ์ƒ๋‹ด ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ํ•„์š”
์Œ์„ฑ ์ƒ์ฒด ๋กœ๊ทธ์ธ ๋ณด์•ˆยท๊ฐœ์ธ์ •๋ณด ์ด์Šˆ๊ฐ€ ํผ
๋ณต์žกํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ ์šด์˜ ๊ธฐ๋Šฅ ์‹ ๊ณ , ์ฐจ๋‹จ, ๊ด€๋ฆฌ์ž ๊ธฐ๋Šฅ์€ ํ›„์† ํ™•์žฅ์œผ๋กœ ๋ถ„๋ฆฌ

4.8 ์ตœ์ข… MVP ๋ฒ”์œ„

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


5. ๊ธฐ๋Šฅ ๋ช…์„ธ์„œ

5.1 ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์š”์•ฝ

์ด์–ด๋“œ๋ฆผ์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์€ ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰, AI ๊ณต๊ณ  ๋Œ€ํ™”, ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ์Œ์„ฑ ์†Œํ†ต์ด๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์Œ์„ฑ์œผ๋กœ ์›ํ•˜๋Š” ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ์ฐพ๊ณ , AI์™€ ๋Œ€ํ™”ํ•˜๋ฉฐ ๊ณต๊ณ  ๋‚ด์šฉ์„ ์ดํ•ดํ•œ ๋’ค, ํ•ด๋‹น ๊ณต๊ณ ์— ๊ด€์‹ฌ ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์˜ ์ฑ„ํŒ… ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ๋“ค์„ ์ˆ˜ ์žˆ๋‹ค.

๊ตฌ๋ถ„ ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์„ค๋ช…
1 ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ์‚ฌ์šฉ์ž๊ฐ€ ์Œ์„ฑ์œผ๋กœ ์›ํ•˜๋Š” ์กฐ๊ฑด์„ ๋งํ•˜๋ฉด ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰
2 ๊ณต๊ณ  ์Œ์„ฑ ์•ˆ๋‚ด ๊ฒ€์ƒ‰๋œ ๊ณต๊ณ ์˜ ํ•ต์‹ฌ ์ •๋ณด๋ฅผ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์คŒ
3 AI ๊ณต๊ณ  ๋Œ€ํ™” ์„ ํƒํ•œ ๊ณต๊ณ ์— ๋Œ€ํ•ด AI์™€ ์งˆ๋ฌธยท๋‹ต๋ณ€
4 ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ๊ณต๊ณ ๋งˆ๋‹ค ์ง€์›์ž๋“ค์ด ๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์ฑ„ํŒ…๋ฐฉ ์ œ๊ณต
5 ์ฑ„ํŒ… ์Œ์„ฑ ์ฝ๊ธฐ ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋‚˜ ์š”์•ฝ ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ด

5.2 ๊ธฐ๋Šฅ 1. ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰

ํ•ญ๋ชฉ ๋‚ด์šฉ
๊ธฐ๋Šฅ ๋ชฉ์  ์‹œ๊ฐ์žฅ์• ์ธ์ด ํ™”๋ฉด ์ž…๋ ฅ ์—†์ด ์Œ์„ฑ์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค.
์‚ฌ์šฉ์ž ์ž…๋ ฅ โ€œ์„œ์šธ์—์„œ ์‚ฌ๋ฌด์ง ์ผ์ž๋ฆฌ ์ฐพ์•„์ค˜โ€, โ€œ์žฌํƒ ๊ฐ€๋Šฅํ•œ ๊ณต๊ณ  ์ฐพ์•„์ค˜โ€
์ฒ˜๋ฆฌ ๋ฐฉ์‹ ์Œ์„ฑ โ†’ ํ…์ŠคํŠธ ๋ณ€ํ™˜ ํ›„ ์ง€์—ญ, ์ง๋ฌด, ๊ทผ๋ฌดํ˜•ํƒœ ๋“ฑ ๊ฒ€์ƒ‰ ์กฐ๊ฑด ์ถ”์ถœ
์ถœ๋ ฅ ๊ฒฐ๊ณผ ์กฐ๊ฑด์— ๋งž๋Š” ์ฑ„์šฉ๊ณต๊ณ  ๋ชฉ๋ก
์‚ฌ์šฉ ๊ธฐ์ˆ  Web Speech API, ๊ณต๊ณต ์ฑ„์šฉ๋ฐ์ดํ„ฐ API
์˜ˆ์™ธ ์ฒ˜๋ฆฌ ์Œ์„ฑ ์ธ์‹ ์‹คํŒจ ์‹œ ํ…์ŠคํŠธ ์ž…๋ ฅ์œผ๋กœ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ

Web Speech API๋Š” ์Œ์„ฑ ์ธ์‹๊ณผ ์Œ์„ฑ ํ•ฉ์„ฑ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ MVP์—์„œ ์Œ์„ฑ ์ž…๋ ฅ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ SpeechRecognition์€ ์ผ๋ถ€ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ง€์›๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ…์ŠคํŠธ ์ž…๋ ฅ fallback์ด ํ•„์š”ํ•˜๋‹ค. (MDN ์›น ๋ฌธ์„œ)


5.3 ๊ธฐ๋Šฅ 2. ๊ณต๊ณ  ์Œ์„ฑ ์•ˆ๋‚ด

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

์žฅ์• ์ธ ๊ตฌ์ธ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ API๋Š” ๋ชจ์ง‘๊ธฐ๊ฐ„, ์‚ฌ์—…์žฅ๋ช…, ๋ชจ์ง‘์ง์ข…, ๊ณ ์šฉํ˜•ํƒœ, ์ž„๊ธˆ, ์š”๊ตฌ๊ฒฝ๋ ฅ, ์š”๊ตฌํ•™๋ ฅ, ์‚ฌ์—…์žฅ ์ฃผ์†Œ ๋“ฑ์˜ ํ•ญ๋ชฉ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ ๊ณต๊ณ  ๊ฒ€์ƒ‰๊ณผ ์•ˆ๋‚ด์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. (๋ฐ์ดํ„ฐ.go.kr)


5.4 ๊ธฐ๋Šฅ 3. AI ๊ณต๊ณ  ๋Œ€ํ™”

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

5.5 ๊ธฐ๋Šฅ 4. ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ

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

WebSocket API๋Š” ๋ธŒ๋ผ์šฐ์ €์™€ ์„œ๋ฒ„ ์‚ฌ์ด์— ์–‘๋ฐฉํ–ฅ ํ†ต์‹  ์„ธ์…˜์„ ์—ด์–ด ์„œ๋ฒ„๋ฅผ ๋ฐ˜๋ณต ํ˜ธ์ถœํ•˜์ง€ ์•Š๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ฒŒ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ… ๊ธฐ๋Šฅ์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. (MDN ์›น ๋ฌธ์„œ)


5.6 ๊ธฐ๋Šฅ 5. ์ฑ„ํŒ… ์Œ์„ฑ ์ฝ๊ธฐ

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

5.7 MVP ๊ธฐ๋Šฅ ์šฐ์„ ์ˆœ์œ„

์šฐ์„ ์ˆœ์œ„ ๊ธฐ๋Šฅ
P0 ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰, ๊ณต๊ณ  ์Œ์„ฑ ์•ˆ๋‚ด
P1 AI ๊ณต๊ณ  ๋Œ€ํ™”
P2 ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ, ์ฑ„ํŒ… ์Œ์„ฑ ์ฝ๊ธฐ
์ œ์™ธ ๋กœ๊ทธ์ธ, ์‹ค์ œ ์ž…์‚ฌ์ง€์› ์ž๋™ํ™”, ๊ธฐ์—…ํšŒ์›, ์ƒ๋‹ด์‚ฌ ๊ด€๋ฆฌ

5.8 ์‹œ์—ฐ ์‹œ๋‚˜๋ฆฌ์˜ค

1. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์„œ์šธ์—์„œ ์‚ฌ๋ฌด์ง ์ผ์ž๋ฆฌ ์ฐพ์•„์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

2. ์ด์–ด๋“œ๋ฆผ์ด ์Œ์„ฑ์„ ์ธ์‹ํ•˜๊ณ  ์กฐ๊ฑด์„ ์ถ”์ถœํ•œ๋‹ค.

3. ๊ณต๊ณต๋ฐ์ดํ„ฐ์—์„œ ๊ด€๋ จ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค.

4. ์ด์–ด๋“œ๋ฆผ์ด ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์ค€๋‹ค.

5. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์ฒซ ๋ฒˆ์งธ ๊ณต๊ณ  ์ž์„ธํžˆ ์•Œ๋ ค์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

6. AI๊ฐ€ ๊ณต๊ณ  ๋‚ด์šฉ์„ ์‰ฝ๊ฒŒ ์š”์•ฝํ•œ๋‹ค.

7. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์ด ๊ณต๊ณ  ์ง€์›์ž ์ฑ„ํŒ…๋ฐฉ ์ฝ์–ด์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

8. ์ด์–ด๋“œ๋ฆผ์ด ํ•ด๋‹น ๊ณต๊ณ  ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์ค€๋‹ค.

9. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์ฑ„ํŒ…๋ฐฉ์— ์งˆ๋ฌธ ๋‚จ๊ฒจ์ค˜. ๋ฉด์ ‘ ๊ฒฝํ—˜ ์žˆ์œผ์‹  ๋ถ„ ์žˆ๋‚˜์š”?โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

10. ์ด์–ด๋“œ๋ฆผ์ด ์Œ์„ฑ์„ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€๋กœ ๋ณ€ํ™˜ํ•ด ์ „์†กํ•œ๋‹ค.

5.9 ์ตœ์ข… ๊ธฐ๋Šฅ ๋ฒ”์œ„

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

6. ํ™”๋ฉด/์Œ์„ฑ ํ๋ฆ„ ์„ค๊ณ„

6.1 ์ „์ฒด ํ๋ฆ„

์„œ๋น„์Šค ์ง„์ž…
โ†’ ์Œ์„ฑ ์•ˆ๋‚ด ์‹œ์ž‘
โ†’ ์Œ์„ฑ์œผ๋กœ ๊ณต๊ณ  ๊ฒ€์ƒ‰
โ†’ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด
โ†’ ๊ณต๊ณ  ์„ ํƒ
โ†’ AI์™€ ๊ณต๊ณ  ๋Œ€ํ™”
โ†’ ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ์ด๋™
โ†’ ์ฑ„ํŒ… ๋‚ด์šฉ ์Œ์„ฑ ์ฝ๊ธฐ
โ†’ ์Œ์„ฑ์œผ๋กœ ์ฑ„ํŒ… ์ฐธ์—ฌ

Web Speech API๋Š” ์Œ์„ฑ ์ธ์‹๊ณผ ์Œ์„ฑ ํ•ฉ์„ฑ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ, ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ MVP์—์„œ ์Œ์„ฑ ์ž…๋ ฅ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ SpeechRecognition์€ ์ผ๋ถ€ ์ฃผ์š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ง€์›๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์–ด ํ…์ŠคํŠธ ์ž…๋ ฅ๋„ ํ•จ๊ป˜ ์ œ๊ณตํ•œ๋‹ค. (MDN ์›น ๋ฌธ์„œ)


6.2 ํ™”๋ฉด๋ณ„ ํ๋ฆ„

ํ™”๋ฉด ํ™”๋ฉด ๊ตฌ์„ฑ ์Œ์„ฑ ํ๋ฆ„
1. ์‹œ์ž‘ ํ™”๋ฉด ์„œ๋น„์Šค๋ช…, โ€œ์Œ์„ฑ ์•ˆ๋‚ด ์‹œ์ž‘ํ•˜๊ธฐโ€ ๋ฒ„ํŠผ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด โ€œ์›ํ•˜๋Š” ์ผ์ž๋ฆฌ๋ฅผ ๋ง์”€ํ•ด ์ฃผ์„ธ์š”โ€ ์•ˆ๋‚ด
2. ๊ณต๊ณ  ๊ฒ€์ƒ‰ ํ™”๋ฉด ์Œ์„ฑ ๊ฒ€์ƒ‰ ๋ฒ„ํŠผ, ํ…์ŠคํŠธ ์ž…๋ ฅ์ฐฝ ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์„œ์šธ ์‚ฌ๋ฌด์ง ์ฐพ์•„์ค˜โ€๋ผ๊ณ  ๋งํ•จ
3. ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ํ™”๋ฉด ๊ณต๊ณ  ์นด๋“œ ๋ชฉ๋ก โ€œ์ฒซ ๋ฒˆ์งธ ๊ณต๊ณ ๋Š” OOํšŒ์‚ฌ ์‚ฌ๋ฌด์ง์ž…๋‹ˆ๋‹คโ€์ฒ˜๋Ÿผ ์ˆœ์„œ๋Œ€๋กœ ์•ˆ๋‚ด
4. ๊ณต๊ณ  ์ƒ์„ธ ํ™”๋ฉด ๊ณต๊ณ  ์ •๋ณด, AI ์งˆ๋ฌธ ๋ฒ„ํŠผ โ€œ์ด ๊ณต๊ณ ์— ๋Œ€ํ•ด ๊ถ๊ธˆํ•œ ์ ์„ ๋ฌผ์–ด๋ณด์„ธ์š”โ€ ์•ˆ๋‚ด
5. AI ๋Œ€ํ™” ํ™”๋ฉด ์งˆ๋ฌธ ์ž…๋ ฅ์ฐฝ, AI ๋‹ต๋ณ€ ์˜์—ญ ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์ด ๊ณต๊ณ  ๋‚˜ํ•œํ…Œ ๋งž์•„?โ€๋ผ๊ณ  ์งˆ๋ฌธํ•˜๋ฉด AI๊ฐ€ ๋‹ต๋ณ€
6. ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ๋ฉ”์‹œ์ง€ ๋ชฉ๋ก, ์ž…๋ ฅ์ฐฝ, ์ฝ์–ด์ฃผ๊ธฐ ๋ฒ„ํŠผ โ€œ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ ์ฝ์–ด๋“œ๋ฆด๊นŒ์š”?โ€ ์•ˆ๋‚ด
7. ์ฑ„ํŒ… ์ž…๋ ฅ ํ™”๋ฉด ์Œ์„ฑ ์ž…๋ ฅ ๋ฒ„ํŠผ, ๋ฉ”์‹œ์ง€ ์ „์†ก ๋ฒ„ํŠผ ์‚ฌ์šฉ์ž๊ฐ€ ๋งํ•œ ๋‚ด์šฉ์„ ํ…์ŠคํŠธ๋กœ ๋ณ€ํ™˜ํ•ด ์ฑ„ํŒ… ์ „์†ก

6.3 ์ƒ์„ธ ์‚ฌ์šฉ์ž ํ๋ฆ„

1) ์‹œ์ž‘ ํ™”๋ฉด

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

์‚ฌ์ดํŠธ ์ง„์ž… ์ฆ‰์‹œ ์ž๋™ ์Œ์„ฑ ์žฌ์ƒ์€ ํ”ผํ•œ๋‹ค. ์ž๋™ ์žฌ์ƒ ์Œ์„ฑ์€ ์Šคํฌ๋ฆฐ๋ฆฌ๋” ์‚ฌ์šฉ์ž์˜ ํƒ์ƒ‰์„ ๋ฐฉํ•ดํ•  ์ˆ˜ ์žˆ๊ณ , WCAG๋„ ์ž๋™ ์žฌ์ƒ ์˜ค๋””์˜ค์— ๋Œ€ํ•ด ์ •์ง€ยท์ผ์‹œ์ •์ง€ยท๋ณผ๋ฅจ ์กฐ์ ˆ ์ˆ˜๋‹จ์„ ์š”๊ตฌํ•œ๋‹ค. (W3C)


2) ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ํ™”๋ฉด

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

3) ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ํ™”๋ฉด

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

4) ๊ณต๊ณ  ์ƒ์„ธ + AI ๋Œ€ํ™” ํ™”๋ฉด

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

5) ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ํ™”๋ฉด

ํ•ญ๋ชฉ ๋‚ด์šฉ
ํ™”๋ฉด ์š”์†Œ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ ๋ชฉ๋ก, ์ตœ๊ทผ ๋ฉ”์‹œ์ง€ ์ฝ๊ธฐ ๋ฒ„ํŠผ, ์ฑ„ํŒ… ์ž…๋ ฅ์ฐฝ
์‚ฌ์šฉ์ž ๋ช…๋ น โ€œ์ง€์›์ž ์ฑ„ํŒ…๋ฐฉ ์ฝ์–ด์ค˜โ€
์‹œ์Šคํ…œ ์ฒ˜๋ฆฌ ํ•ด๋‹น ๊ณต๊ณ  ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€ ์กฐํšŒ
์Œ์„ฑ ์ถœ๋ ฅ โ€œ์ตœ๊ทผ ๋ฉ”์‹œ์ง€ 3๊ฐœ๋ฅผ ์ฝ์–ด๋“œ๋ฆด๊ฒŒ์š”โ€ฆโ€
์ถ”๊ฐ€ ๊ธฐ๋Šฅ โ€œ์ฑ„ํŒ…๋ฐฉ ์š”์•ฝํ•ด์ค˜โ€ ์š”์ฒญ ์‹œ AI๊ฐ€ ๋Œ€ํ™” ์š”์•ฝ
๋‹ค์Œ ๋‹จ๊ณ„ ์Œ์„ฑ ์ฑ„ํŒ… ์ž…๋ ฅ

6) ์Œ์„ฑ ์ฑ„ํŒ… ์ž…๋ ฅ ํ๋ฆ„

ํ•ญ๋ชฉ ๋‚ด์šฉ
์‚ฌ์šฉ์ž ์Œ์„ฑ โ€œ๋ฉด์ ‘ ๊ฒฝํ—˜ ์žˆ์œผ์‹  ๋ถ„ ์žˆ๋‚˜์š”?โ€
์‹œ์Šคํ…œ ์ฒ˜๋ฆฌ ์Œ์„ฑ โ†’ ํ…์ŠคํŠธ ๋ณ€ํ™˜
ํ™”๋ฉด ์ถœ๋ ฅ ๋ณ€ํ™˜๋œ ๋ฉ”์‹œ์ง€ ๋ฏธ๋ฆฌ๋ณด๊ธฐ
์‚ฌ์šฉ์ž ํ™•์ธ โ€œ์ „์†กโ€ ๋ฒ„ํŠผ ๋˜๋Š” โ€œ๋ณด๋‚ด์ค˜โ€
๊ฒฐ๊ณผ ์ฑ„ํŒ…๋ฐฉ์— ๋ฉ”์‹œ์ง€ ๋“ฑ๋ก
์Œ์„ฑ ์•ˆ๋‚ด โ€œ๋ฉ”์‹œ์ง€๋ฅผ ์ „์†กํ–ˆ์Šต๋‹ˆ๋‹ค.โ€

6.4 ์‹œ์—ฐ์šฉ ๋Œ€ํ‘œ ์‹œ๋‚˜๋ฆฌ์˜ค

1. ์‚ฌ์šฉ์ž๊ฐ€ ์ด์–ด๋“œ๋ฆผ์— ์ ‘์†ํ•œ๋‹ค.

2. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์Œ์„ฑ ์•ˆ๋‚ด ์‹œ์ž‘ํ•˜๊ธฐโ€ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ๋‹ค.

3. ์ด์–ด๋“œ๋ฆผ์ด โ€œ์›ํ•˜๋Š” ์ผ์ž๋ฆฌ๋ฅผ ๋ง์”€ํ•ด ์ฃผ์„ธ์š”โ€๋ผ๊ณ  ์•ˆ๋‚ดํ•œ๋‹ค.

4. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์„œ์šธ์—์„œ ์‚ฌ๋ฌด์ง ์ผ์ž๋ฆฌ ์ฐพ์•„์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

5. ์ด์–ด๋“œ๋ฆผ์ด ์กฐ๊ฑด์— ๋งž๋Š” ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•œ๋‹ค.

6. ์ด์–ด๋“œ๋ฆผ์ด โ€œ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ 3๊ฐœ๋ฅผ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๊ณต๊ณ ๋Š”...โ€์ด๋ผ๊ณ  ์ฝ์–ด์ค€๋‹ค.

7. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์ฒซ ๋ฒˆ์งธ ๊ณต๊ณ  ์ž์„ธํžˆ ์•Œ๋ ค์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

8. AI๊ฐ€ ๊ณต๊ณ  ๋‚ด์šฉ์„ ์‰ฝ๊ฒŒ ์š”์•ฝํ•ด์ค€๋‹ค.

9. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ์ด ๊ณต๊ณ  ์ง€์›์ž ์ฑ„ํŒ…๋ฐฉ ์ฝ์–ด์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

10. ์ด์–ด๋“œ๋ฆผ์ด ํ•ด๋‹น ๊ณต๊ณ  ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ ์Œ์„ฑ์œผ๋กœ ์ฝ์–ด์ค€๋‹ค.

11. ์‚ฌ์šฉ์ž๊ฐ€ โ€œ๋ฉด์ ‘ ๊ฒฝํ—˜ ์žˆ์œผ์‹  ๋ถ„ ์žˆ๋‚˜์š”? ๋ผ๊ณ  ๋ณด๋‚ด์ค˜โ€๋ผ๊ณ  ๋งํ•œ๋‹ค.

12. ์ด์–ด๋“œ๋ฆผ์ด ์Œ์„ฑ์„ ๋ฉ”์‹œ์ง€๋กœ ๋ณ€ํ™˜ํ•ด ์ฑ„ํŒ…๋ฐฉ์— ์ „์†กํ•œ๋‹ค.

6.5 ํ™”๋ฉด/์Œ์„ฑ ํ๋ฆ„ ์š”์•ฝ

์ด์–ด๋“œ๋ฆผ์˜ ํ™”๋ฉด/์Œ์„ฑ ํ๋ฆ„์€ ๋ฒ„ํŠผ์œผ๋กœ ์Œ์„ฑ ์•ˆ๋‚ด๋ฅผ ์‹œ์ž‘ํ•˜๊ณ , ์Œ์„ฑ์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ๊ฒ€์ƒ‰ํ•œ ๋’ค, AI์™€ ๊ณต๊ณ ์— ๋Œ€ํ•ด ๋Œ€ํ™”ํ•˜๊ณ , ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ์ฝ๊ณ  ์ฐธ์—ฌํ•˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. ํ•ด์ปคํ†ค MVP์—์„œ๋Š” ๋ณต์žกํ•œ ํšŒ์›๊ฐ€์ž…์ด๋‚˜ ์‹ค์ œ ์ž…์‚ฌ์ง€์› ์ž๋™ํ™”๋ณด๋‹ค, ์Œ์„ฑ ๊ธฐ๋ฐ˜ ๊ณต๊ณ  ํƒ์ƒ‰๊ณผ ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ์Œ์„ฑ ์ ‘๊ทผ์„ ์‹œ์—ฐํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•œ๋‹ค.

7. API / DB / ์‹œ์Šคํ…œ ๊ตฌ์กฐ ์„ค๊ณ„

ํ•ด์ปคํ†ค MVP ๊ธฐ์ค€์œผ๋กœ v0 + React/Vite + FastAPI + SQLite ๊ตฌ์กฐ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ๊ฐ„๋‹ค. v0๋Š” React, Tailwind CSS, shadcn/ui ๊ธฐ๋ฐ˜ UI ์ดˆ์•ˆ์„ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ณ , FastAPI๋Š” REST API์™€ WebSocket์„ ๋ชจ๋‘ ์ง€์›ํ•˜๋ฏ€๋กœ ๊ณต๊ณ  ๊ฒ€์ƒ‰ยทAI ๋Œ€ํ™”ยท์ฑ„ํŒ… ๊ธฐ๋Šฅ์„ ํ•œ ์„œ๋ฒ„์—์„œ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. (Vercel)


7.1 ์ „์ฒด ์‹œ์Šคํ…œ ๊ตฌ์กฐ

[์‚ฌ์šฉ์ž]
  โ†“
[v0๋กœ ์ƒ์„ฑํ•œ React/Vite ํ”„๋ก ํŠธ์—”๋“œ]
  โ”œโ”€ ํ™”๋ฉด UI
  โ”œโ”€ STT: ์Œ์„ฑ โ†’ ํ…์ŠคํŠธ
  โ””โ”€ TTS: ํ…์ŠคํŠธ โ†’ ์Œ์„ฑ

  โ†“ REST API / WebSocket

[FastAPI ๋ฐฑ์—”๋“œ]
  โ”œโ”€ ์ฑ„์šฉ๊ณต๊ณ  ๊ฒ€์ƒ‰ API
  โ”œโ”€ AI ๊ณต๊ณ  ๋Œ€ํ™” API
  โ”œโ”€ ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ API
  โ”œโ”€ WebSocket ์ฑ„ํŒ…
  โ””โ”€ DB ์ €์žฅ/์กฐํšŒ

  โ†“

[์™ธ๋ถ€ API / DB]
  โ”œโ”€ ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ์žฅ์• ์ธ ๊ตฌ์ธ API
  โ”œโ”€ LLM API
  โ””โ”€ SQLite DB

7.2 ๊ธฐ์ˆ  ์Šคํƒ

์˜์—ญ ๊ธฐ์ˆ  ์—ญํ• 
UI ์ดˆ์•ˆ v0 ๋ฉ”์ธ ํ™”๋ฉด, ๊ณต๊ณ  ๊ฒ€์ƒ‰ ํ™”๋ฉด, AI ๋Œ€ํ™” ํ™”๋ฉด, ์ฑ„ํŒ…๋ฐฉ ํ™”๋ฉด ์ƒ์„ฑ
Frontend React + Vite v0์—์„œ ๋งŒ๋“  UI์— ์‹ค์ œ ๊ธฐ๋Šฅ ์—ฐ๊ฒฐ
์Œ์„ฑ ์ž…๋ ฅ Web Speech API SpeechRecognition ์‚ฌ์šฉ์ž์˜ ์Œ์„ฑ์„ ํ…์ŠคํŠธ๋กœ ๋ณ€ํ™˜
์Œ์„ฑ ์ถœ๋ ฅ Web Speech API SpeechSynthesis ๊ณต๊ณ  ๊ฒฐ๊ณผ, AI ๋‹ต๋ณ€, ์ฑ„ํŒ… ๋‚ด์šฉ์„ ์Œ์„ฑ์œผ๋กœ ์ถœ๋ ฅ
Backend FastAPI ๊ณต๊ณ  ๊ฒ€์ƒ‰, AI ์š”์ฒญ, ์ฑ„ํŒ…๋ฐฉ API ์ฒ˜๋ฆฌ
์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ… FastAPI WebSocket ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ ์†ก์ˆ˜์‹ 
DB SQLite ํ•ด์ปคํ†ค MVP์šฉ ๊ณต๊ณ  ์บ์‹œ, ์ฑ„ํŒ…๋ฐฉ, ๋ฉ”์‹œ์ง€ ์ €์žฅ
์™ธ๋ถ€ ๊ณต๊ณ  API ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ์žฅ์• ์ธ ๊ตฌ์ธ API ์žฅ์• ์ธ ์ฑ„์šฉ๊ณต๊ณ  ๋ฐ์ดํ„ฐ ์กฐํšŒ
AI LLM API ๊ณต๊ณ  ์š”์•ฝ, ๊ณต๊ณ  ์งˆ์˜์‘๋‹ต, ์ฑ„ํŒ… ์š”์•ฝ

Web Speech API๋Š” ์Œ์„ฑ ์ธ์‹๊ณผ ์Œ์„ฑ ํ•ฉ์„ฑ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์›น์•ฑ์— ์Œ์„ฑ ๊ธฐ๋Šฅ์„ ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค. ๋‹ค๋งŒ SpeechRecognition์€ ์ผ๋ถ€ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ง€์›์ด ์ œํ•œ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํ…์ŠคํŠธ ์ž…๋ ฅ๋„ ํ•จ๊ป˜ ์ œ๊ณตํ•œ๋‹ค. (MDN ์›น ๋ฌธ์„œ)


7.3 ์™ธ๋ถ€ API ์„ค๊ณ„

API ์‚ฌ์šฉ ๋ชฉ์  ์ฃผ์š” ๋ฐ์ดํ„ฐ
ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ์žฅ์• ์ธ ๊ตฌ์ธ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ API ์žฅ์• ์ธ ์ฑ„์šฉ๊ณต๊ณ  ๊ฒ€์ƒ‰ ๋ชจ์ง‘๊ธฐ๊ฐ„, ์‚ฌ์—…์žฅ๋ช…, ๋ชจ์ง‘์ง์ข…, ๊ณ ์šฉํ˜•ํƒœ, ์ž„๊ธˆ, ์š”๊ตฌ๊ฒฝ๋ ฅ, ์š”๊ตฌํ•™๋ ฅ, ์‚ฌ์—…์žฅ ์ฃผ์†Œ
LLM API ๊ณต๊ณ  ์š”์•ฝ, AI ์งˆ์˜์‘๋‹ต, ์ฑ„ํŒ…๋ฐฉ ์š”์•ฝ ์„ ํƒ ๊ณต๊ณ  ์ •๋ณด, ์‚ฌ์šฉ์ž ์งˆ๋ฌธ, ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€

ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ API๋Š” ํ˜„์žฌ ์ง„ํ–‰ ์ค‘์ธ ์žฅ์• ์ธ ๊ตฌ์ธ ์‚ฌ์—…์ฒด์˜ ์‹ค์‹œ๊ฐ„ ํ˜„ํ™ฉ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜๋ฏ€๋กœ, ์ด์–ด๋“œ๋ฆผ MVP์˜ ๊ณต๊ณ  ๊ฒ€์ƒ‰ ๋ฐ์ดํ„ฐ๋กœ ์‚ฌ์šฉํ•œ๋‹ค. (๋ฐ์ดํ„ฐ.go.kr)


7.4 ๋‚ด๋ถ€ API ์„ค๊ณ„

๊ณต๊ณ  ๊ฒ€์ƒ‰ API

ํ•ญ๋ชฉ ๋‚ด์šฉ
Method GET
URL /api/jobs/search
Query keyword, region, work_type
์„ค๋ช… ์‚ฌ์šฉ์ž์˜ ์Œ์„ฑ ๊ฒ€์ƒ‰ ์กฐ๊ฑด์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ ๋ฅผ ์กฐํšŒํ•œ๋‹ค.
{
  "keyword": "์‚ฌ๋ฌด์ง",
  "region": "์„œ์šธ",
  "work_type": "์žฌํƒ"
}

๊ณต๊ณ  ์ƒ์„ธ ์กฐํšŒ API

ํ•ญ๋ชฉ ๋‚ด์šฉ
Method GET
URL /api/jobs/{job_id}
์„ค๋ช… ์„ ํƒํ•œ ๊ณต๊ณ ์˜ ์ƒ์„ธ ์ •๋ณด๋ฅผ ์กฐํšŒํ•œ๋‹ค.

AI ๊ณต๊ณ  ๋Œ€ํ™” API

ํ•ญ๋ชฉ ๋‚ด์šฉ
Method POST
URL /api/ai/job-chat
Body job_id, question
์„ค๋ช… ์„ ํƒํ•œ ๊ณต๊ณ  ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ AI ๋‹ต๋ณ€์„ ์ƒ์„ฑํ•œ๋‹ค.
{
  "job_id": 1,
  "question": "์ด ๊ณต๊ณ  ๋‚˜ํ•œํ…Œ ๋งž์•„?"
}

๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ์กฐํšŒ API

ํ•ญ๋ชฉ ๋‚ด์šฉ
Method GET
URL /api/jobs/{job_id}/chatroom
์„ค๋ช… ํŠน์ • ๊ณต๊ณ ์˜ ์ฑ„ํŒ…๋ฐฉ์„ ์กฐํšŒํ•œ๋‹ค. ์—†์œผ๋ฉด ์ƒ์„ฑํ•œ๋‹ค.

์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ ์กฐํšŒ API

ํ•ญ๋ชฉ ๋‚ด์šฉ
Method GET
URL /api/chatrooms/{chatroom_id}/messages
์„ค๋ช… ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ์˜ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ ์กฐํšŒํ•œ๋‹ค.

์ฑ„ํŒ…๋ฐฉ ์š”์•ฝ API

ํ•ญ๋ชฉ ๋‚ด์šฉ
Method POST
URL /api/ai/chat-summary
Body chatroom_id
์„ค๋ช… ์ฑ„ํŒ…๋ฐฉ ์ตœ๊ทผ ๋ฉ”์‹œ์ง€๋ฅผ AI๊ฐ€ ์š”์•ฝํ•œ๋‹ค.

7.5 WebSocket ์„ค๊ณ„

ํ•ญ๋ชฉ ๋‚ด์šฉ
WebSocket URL /ws/chat/{chatroom_id}
๋ชฉ์  ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ ์‹ค์‹œ๊ฐ„ ๋ฉ”์‹œ์ง€ ์†ก์ˆ˜์‹ 
ํด๋ผ์ด์–ธํŠธ ์ „์†ก ๋‹‰๋„ค์ž„, ๋ฉ”์‹œ์ง€ ๋‚ด์šฉ
์„œ๋ฒ„ ์ฒ˜๋ฆฌ ๋ฉ”์‹œ์ง€ ์ €์žฅ ํ›„ ๊ฐ™์€ ์ฑ„ํŒ…๋ฐฉ ์‚ฌ์šฉ์ž์—๊ฒŒ broadcast
์ถœ๋ ฅ ์ƒˆ ๋ฉ”์‹œ์ง€ ์ด๋ฒคํŠธ
{
  "nickname": "์ต๋ช…์‚ฌ์šฉ์ž",
  "content": "์ด ๊ณต๊ณ  ๋ฉด์ ‘ ๊ฒฝํ—˜ ์žˆ์œผ์‹  ๋ถ„ ์žˆ๋‚˜์š”?"
}

FastAPI๋Š” WebSocket ๊ฐ์ฒด๋ฅผ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ณต๊ณ ๋ณ„ ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ… ๊ตฌํ˜„์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. (FastAPI)


7.6 DB ์„ค๊ณ„

ํ•ด์ปคํ†ค MVP์—์„œ๋Š” ํšŒ์›๊ฐ€์ž…์„ ์ œ์™ธํ•˜๊ณ , ์ต๋ช… ๋‹‰๋„ค์ž„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค.

job_posts

์ปฌ๋Ÿผ ํƒ€์ž… ์„ค๋ช…
id INTEGER PK ๋‚ด๋ถ€ ๊ณต๊ณ  ID
external_id TEXT ์™ธ๋ถ€ API ๊ณต๊ณ  ์‹๋ณ„๊ฐ’
company_name TEXT ์‚ฌ์—…์žฅ๋ช…
job_title TEXT ๋ชจ์ง‘์ง์ข…
employment_type TEXT ๊ณ ์šฉํ˜•ํƒœ
salary TEXT ์ž„๊ธˆ
experience TEXT ์š”๊ตฌ๊ฒฝ๋ ฅ
education TEXT ์š”๊ตฌํ•™๋ ฅ
address TEXT ์‚ฌ์—…์žฅ ์ฃผ์†Œ
recruit_period TEXT ๋ชจ์ง‘๊ธฐ๊ฐ„
cached_at DATETIME ์บ์‹œ ์ €์žฅ ์‹œ๊ฐ

chat_rooms

์ปฌ๋Ÿผ ํƒ€์ž… ์„ค๋ช…
id INTEGER PK ์ฑ„ํŒ…๋ฐฉ ID
job_post_id INTEGER FK ๊ณต๊ณ  ID
title TEXT ์ฑ„ํŒ…๋ฐฉ ์ด๋ฆ„
created_at DATETIME ์ƒ์„ฑ ์‹œ๊ฐ

chat_messages

์ปฌ๋Ÿผ ํƒ€์ž… ์„ค๋ช…
id INTEGER PK ๋ฉ”์‹œ์ง€ ID
chat_room_id INTEGER FK ์ฑ„ํŒ…๋ฐฉ ID
nickname TEXT ์ต๋ช… ๋‹‰๋„ค์ž„
content TEXT ๋ฉ”์‹œ์ง€ ๋‚ด์šฉ
created_at DATETIME ์ž‘์„ฑ ์‹œ๊ฐ

ai_conversations

์ปฌ๋Ÿผ ํƒ€์ž… ์„ค๋ช…
id INTEGER PK AI ๋Œ€ํ™” ID
job_post_id INTEGER FK ๊ณต๊ณ  ID
question TEXT ์‚ฌ์šฉ์ž ์งˆ๋ฌธ
answer TEXT AI ๋‹ต๋ณ€
created_at DATETIME ์ƒ์„ฑ ์‹œ๊ฐ

7.7 ERD

erDiagram
    JOB_POSTS ||--|| CHAT_ROOMS : has
    CHAT_ROOMS ||--o{ CHAT_MESSAGES : contains
    JOB_POSTS ||--o{ AI_CONVERSATIONS : referenced_by

    JOB_POSTS {
        integer id PK
        text external_id
        text company_name
        text job_title
        text employment_type
        text salary
        text experience
        text education
        text address
        text recruit_period
        datetime cached_at
    }

    CHAT_ROOMS {
        integer id PK
        integer job_post_id FK
        text title
        datetime created_at
    }

    CHAT_MESSAGES {
        integer id PK
        integer chat_room_id FK
        text nickname
        text content
        datetime created_at
    }

    AI_CONVERSATIONS {
        integer id PK
        integer job_post_id FK
        text question
        text answer
        datetime created_at
    }
Loading

7.8 ์•„ํ‚คํ…์ฒ˜ ๋‹ค์ด์–ด๊ทธ๋žจ

flowchart TD
    User[์‚ฌ์šฉ์ž] --> Browser[v0 ๊ธฐ๋ฐ˜ React/Vite ํ™”๋ฉด]

    Browser --> STT[SpeechRecognition<br/>์Œ์„ฑ โ†’ ํ…์ŠคํŠธ]
    Browser --> TTS[SpeechSynthesis<br/>ํ…์ŠคํŠธ โ†’ ์Œ์„ฑ]

    Browser -->|REST API| FastAPI[FastAPI ์„œ๋ฒ„]
    Browser -->|WebSocket| ChatWS[FastAPI WebSocket]

    FastAPI --> JobAPI[ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ<br/>์žฅ์• ์ธ ๊ตฌ์ธ API]
    FastAPI --> LLM[LLM API]
    FastAPI --> DB[(SQLite DB)]

    ChatWS --> DB

    DB --> Jobs[job_posts]
    DB --> Rooms[chat_rooms]
    DB --> Messages[chat_messages]
    DB --> AILogs[ai_conversations]
Loading

7.9 ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ: ์Œ์„ฑ ๊ณต๊ณ  ๊ฒ€์ƒ‰

sequenceDiagram
    actor User as ์‚ฌ์šฉ์ž
    participant Browser as React Browser
    participant API as FastAPI
    participant JobAPI as ์žฅ์• ์ธ ๊ตฌ์ธ API
    participant DB as SQLite

    User->>Browser: "์„œ์šธ ์‚ฌ๋ฌด์ง ์ฐพ์•„์ค˜" ์Œ์„ฑ ์ž…๋ ฅ
    Browser->>Browser: SpeechRecognition์œผ๋กœ ํ…์ŠคํŠธ ๋ณ€ํ™˜
    Browser->>API: GET /api/jobs/search?region=์„œ์šธ&keyword=์‚ฌ๋ฌด์ง
    API->>JobAPI: ์žฅ์• ์ธ ๊ตฌ์ธ ๊ณต๊ณ  ์กฐํšŒ
    JobAPI-->>API: ๊ณต๊ณ  ๋ชฉ๋ก ๋ฐ˜ํ™˜
    API->>DB: ๊ณต๊ณ  ์บ์‹œ ์ €์žฅ
    API-->>Browser: ๊ณต๊ณ  ๋ชฉ๋ก ๋ฐ˜ํ™˜
    Browser->>User: SpeechSynthesis๋กœ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์Œ์„ฑ ์•ˆ๋‚ด
Loading

7.10 ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ: AI ๊ณต๊ณ  ๋Œ€ํ™”

sequenceDiagram
    actor User as ์‚ฌ์šฉ์ž
    participant Browser as React Browser
    participant API as FastAPI
    participant DB as SQLite
    participant LLM as LLM API

    User->>Browser: "์ด ๊ณต๊ณ  ๋‚˜ํ•œํ…Œ ๋งž์•„?" ์Œ์„ฑ ์งˆ๋ฌธ
    Browser->>Browser: SpeechRecognition์œผ๋กœ ํ…์ŠคํŠธ ๋ณ€ํ™˜
    Browser->>API: POST /api/ai/job-chat
    API->>DB: ์„ ํƒ ๊ณต๊ณ  ์ •๋ณด ์กฐํšŒ
    DB-->>API: ๊ณต๊ณ  ์ƒ์„ธ ์ •๋ณด ๋ฐ˜ํ™˜
    API->>LLM: ๊ณต๊ณ  ์ •๋ณด + ์‚ฌ์šฉ์ž ์งˆ๋ฌธ ์ „๋‹ฌ
    LLM-->>API: AI ๋‹ต๋ณ€ ๋ฐ˜ํ™˜
    API->>DB: AI ๋Œ€ํ™” ๊ธฐ๋ก ์ €์žฅ
    API-->>Browser: AI ๋‹ต๋ณ€ ๋ฐ˜ํ™˜
    Browser->>User: SpeechSynthesis๋กœ ๋‹ต๋ณ€ ์Œ์„ฑ ์•ˆ๋‚ด
Loading

7.11 ์‹œํ€€์Šค ๋‹ค์ด์–ด๊ทธ๋žจ: ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ

sequenceDiagram
    actor User as ์‚ฌ์šฉ์ž
    participant Browser as React Browser
    participant WS as FastAPI WebSocket
    participant API as FastAPI
    participant DB as SQLite

    User->>Browser: ๊ณต๊ณ  ์ฑ„ํŒ…๋ฐฉ ์ž…์žฅ
    Browser->>API: GET /api/jobs/{job_id}/chatroom
    API->>DB: ์ฑ„ํŒ…๋ฐฉ ์กฐํšŒ ๋˜๋Š” ์ƒ์„ฑ
    DB-->>API: ์ฑ„ํŒ…๋ฐฉ ์ •๋ณด ๋ฐ˜ํ™˜
    API-->>Browser: ์ฑ„ํŒ…๋ฐฉ ์ •๋ณด ๋ฐ˜ํ™˜

    Browser->>WS: WebSocket ์—ฐ๊ฒฐ /ws/chat/{chatroom_id}
    User->>Browser: "๋ฉด์ ‘ ๊ฒฝํ—˜ ์žˆ์œผ์‹  ๋ถ„ ์žˆ๋‚˜์š”?" ์Œ์„ฑ ์ž…๋ ฅ
    Browser->>Browser: SpeechRecognition์œผ๋กœ ๋ฉ”์‹œ์ง€ ๋ณ€ํ™˜
    Browser->>WS: ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€ ์ „์†ก
    WS->>DB: ๋ฉ”์‹œ์ง€ ์ €์žฅ
    WS-->>Browser: ์ƒˆ ๋ฉ”์‹œ์ง€ broadcast
    Browser->>User: SpeechSynthesis๋กœ "๋ฉ”์‹œ์ง€๋ฅผ ์ „์†กํ–ˆ์Šต๋‹ˆ๋‹ค" ์•ˆ๋‚ด
Loading

7.12 ์ตœ์ข… ์š”์•ฝ

์ด์–ด๋“œ๋ฆผ MVP๋Š” v0๋กœ ์ƒ์„ฑํ•œ React/Vite ํ”„๋ก ํŠธ์—”๋“œ์™€ FastAPI ๋ฐฑ์—”๋“œ, SQLite DB๋กœ ๊ตฌ์„ฑํ•œ๋‹ค. ์‚ฌ์šฉ์ž์˜ ์Œ์„ฑ ์ž…๋ ฅ๊ณผ ์Œ์„ฑ ์ถœ๋ ฅ์€ ๋ธŒ๋ผ์šฐ์ €์˜ Web Speech API๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ , FastAPI๋Š” ์ฑ„์šฉ๊ณต๊ณ  ๊ฒ€์ƒ‰, AI ๊ณต๊ณ  ๋Œ€ํ™”, ๊ณต๊ณ ๋ณ„ ์ฑ„ํŒ…๋ฐฉ, WebSocket ์ฑ„ํŒ…์„ ๋‹ด๋‹นํ•œ๋‹ค. ์ฑ„์šฉ๊ณต๊ณ  ๋ฐ์ดํ„ฐ๋Š” ํ•œ๊ตญ์žฅ์• ์ธ๊ณ ์šฉ๊ณต๋‹จ ์žฅ์• ์ธ ๊ตฌ์ธ API์—์„œ ์กฐํšŒํ•˜๊ณ , ๊ณต๊ณ  ์บ์‹œ์™€ ์ฑ„ํŒ… ๋ฉ”์‹œ์ง€๋Š” SQLite์— ์ €์žฅํ•œ๋‹ค.

8. ๊ฐœ๋ฐœ ๊ณผ์ •

8.1 ์š”์•ฝ

๊ฐœ๋ฐœ๊ณผ์ •์€ ์•„๋ž˜์ฒ˜๋Ÿผ ์ด 3๊ฐœ์˜ ๋ฒ„์ „์œผ๋กœ ๋‚˜๋ˆ ์„œ ์ง„ํ–‰๋˜๋Š” ์ ์ง„์  ๊ฐœ๋ฐœ ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ํ•œ๋‹ค.

  • v1 : ์Œ์„ฑ์œผ๋กœ ์ฑ„์šฉ๊ณต๊ณ  ์ฐพ์•„์ง€๋Š” ๊ธฐ๋Šฅ
  • v2 : ai ์†Œํ†ต
  • v3 : ์‚ฌ๋žŒ๋“ค๊ณผ์˜ ์†Œํ†ต

About

๐Ÿ˜Ž ์‹œ๊ฐ์žฅ์• ์ธ์„ ์œ„ํ•œ ์Œ์„ฑ ๋Œ€ํ™”ํ˜• AI ๊ณ ์šฉ์ง€์› ์„œ๋น„์Šค

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages