
통화 전사용 Whisper: 전화 통화를 위한 정확한 음성-텍스트
Eric King
Author
전화 통화 전사는 음성-텍스트에서 가장 흔하고 가치 높은 활용 사례 중 하나입니다. OpenAI Whisper는 잡음, 억양, 불완전한 음질에 강해 이 시나리오에 특히 잘 맞습니다.
이 글에서는 통화 전사에 Whisper를 쓰는 방법으로, 오디오 형식, 화자 분리, 정확도 최적화, 실제 배포 패턴을 설명합니다.
통화 전사에 Whisper를 쓰는 이유
기존 ASR 엔진과 비교할 때 Whisper는 다음에서 좋은 성능을 냅니다.
- 품질이 낮은 전화 오디오(8kHz)
- 억양과 비원어민 화자
- 배경 소음
- 긴 대화(10–120분)
- 다국어 통화와 코드 스위칭
일반적인 사용 사례:
- 고객 지원 통화 로그
- 영업 통화 분석
- QA 및 컴플라이언스
- 통화 요약과 인사이트
- CRM 자동화
일반적인 통화 전사 파이프라인
Call (PSTN / VoIP)
↓
Call Recording (WAV / MP3)
↓
Preprocessing (resample, channel split)
↓
Whisper Transcription
↓
Speaker Diarization (optional)
↓
Post-processing (punctuation, timestamps, summaries)
오디오 형식: 무엇이 가장 좋은가
권장 설정
| 매개변수 | 값 |
|---|---|
| 샘플링 레이트 | 8kHz 또는 16kHz |
| 채널 | 모노 또는 스테레오 |
| 형식 | WAV(권장), FLAC |
| 비트 깊이 | 16비트 PCM |
Whisper는 내부에서 리샘플하지만, 깨끗한 입력이 정확도를 높입니다.
모노 통화와 스테레오 통화
모노(가장 흔함)
- 두 화자가 한 채널에 믹스
- 파이프라인이 단순
- 화자 분리는 더 어려움
적합한 경우:
- 단순 전사
- 검색과 아카이빙
스테레오(모범 사례)
- 왼쪽 채널: 상담원
- 오른쪽 채널: 고객
장점:
- 화자 분리가 명확
- 다이어리제이션 불필요
- 후속 처리 정확도 상승
# Split stereo call into two mono tracks
import torchaudio
audio, sr = torchaudio.load("call.wav")
agent = audio[0]
customer = audio[1]
이후 각 채널을 따로 전사합니다.
Whisper와 화자 다이어리제이션
Whisper는 다이어리제이션을 기본 제공하지 않지만, 다음과 조합할 수 있습니다.
- Pyannote.audio
- WebRTC VAD + 클러스터링
- 채널 기반 분리(선호)
일반적인 접근:
- 다이어리제이션 모델 실행
- 화자 구간별로 오디오 분할
- 각 구간을 Whisper로 전사
- 화자 레이블과 함께 결과 병합
통화에 적합한 Whisper 모델
| 모델 | 정확도 | 속도 | 권장 |
|---|---|---|---|
| base | 보통 | 빠름 | ❌ 짧은 통화 |
| small | 높음 | 보통 | ✅ 대부분의 경우 |
| medium | 매우 높음 | 느림 | ✅ 컴플라이언스 |
| large-v3 | 탁월함 | 매우 느림 | ✅ 법무 / QA |
권장: 콜센터는 small 또는 medium
긴 통화(30–120분)
긴 통화에서는 전체 오디오를 한 번에 넣지 않는 것이 좋습니다.
모범 사례
- 2–5분 단위로 청크 분할
- 5–10초의 작은 오버랩 사용
- 타임스탬프 유지
result = model.transcribe(
audio_chunk,
condition_on_previous_text=True
)
청크 간 맥락이 유지됩니다.
전화 통화 정확도 높이기
1. 오디오 정규화
- 무음 제거
- 볼륨 정규화
- 필요 시 노이즈 감소
2. 언어 힌트 사용
model.transcribe(audio, language="en")
3. GPU에서 FP16 사용
더 빠르고 안정적인 추론.
4. 과도한 작은 청크 지양
너무 짧은 청크는 맥락과 정확도를 떨어뜨립니다.
실시간 대 배치 통화 전사
| 모드 | 사용 사례 |
|---|---|
| 실시간 | 라이브 모니터링, 알림 |
| 준실시간 | QA 대시보드 |
| 배치 | 분석, 아카이빙 |
대부분의 콜센터는 안정성과 비용 때문에 준실시간 또는 배치를 사용합니다.
콜센터에서 Whisper 확장
소규모(하루 100통 이하)
- GPU 서버 1대
- Whisper small
중규모(하루 1k–10k통)
- GPU 풀
- 비동기 작업 큐(RabbitMQ / Kafka)
- 청크 기반 처리
대규모(엔터프라이즈)
- 다수 GPU 노드
- 오디오 전처리 서비스
- 전사 + 요약 파이프라인
후처리와 가치 추출
전사 후 일반적인 단계:
- 문장 부호
- 화자 태깅
- 키워드 추출
- 감성 분석
- 통화 요약(LLM)
- CRM 연동
Whisper와 클라우드 통화 전사 API
| 항목 | Whisper | 클라우드 API |
|---|---|---|
| 비용 | 낮음(자체 호스팅) | 높음 |
| 데이터 프라이버시 | 완전 통제 | 벤더 의존 |
| 정확도 | 매우 높음 | 높음 |
| 커스터마이징 | 전면 | 제한적 |
프라이버시, 비용 통제, 커스터마이징이 필요한 팀에 Whisper는 적합합니다.
결론
Whisper는 통화 전사에 강력한 선택이며, 특히 다음에 적합합니다.
- 고객 지원
- 영업과 QA
- 컴플라이언스가 중요한 산업
적절한 오디오 처리, 청킹, 선택적 다이어리제이션으로 Whisper는 대규모로도 프로덕션급 통화 전사를 제공할 수 있습니다.
