ArticleOpenAI·2026년 8월 3일·0

How we built a realtime system for responsive voice AI in six months

Quick Summary

GPT‑Live는 턴 감지기를 제거한 전이중 음성 모델과 비동기 위임, 상태 유지형 추론, 실시간 미디어 전송을 결합해 대화 흐름을 멈추지 않는 저지연 음성 AI 시스템을 6개월 동안 구축했다.

How we built a realtime system for responsive voice AI in six months 관련 대표 이미지

🖼️ 인포그래픽

How we built a realtime system for responsive voice AI in six months 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

How we built a realtime system for responsive voice AI in six months 내용을 설명하는 본문 이미지

💡 한 줄 요약

GPT‑Live는 턴 감지기를 제거한 전이중 음성 모델과 비동기 위임, 상태 유지형 추론, 실시간 미디어 전송을 결합해 대화 흐름을 멈추지 않는 저지연 음성 AI 시스템을 6개월 동안 구축했다.

📌 핵심 요약

  • 기존 음성 AI는 턴 감지기가 사용자의 발화 종료 시점을 결정한 뒤에야 대형 언어 모델을 실행할 수 있어, 말을 끊거나 응답이 늦어지는 문제가 있었다.
  • GPT‑Live는 동시에 듣고 말할 수 있는 전이중 음성 모델을 사용하고, 심층 추론과 도구 호출은 별도의 비동기 경로에서 처리해 실시간 미디어 흐름을 유지한다.
  • 오디오 전용 고속 경로와 애플리케이션 로직을 분리하고 미디어 프런트엔드와 추론 로직을 Go로 재작성한 결과, 새 시스템의 p95 프레임 전달 성능이 이전 시스템의 p50 수준에 도달했다.
  • 장시간 세션의 모델 교체와 문맥 압축은 기존 인스턴스가 대화를 계속하는 동안 대체 인스턴스를 준비한 뒤 전환하는 방식으로 처리해 음성 중단을 방지한다.
  • 연속 음성을 기존 메시지 기반 시스템과 연결하기 위해 잠정적 대화 상태와 확정 기록을 함께 관리하고, 세션 시작 단계의 WebRTC 핸드셰이크와 네트워크 왕복도 응답성의 핵심 경로로 다룬다.

🧩 주요 포인트

  1. 전이중 음성 모델이 발화권 판단까지 맡음 → 별도 턴 감지기의 조기·지연 판정 문제를 제거하고 대화를 더 즉각적으로 만든다.
  2. 미디어 경로와 위임·도구·업무 로직을 분리함 → 느린 백엔드 작업이 오디오 프레임 전달을 막지 않으며 애플리케이션별 기능도 독립적으로 변경할 수 있다.
  3. 모델 교체·문맥 압축·메시지 확정을 전환 가능한 상태로 관리함 → 장시간 연속 대화와 기존 UI·분석·안전 시스템의 요구를 동시에 충족한다.

🧠 상세 정리

1. 기존 턴 기반 음성 시스템의 한계

이전 음성 AI는 텍스트 대형 언어 모델의 턴 기반 구조를 계승해 한 차례의 발화를 독립된 오디오 덩어리로 처리했다. 음성 인식, 언어 모델, 음성 합성을 순차 실행하는 연쇄형 시스템은 각 단계의 지연을 누적시켰고, 전사 과정에서 말투와 발화 속도 같은 음성 단서도 충분히 활용하지 못했다. 음성을 직접 이해하고 생성하는 음성 대 음성 모델은 이런 손실과 일부 지연을 줄였지만, 추론 시작 시점은 여전히 별도의 턴 감지기가 결정했다. 감지기가 너무 일찍 판단하면 사용자의 말을 끊고, 너무 늦게 판단하면 응답이 답답하게 느껴지는 상충 문제가 발생했다. 더 큰 언어 모델은 이 판정이 끝난 뒤에야 작업을 시작할 수 있었으므로, 모델 자체의 성능 향상만으로는 인간 대화의 빠른 발화 교대를 구현하기 어려웠다.

2. 전이중 모델과 끊김 없는 미디어 루프

3세대 음성 시스템인 GPT‑Live는 오디오 경로에서 별도의 턴 감지기를 제거하고, 동시에 듣고 말할 수 있는 전이중 음성 모델이 대화 흐름을 직접 제어하도록 설계됐다. 입력 오디오는 계속 모델로 들어가고 생성된 음성은 사용자에게 곧바로 전송되며, 시스템의 최우선 과제는 이 양방향 미디어 루프를 중단 없이 유지하는 것이다. 더 깊은 추론이나 도구 사용이 필요하면 GPT‑Live는 GPT‑5.5 같은 프런티어 모델에 작업을 위임하지만, 해당 작업은 실시간 음성 경로와 분리된 비동기 경로에서 진행된다. 대화 저장을 포함한 부가 작업도 라이브 경로 밖에서 처리되므로 핵심 음성 흐름을 직접 막지 않는다. 이러한 경계는 애플리케이션의 도구, 정책, 백엔드 동작을 바꾸더라도 응답성을 담당하는 미디어 계층에는 영향을 주지 않게 하며, ChatGPT 데스크톱 앱의 컴퓨터 제어와 에이전트 조정 같은 음성 기능의 기반으로도 사용된다.

3. 프레임 단위의 연속 추론과 미디어 전송

실시간 미디어 시스템에서는 전송, 처리, 추론 중 어느 한 단계의 지연도 들리는 정적이나 부자연스러운 멈춤으로 나타날 수 있어 모든 오디오 프레임을 일정에 맞춰 전달해야 한다. 기존 ChatGPT Voice와 Realtime API를 위해 구축했던 저지연 오디오·비디오 스트리밍 기반 위에, GPT‑Live는 미디어를 모델까지 직접 연결하는 새로운 상태 유지형 추론 시스템을 추가했다. 클라이언트와 음성 모델 사이의 오디오는 전용 고속 경로로 이동하고, 위임과 도구 호출 등은 비동기 RPC 경계 뒤에서 실행된다. 따라서 느린 도구나 백엔드 서비스는 자체 결과만 늦출 뿐 미디어 흐름을 정지시키지 않는다. 미디어 프런트엔드와 추론 로직은 기존 Python asyncio 구현에서 Go로 교체됐으며, 새 시스템의 p95 프레임 전달 성능은 이전 시스템의 p50 수준과 같아질 만큼 매끄러움이 개선됐다. 전송 기반인 WebRTC는 패킷 손실과 시계 오차, 연결 변화를 처리하고, 늦은 패킷이 있을 때 오디오를 미세하게 늘인 뒤 재생을 잠시 가속해 실시간 상태로 복귀시킨다. 시스템 전반의 버퍼링과 블로킹을 줄인 결과 인간 대화에서 기대되는 1초 미만의 응답성을 지원한다.

4. 상태 유지형 추론과 모델 인스턴스 전환

음성 세션은 장시간 이어질 수 있지만 대화 문맥은 계속 커지고, 수요 변화에 따라 모델 인스턴스는 시작되거나 종료될 수 있어 상태 유지형 추론에는 별도의 운영 문제가 따른다. 이를 해결하기 위해 시스템은 현재 인스턴스와 교체 인스턴스 사이의 매끄러운 인계 절차를 구축했다. 전환이 필요하면 기존 모델이 대화를 계속하는 동안 대체 모델 인스턴스를 미리 준비하고, 현재 세션 문맥을 프리필해 필요한 상태를 갖추게 한다. 준비 과정에서는 두 인스턴스에 대해 추론을 병렬로 수행하며, 새 인스턴스가 완전히 준비된 시점에만 실제 트래픽을 넘긴다. 무거운 준비 작업과 상태 복원은 실시간 음성 경로 밖에서 이루어지므로, 모델 수명주기나 수요 변화에 따른 인스턴스 교체가 사용자에게 음성 중단으로 드러나지 않는다.

5. 동적 문맥 압축과 KV 캐시 재구성

대화가 길어지면 누적 문맥이 결국 모델의 문맥 한도를 넘을 수 있으므로, 시스템은 필요할 때 과거 문맥을 압축해 크기를 줄여야 한다. 그러나 압축에는 시간이 걸릴 뿐 아니라 이전 문맥 자체를 변경하기 때문에, 이미 처리된 토큰의 어텐션 키와 값을 저장하는 KV 캐시도 무효화한다. 변경된 문맥으로 추론을 계속하려면 새로운 프리필을 수행해 해당 상태를 다시 만들어야 하며, 이를 현재 모델에서 직접 처리하면 추가 지연이 발생할 수 있다. GPT‑Live는 문맥 압축을 즉석 수정이 아니라 모델 인계와 동일한 관리형 전환으로 취급한다. 기존 인스턴스가 계속 대화하는 동안 별도 경로에서 문맥을 압축하고, 압축된 문맥으로 대체 인스턴스를 프리필한 뒤 준비가 끝났을 때 전환한다. 이 방식은 필요한 횟수만큼 문맥을 압축하면서도 라이브 미디어를 멈추지 않아 장시간 통화를 지원한다.

6. 대화를 막지 않는 프런티어 모델 위임

GPT‑Live는 빠르고 자연스러운 말하기와 더 깊은 사고를 분리해, 복잡한 추론이나 검색·도구 사용이 필요할 때 프런티어 모델을 비동기적으로 호출한다. 두 모델을 하나의 시스템처럼 느끼게 하려면 음성 모델이 잠시 대화를 이어가는 동안 위임 결과가 충분히 빨리 돌아와야 하므로, 라우팅과 프롬프트 처리부터 추론 및 도구 호출까지 전체 위임 루프가 응답성 예산에 포함된다. 음성 세션이 시작될 때 애플리케이션 서버는 프런티어 모델의 추론 세션을 미리 만들고 초기 대화 문맥을 프리필해 첫 위임 전에 프롬프트 처리를 완료한다. 이 추론 세션은 음성 대화가 지속되는 동안 유지되며, 후속 요청에는 안정적인 세션 친화성과 프롬프트 캐싱을 사용하면서 작업자 장애 복구 가능성도 유지한다. 또한 추론 노력의 수준, 출력 한도, 도구 스키마, 모델과 도구 사이의 왕복 횟수를 조정해 유용한 결과가 도착하기까지의 시간을 줄였다. 그 결과 음성 모델은 프런티어 모델의 결과를 대화 흐름 안에 더 빠르게 반영할 수 있다.

7. 연속 음성을 이산 메시지로 변환하는 방법

음성 모델은 겹칠 수 있는 연속 스트림을 처리하지만, ChatGPT 대화 UI와 일부 분석·안전 시스템은 사용자와 어시스턴트의 구분된 메시지를 필요로 한다. 애플리케이션 서버는 부분 전사와 시간 신호를 이용해 현재 발화권을 가진 화자를 추론하고 메시지 대기열을 구성하며, 가장 최근 메시지는 잠정 상태로 유지한다. 추가 음성이 들어오면 그 메시지의 텍스트, 시각 정보, 화자 배정이 바뀔 수 있고, 한 화자가 충분한 시간 동안 발화권을 유지해 판정이 신뢰할 만해졌을 때 확정된다. 사용자가 말하는 도중 어시스턴트가 짧게 동의하는 표현은 독립 메시지가 아닐 수 있지만, 내용 있는 개입은 별도 메시지가 될 수 있어 화자 중첩도 정책적으로 구분해야 한다. 너무 빨리 확정하면 기록이 조각나고 순서가 불안정해지며, 너무 늦게 확정하면 전사와 후속 기능이 지연된다. 시스템은 이를 조정하기 위해 갱신 가능한 잠정 대화 보기와 최종적으로 확정된 권위 있는 기록을 함께 관리하고, UI에는 잠정 보기를 제공하는 반면 분석 파이프라인에는 최종 전사를 전달한다. 이 구조는 실시간 음성 경로에 턴 기반 동작을 강요하지 않으면서도 기존 ChatGPT 구성 요소에 안정적인 대화 기록을 제공한다.

8. 세션 시작 단계의 프로토콜 지연

GPT‑Live의 응답성은 첫 답변이 생성되는 시점이 아니라 사용자가 시작 버튼을 누르는 순간부터 측정해야 한다. 실제 대화를 시작하려면 미디어 경로를 설정하고 입력 오디오가 모델로 전달되도록 해야 하므로, 연결 준비 과정의 모든 단계가 초기 응답을 좌우하는 핵심 경로에 놓인다. WebRTC는 저지연 미디어 전송에 적합한 기반이지만, 일반적인 WebRTC 세션을 시작하려면 예상보다 많은 프로토콜 핸드셰이크와 네트워크 왕복이 필요하다. 따라서 연결 이후의 버퍼링과 블로킹뿐 아니라 첫 오디오가 모델에 도달하기 전의 프로토콜 설정 비용도 전체 응답성 문제에 포함된다. 제공된 원문 구간은 WebRTC가 네트워크 왕복 최소화가 중시되기 전에 만들어졌다는 문제를 제기하는 대목에서 끝나므로, 이후 적용된 구체적인 시작 프로토콜과 단축 수치까지는 확인할 수 없다.

🧾 핵심 주장 / 시사점

  • GPT‑Live의 응답성은 모델 추론 시간 하나가 아니라 연결 설정, 프레임 전송, 라우팅, 프롬프트 처리, 도구 왕복을 포함한 종단 간 경로의 속성으로 관리된다.
  • 모델 교체와 문맥 압축을 모두 준비된 새 상태로 전환하는 동일한 문제로 다룸으로써, 무거운 상태 작업을 실시간 미디어 경로에서 일관되게 분리했다.
  • 전이중 대화를 유지하면서 기존 제품 시스템과 호환하기 위해 연속 음성 자체를 턴 기반으로 제한하지 않고, 주변 계층에서만 잠정 메시지와 확정 메시지를 파생한다.

✅ 액션 아이템

  • 전이중 음성 모델이 발화권 판단까지 맡는 구조에서 턴 감지기 제거가 조기·지연 판정을 얼마나 줄이는지 기준을 정의한다.
  • 오디오 전용 고속 경로와 애플리케이션 로직 분리 뒤 p95 프레임 전달이 이전 p50 수준에 도달한 조건을 비교한다.
  • 장시간 세션의 모델 교체와 문맥 압축을 대체 인스턴스 전환 방식으로 처리할 때 음성 중단 방지 범위를 점검한다.

❓ 열린 질문

  • 비동기 경로의 심층 추론·도구 호출이 실시간 미디어 흐름을 유지하는 한계는 어디에 있는가?
  • 잠정적 대화 상태와 확정 기록을 함께 관리할 때 메시지 기반 시스템과의 정합은 어떻게 판단할 것인가?
  • 세션 시작 단계의 WebRTC 핸드셰이크와 네트워크 왕복을 응답성 핵심 경로로 둘 우선순위는 무엇인가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.