실시간 앱이 필요할 때 Whisper가 여전히 음성 인식(STT)의 기본 선택지일까?
Is Whisper still the best default for speech-to-text if the app needs to be real time?
핵심 요약
실시간 음성 에이전트 개발 시 Whisper의 한계와 호스팅 API 전환 시점에 대한 논의.
- Whisper의 한계 — 실시간 처리 시 청킹 지연, VAD 관리, 인프라 비용 등 유지보수 부담이 큼
- 호스팅 API 대안 — Deepgram, AssemblyAI 등 실시간 스트리밍에 최적화된 서비스들이 주목받음
- 전환 기준 — 지연 시간(latency), 동시성, 화자 분리(diarization) 및 운영 비용이 핵심 결정 요인
- 개발자 의견 — 실시간성이 중요하다면 Whisper보다는 전용 API를 사용하는 것이 효율적이라는 의견이 지배적
배치 전사(transcription) 작업에는 Whisper / faster-whisper / whisper.cpp가 여전히 기본 시작점처럼 느껴짐.
하지만 나는 두 가지 사용 사례를 분리하려고 함:
-
배치 전사
오디오 업로드 → 대기 → 전사
이 경우엔 Whisper가 여전히 훌륭함. 특히 개인정보 보호나 로컬 환경이 중요하다면 더더욱. -
실시간 음성 앱 / 음성 에이전트
사용자 발화 → 부분 전사 → LLM 추론 시작 → 에이전트 응답
여기서는 요구 사항이 완전히 다르게 느껴짐.
계속해서 발견되는 문제점들:
- 청킹(chunking) 지연
- VAD / 엔드포인팅 해킹
- 기본 화자 분리(diarization) 기능 부재
- 타임스탬프 처리에 추가 작업 필요
- 혼합 언어 오디오 처리의 어려움
- 규모 확장을 위한 GPU 비용
- 낮은 p95 지연 시간 확보의 어려움
- 로컬 설정이 인프라 작업으로 변질됨
사람들이 테스트 중인 호스팅 도구들: Deepgram, AssemblyAI, Speechmatics, Soniox, Gladia, OpenAI realtime/transcribe, 그리고 최근 실시간 STT용으로 나온 Smallest AI Pulse.
Whisper를 깎아내리려는 건 아님. 여전히 기준점이니까.
하지만 라이브 음성 에이전트나 실시간 자막 제품을 만들 때, 개인적으로 언제쯤 직접 호스팅을 멈추고 스트리밍 STT API로 넘어가는지 궁금함.
그 기준이 지연 시간인가? 동시성인가? 화자 분리인가? 유지보수인가? 아니면 비용인가?

