5만 건의 통화를 처리하는 아웃바운드 음성 에이전트를 구축하며 배운 점
What I learned building an outbound voice agent that's handled 50k calls
핵심 요약
음성 에이전트 구축 시 모델 프롬프트보다 시간대 준수, 구조화된 데이터 출력, 인프라 관리가 훨씬 중요하다는 실무적 교훈을 공유합니다.
- 구조화된 출력 — 모델의 주관적 판단 대신 대화 기록 기반의 데이터 추출이 훨씬 일관됨
- 시간대 준수 — 리드별 현지 시간 확인은 필수이며 이를 간과하는 경우가 많음
- 인프라 관리 — 스케줄링, 규정 준수, 동시성 제한 등 에이전트 외적인 요소가 성공의 핵심임
- 데이터 검증 — 통화 성공 여부뿐만 아니라 최종 저장소에 데이터가 정상 기록되는지 확인해야 함
튜토리얼 같은 거 아니고, 그냥 누가 진작에 좀 알려줬으면 좋았을 법한 내용들임.
에이전트 만드는 건 껌임. 프롬프트만 잘 짜면 성능은 알아서 잘 나옴. 진짜 사람 미치게 만드는 건 그 주변에 깔린 잡다한 것들임. 스케줄링, 컴플라이언스 윈도우, DNC(수신 거부), 음성 사서함 정책, 동시성 제한, 그리고 프로바이더 타임아웃 때문에 전체 큐가 멈추지 않게 관리하는 거, 이게 진짜 골 때림.
가장 큰 교훈: 분류 작업은 모델한테 마지막에 "이거 괜찮은 리드임?"이라고 물어볼 게 아니라, 트랜스크립트랑 구조화된 출력(structured output)을 기반으로 해야 함. 훨씬 일관성 있게 나옴.
둘째: 리드별 시간대 준수는 선택이 아니라 필수인데, 이걸 제대로 하는 놈들이 거의 없음.
이런 프로젝트에 관심 있는 사람 있으면 알려줘, 반응 좋으면 더 올릴게!



