๐Ÿ“บ ์˜์ƒ ์š”์•ฝ ์•„์นด์ด๋ธŒ
โ† ๋ชฉ๋ก

How to Build Voice Agents That Don't Fall Apart When You Interrupt - Jesse Hall, LiveKit

AI Engineer ยท 2026-10-26 16:00 ยท 20:55

ํ•œ ์ค„ ํ•ต์‹ฌ

์‹ค์‹œ๊ฐ„ ์Œ์„ฑ ์—์ด์ „ํŠธ๋Š” ๋‹จ์ˆœํ•œ ์ฑ—๋ด‡์ด ์•„๋‹ˆ๋ผ ์ง€์—ฐ, ํ„ดํ…Œ์ดํ‚น, ๋„๊ตฌ ํ˜ธ์ถœ, ํ‰๊ฐ€๊นŒ์ง€ ํฌํ•จํ•œ ์ „์ฒด ๋Œ€ํ™” ์‹œ์Šคํ…œ์œผ๋กœ ์„ค๊ณ„ํ•ด์•ผ ๋Š๊น€ ์—†์ด ์‚ฌ๋žŒ์ฒ˜๋Ÿผ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ๋‹ค.

์‹œ๊ฐ„๋ณ„ ์š”์•ฝ

  1. 0:00
    ์‹ค์‹œ๊ฐ„ ์—์ด์ „ํŠธ์™€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์—์ด์ „ํŠธ ์ฝ”๋“œ ์ž‘์„ฑ์ด๋‚˜ ๋ฆฌ์„œ์น˜์ฒ˜๋Ÿผ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ๋Š” ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์—์ด์ „ํŠธ์™€ ๋‹ฌ๋ฆฌ, ์ „ํ™” ์ƒ๋‹ดํ˜• ์‹ค์‹œ๊ฐ„ ์—์ด์ „ํŠธ๋Š” ์‚ฌ์šฉ์ž์˜ ๋ง ๋Š๊ธฐ, ๋ง ๋ณ€๊ฒฝ, ์ค‘๊ฐ„ ์ˆ˜์ •์— ์ฆ‰์‹œ ์ ์‘ํ•ด์•ผ ํ•œ๋‹ค. ํŠนํžˆ ๊ธˆ์œต์ฒ˜๋Ÿผ ์˜ค๋ฅ˜ ๋น„์šฉ์ด ํฐ ์ƒํ™ฉ์—์„œ๋Š” ๋Œ€ํ™”๊ฐ€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ด์–ด์ง€์ง€ ์•Š์œผ๋ฉด ์‹ ๋ขฐ์™€ ์—…๋ฌด ์„ฑ๊ณผ๊ฐ€ ํ•จ๊ป˜ ๋ฌด๋„ˆ์ง„๋‹ค.
  2. 1:47
    ๊ธˆ์œต ์„œ๋น„์Šค์šฉ ์ธ๊ฐ„ํ˜• ์Œ์„ฑ ์—์ด์ „ํŠธ ์Œ์„ฑ ์—์ด์ „ํŠธ์˜ ํ•ต์‹ฌ์€ ์†๋„๋งŒ์ด ์•„๋‹ˆ๋ผ ์‚ฌ๋žŒ์ฒ˜๋Ÿผ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋ฐ˜์‘ํ•˜๋Š” ๊ฒฝํ—˜์ด๋ฉฐ, ์ง€์—ฐ ์‹œ๊ฐ„์€ ๊ทธ ๋ชฉํ‘œ๋ฅผ ์œ„ํ•œ ์ œํ•œ๋œ ์˜ˆ์‚ฐ์— ๊ฐ€๊น๋‹ค. ์Œ์„ฑ์€ ๊ฐ€์žฅ ์ž์—ฐ์Šค๋Ÿฌ์šด ์ธํ„ฐํŽ˜์ด์Šค์ด๊ธฐ ๋•Œ๋ฌธ์— ์‹ค์ œ ์„œ๋น„์Šค์—์„œ๋Š” ์ธ๊ฐ„๋‹ค์šด ์ƒํ˜ธ์ž‘์šฉ ํ’ˆ์งˆ์ด ๊ฒฝ์Ÿ๋ ฅ์˜ ์ค‘์‹ฌ์ด ๋œ๋‹ค.
  3. 3:46
    LiveKit๊ณผ ์Œ์„ฑ ํŒŒ์ดํ”„๋ผ์ธ LiveKit์€ ์‚ฌ๋žŒ์˜ ๋ง๊ณผ ์†Œ๋ฆฌ, ์˜์ƒ, ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๋‹ค๋ฃจ๋Š” ์‹ค์‹œ๊ฐ„ ์˜คํ”ˆ์†Œ์Šค ํ”„๋ ˆ์ž„์›Œํฌ์ด๋ฉฐ, ์—ฌ๊ธฐ์„œ๋Š” ์Œ์„ฑ ์—์ด์ „ํŠธ์— ์ดˆ์ ์„ ๋งž์ถ˜๋‹ค. ์Œ์„ฑ์€ ๊ฐ€์žฅ ์ต์ˆ™ํ•œ ์ง„์ž…์ ์ด๋ฉด์„œ๋„ ๊ตฌํ˜„ ๋‚œ๋„๊ฐ€ ๋†’์•„, ์‹ค์‹œ๊ฐ„ ์ƒํ˜ธ์ž‘์šฉ์˜ ํ•ต์‹ฌ ๋ฌธ์ œ๋“ค์ด ์ง‘์ค‘๋˜๋Š” ์˜์—ญ์ด๋‹ค.
  4. 4:21
    ์—ฐ์‡„ํ˜• ํŒŒ์ดํ”„๋ผ์ธ๊ณผ speech-to-speech ์ „ํ†ต์ ์ธ ์Œ์„ฑ ์—์ด์ „ํŠธ๋Š” STT, LLM, TTS์˜ 3๋‹จ๊ณ„ ํŒŒ์ดํ”„๋ผ์ธ์œผ๋กœ ๊ตฌ์„ฑ๋˜์ง€๋งŒ, ์ตœ๊ทผ์—๋Š” ์ด๋ฅผ ๋Œ€์ฒดํ•˜๋Š” speech-to-speech ๋ชจ๋ธ๋„ ๋“ฑ์žฅํ•˜๊ณ  ์žˆ๋‹ค. ๋‹ค๋งŒ ์„ ํƒ์ง€๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์•„์กŒ๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋–ค ๋ชจ๋ธ์ด๋“  ๋‹จ๋… ์„ฑ๋Šฅ๋ณด๋‹ค ์ „์ฒด ๋Œ€ํ™” ํ’ˆ์งˆ ๊ด€์ ์—์„œ ํŒ๋‹จํ•ด์•ผ ํ•œ๋‹ค.
  5. 5:05
    ๋ฆฌ๋”๋ณด๋“œ๋งŒ์œผ๋กœ๋Š” ์Šคํƒ์„ ๊ณ ๋ฅผ ์ˆ˜ ์—†๋Š” ์ด์œ  ๋ฆฌ๋”๋ณด๋“œ๋Š” ๊ฐœ๋ณ„ ๋ชจ๋ธ์„ ํ‰๊ฐ€ํ•  ๋ฟ, ์‹ค์ œ ์„œ๋น„์Šค์ฒ˜๋Ÿผ ๋ชจ๋ธ๋“ค์ด ์—ฐ์‡„์ ์œผ๋กœ ์˜ํ–ฅ์„ ์ฃผ๋Š” ๋Œ€ํ™” ์ „์ฒด๋ฅผ ํ‰๊ฐ€ํ•˜์ง€ ๋ชปํ•œ๋‹ค. ์ž…๋ ฅ ์ธ์‹ ์˜ค๋ฅ˜๊ฐ€ ๋’ค ๋‹จ๊ณ„๋กœ ์ „ํŒŒ๋˜๋Š” ๊ตฌ์กฐ์™€, ์‹ค์ œ ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์˜ ์žก์Œยท๋ถˆ์™„์ „ํ•œ ์Œ์„ฑ๊นŒ์ง€ ๊ณ ๋ คํ•˜๋ฉด ์ž์ฒด ์‹œ๋‚˜๋ฆฌ์˜ค๋กœ ์Šคํƒ์„ ๊ฒ€์ฆํ•ด์•ผ ํ•œ๋‹ค.
  6. 6:46
    ์ฒซ ๋ฐ”์ดํŠธ๊ฐ€ ์•„๋‹ˆ๋ผ ์ฒซ ์˜ค๋””์˜ค TTS๋Š” dashboard์˜ time to first byte๊ฐ€ ๋น ๋ฅด๋”๋ผ๋„ ์‹ค์ œ๋กœ๋Š” ์นจ๋ฌต์ด ๊ธธ๊ฒŒ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ์ฒ˜์Œ ์†Œ๋ฆฌ๋ฅผ ๋“ฃ๊ธฐ๊นŒ์ง€ ๊ฑธ๋ฆฌ๋Š” time to first audio๋ฅผ ๋ด์•ผ ํ•œ๋‹ค. ๋Œ€ํ™”์—์„œ๋Š” ์ฒด๊ฐ ์ง€์—ฐ์ด ํ•ต์‹ฌ์ด๋ฏ€๋กœ, ์ˆซ์ž์ƒ ๋น ๋ฆ„๋ณด๋‹ค ๊ท€๋กœ ๋“ค๋ฆฌ๋Š” ์‘๋‹ต ์‹œ์ž‘ ์‹œ์ ์ด ์ค‘์š”ํ•˜๋‹ค.
  7. 7:52
    ์ฒซ ํ† ํฐ์ด ์•„๋‹ˆ๋ผ ์ฒซ ๋ฌธ์žฅ LLM์˜ time to first token์ด ๋น ๋ฅด๋‹ค๊ณ  ํ•ด์„œ ๋ฐ”๋กœ ์Œ์„ฑ ์‘๋‹ต์ด ๋น ๋ฅธ ๊ฒƒ์€ ์•„๋‹ˆ๋ฉฐ, TTS๋Š” ๋ณดํ†ต ์™„์ „ํ•œ ๋ฌธ์žฅ์ด ์žˆ์–ด์•ผ ๋ฐœํ™”๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ชจ๋ธ ํ‰๊ฐ€๋Š” ํ† ํฐ ์†๋„๋ณด๋‹ค ์ฒซ ๋ฌธ์žฅ์„ ์–ผ๋งˆ๋‚˜ ๋นจ๋ฆฌ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ด์•ผ ํ•œ๋‹ค.
  8. 8:38
    ๋А๋ฆฐ ๋„๊ตฌ ํ˜ธ์ถœ์„ ์‚ฌ๋žŒ์ฒ˜๋Ÿผ ์ˆจ๊ธฐ๊ธฐ ์—์ด์ „ํŠธ๋Š” ๋‹จ์ˆœ ๋Œ€ํ™”๊ฐ€ ์•„๋‹ˆ๋ผ ์กฐํšŒ, ํ™•์ธ, ์ œ์ถœ ๊ฐ™์€ ๋„๊ตฌ ํ˜ธ์ถœ์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋ฉฐ, ์ด ๊ณผ์ •์€ ์ง€์—ฐ์„ ๋งŒ๋“ ๋‹ค. ํ•ต์‹ฌ์€ ๋Œ€ํ™”์™€ ๋„๊ตฌ ์‹คํ–‰์„ ๊ฐ™์€ ํ๋ฆ„์— ๋ฌถ์–ด ๋ฉˆ์ถ”๊ฒŒ ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด๋ฉฐ, ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ๋กœ mic๋ฅผ ๋Œ€ํ™”์— ๋‹ค์‹œ ๋Œ๋ ค์ค˜์•ผ ์‚ฌ๋žŒ์ด ํ†ตํ™”ํ•˜๋“ฏ ๊ณ„์† ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.
  9. 10:14
    ํ˜ธํ…” ์˜ˆ์•ฝ ์—์ด์ „ํŠธ ๋ฐ๋ชจ ํ˜ธํ…” ์˜ˆ์•ฝ ๋ฐ๋ชจ์—์„œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ค‘๊ฐ„์— ๋ผ์–ด๋“ค๊ณ  ์ •๋ณด๊ฐ€ ์ˆœ์ฐจ์ ์œผ๋กœ ์ €์žฅ๋˜๋Š” ๋™์•ˆ์—๋„ ๋Œ€ํ™”๊ฐ€ ๋ฉˆ์ถ”์ง€ ์•Š์•˜๋‹ค. ๋ฐฑ์—”๋“œ๊ฐ€ ์‘๋‹ต์„ ๋๋‚ด๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ๋‹ค์Œ ์งˆ๋ฌธ์œผ๋กœ ๋„˜์–ด๊ฐ€๋ฉฐ, ์˜ค๋ฅ˜๊ฐ€ ๋‚˜๋ฉด ํ™•์ธํ•˜๊ฑฐ๋‚˜ ์‚ฌ๋žŒ์—๊ฒŒ ๋„˜๊ธฐ๋Š” ํ๋ฆ„๊นŒ์ง€ ํฌํ•จํ•ด ์ž์—ฐ์Šค๋Ÿฌ์šด ์ƒ๋‹ด ํ˜•ํƒœ๋ฅผ ๋ณด์—ฌ์ค€๋‹ค.
  10. 12:33
    ์–ธ์ œ ๋“ฃ๊ณ  ์–ธ์ œ ๋งํ• ์ง€ ํŒ๋‹จํ•˜๊ธฐ turn detection์€ ์‚ฌ์šฉ์ž๊ฐ€ ๋ง์„ ๋๋ƒˆ๋Š”์ง€ ํŒ๋‹จํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋ฉฐ, ๋‹จ์ˆœ ์ „์‚ฌ๋ฟ ์•„๋‹ˆ๋ผ ์˜ค๋””์˜ค์˜ ๋ฆฌ๋“ฌ, ๋†’๋‚ฎ์ด, ์–ต์–‘๊นŒ์ง€ ํ•จ๊ป˜ ๋ด์•ผ ์ •ํ™•๋„๊ฐ€ ๋†’์•„์ง„๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ˆ ์•ก์ˆ˜์ฒ˜๋Ÿผ ๋Š์–ด ๋งํ•˜๊ธฐ ์‰ฌ์šด ์ž…๋ ฅ์—์„œ๋„ ์ค‘๊ฐ„์— ๋Š์ง€ ์•Š๊ณ  ๋๊นŒ์ง€ ๋“ฃ๋Š” ํ–‰๋™์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.
  11. 14:02
    ์ง€์—ฐ ์‹œ๊ฐ„ ์˜ˆ์‚ฐ ๋ฐœํ™”์˜ ๋งˆ์ง€๋ง‰ ์Œ์ ˆ๋ถ€ํ„ฐ ์—์ด์ „ํŠธ์˜ ์ฒซ ๊ฐ€์ฒญ ์‘๋‹ต๊นŒ์ง€๊ฐ€ ์ „์ฒด latency budget์ด๋ฉฐ, ์ด ์•ˆ์— ๋ชจ๋“  ๋ชจ๋ธ, ํ•จ์ˆ˜, handoff๊ฐ€ ๋“ค์–ด๊ฐ€์•ผ ํ•œ๋‹ค. ์•ฝ 1.5์ดˆ๋ฅผ ๋„˜๊ธฐ๋ฉด ์–ด์ƒ‰ํ•ด์ง€๊ธฐ ์‹œ์ž‘ํ•˜๊ณ , 5~600๋ฐ€๋ฆฌ์ดˆ ์ˆ˜์ค€์— ๋“ค์–ด๊ฐ€์•ผ ์‚ฌ๋žŒ ๊ฐ™์€ ๋Œ€ํ™”๋กœ ๋А๊ปด์ง„๋‹ค.
  12. 15:44
    ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐœํ™”์ž๋กœ ์Šคํƒ ๋ฒค์น˜๋งˆํ‚นํ•˜๊ธฐ ์ •๋‹ต์„ ์ฐพ์œผ๋ ค๋ฉด ์™„์„ฑ๋œ ์—์ด์ „ํŠธ์— ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ฐœํ™”์ž๋ฅผ ๋ถ™์—ฌ, ๋ชฉํ‘œ ๋ณ€๊ฒฝยท๋ง ๋Š๊ธฐยท์žก์Œยท์›…์–ผ๊ฑฐ๋ฆผ ๊ฐ™์€ ์‹ค์ œ ์ƒํ™ฉ์„ ๋ฐ˜๋ณต ํ…Œ์ŠคํŠธํ•ด์•ผ ํ•œ๋‹ค. ๊ฐ™์€ ์‹œ๋‚˜๋ฆฌ์˜ค์— ๋ชจ๋ธ๋งŒ ๋ฐ”๊ฟ” ๋„ฃ์–ด ๊ฒฐ๊ณผ๋ฅผ ๋น„๊ตํ•˜๋ฉด, ๋ฆฌ๋”๋ณด๋“œ๊ฐ€ ์•„๋‹ˆ๋ผ ์ž์‹ ์˜ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋งž๋Š” ๋ฒค์น˜๋งˆํฌ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.
  13. 18:35
    ๊ฒฐ๊ณผ์™€ ์ถœ์‹œ ์ „ ์ ๊ฒ€ํ‘œ ์‹คํ—˜ ๊ฒฐ๊ณผ๋Š” ๊ฐ™์€ ๋ชจ๋ธ์ด๋ผ๋„ ์ œ๊ณต ์ธํ”„๋ผ์— ๋”ฐ๋ผ ์†๋„๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์œผ๋ฉฐ, LiveKit์€ ์Œ์„ฑ ์›Œํฌ๋กœ๋“œ์— ๋งž๊ฒŒ ์ถ”๋ก ์„ ์ตœ์ ํ™”ํ•œ๋‹ค. ์ถœ์‹œ ์ „์—๋Š” ์ง€์—ฐ ์˜ˆ์‚ฐ ์„ค์ •, ํ•ต์‹ฌ ์ •๋ณด ํ™•์ธ, ์‹ ์› ๊ฒ€์ฆ, ๋А๋ฆฐ ๋„๊ตฌ ์‹คํ–‰ ์ค‘ ๋Œ€ํ™” ์œ ์ง€, ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๊ธฐ๋ฐ˜ ํšŒ๊ท€ ํ…Œ์ŠคํŠธ๋ฅผ ๋ฐ˜๋ณตํ•ด ์‹ค์ œ ๋Œ€ํ™” ํ’ˆ์งˆ์„ ๊ฒ€์ฆํ•ด์•ผ ํ•œ๋‹ค.

์‹ค๋ฌด ์ธ์‚ฌ์ดํŠธ

  • ์Œ์„ฑ ์—์ด์ „ํŠธ์˜ ์„ฑ๋Šฅ ํ‰๊ฐ€๋Š” ๋ชจ๋ธ ๋‹จ๋… ์ ์ˆ˜๋ณด๋‹ค ์‹ค์ œ ๋Œ€ํ™” ์‹œ๋‚˜๋ฆฌ์˜ค ์ „์ฒด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•ด์•ผ ํ•˜๋ฉฐ, ํŠนํžˆ interrupt์™€ background noise๋ฅผ ํฌํ•จํ•œ ํ…Œ์ŠคํŠธ๊ฐ€ ํ•„์ˆ˜๋‹ค.
  • ์ง€์—ฐ ์‹œ๊ฐ„ ์ตœ์ ํ™”๋Š” ์ ˆ๋Œ€ ์†๋„ ๊ฒฝ์Ÿ์ด ์•„๋‹ˆ๋ผ ์‚ฌ์šฉ์ž ์ฒด๊ฐ ๊ธฐ์ค€์˜ ์˜ˆ์‚ฐ ๊ด€๋ฆฌ ๋ฌธ์ œ์ด๋ฏ€๋กœ, time to first audio์™€ time to first sentence๋ฅผ ๋ณ„๋„๋กœ ์ธก์ •ํ•ด์•ผ ํ•œ๋‹ค.
  • ๋„๊ตฌ ํ˜ธ์ถœ์ด ์žˆ๋Š” ์Œ์„ฑ ์—์ด์ „ํŠธ๋Š” ๋Œ€ํ™”์™€ ๋ฐฑ์—”๋“œ ์ž‘์—…์„ ๋ถ„๋ฆฌํ•ด ๋น„๋™๊ธฐ๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋ฉฐ, ๊ทธ๋ž˜์•ผ ์‚ฌ์šฉ์ž๊ฐ€ ๋ผ์–ด๋“ค์–ด๋„ ํ๋ฆ„์ด ๋Š๊ธฐ์ง€ ์•Š๋Š”๋‹ค.