← 모든 글

음성 모달리티 — 고객센터 상담 요약 실험

음성 통화 데이터를 텍스트로 변환하고 LLM 으로 요약하는 파이프라인을 실험한 과정, 그리고 예상보다 어려웠던 부분들을 기록한다.

고객센터 상담 전화를 텍스트로 변환해서 요약하는 기능을 실험해 볼 기회가 있었다. 개념적으로는 단순해 보였다. 음성 파일 → 전사(transcription) → 요약. 하지만 막상 시작하면 각 단계에서 예상보다 많은 문제를 만났다.

전사 단계에서 만난 것들

전사 자체는 성숙한 기술이다. 공개된 STT 서비스들이 일반 품질의 음성에서는 충분한 정확도를 보인다. 문제는 실제 고객 상담 통화가 “일반 품질”이 아닌 경우가 많다는 것이다.

우리가 마주친 어려움들:

  • 배경 소음: 카페, 이동 중, 혼잡한 환경에서 걸려온 전화는 전사 정확도가 크게 떨어진다.
  • 방언과 비표준 발음: 일부 발음이나 사투리가 전사 단계에서 전혀 다른 단어로 변환되는 경우가 있었다.
  • 전문 용어: 우리 도메인 고유의 단어나 서비스 명칭이 일반 STT 모델에서는 오인식된다.
  • 화자 분리: 상담사와 고객 두 사람의 말이 섞인 경우, 누가 무슨 말을 했는지 구분이 안 되면 요약이 혼란스러워진다.

화자 분리(diarization)는 특히 중요했다. 상담사의 안내 멘트와 고객의 불만 내용이 뒤섞인 텍스트를 요약하면 초점이 흐려진다. 화자를 구분한 다음 고객 발화 부분만 집중해서 요약하는 방식이 품질 차이를 만들었다.

요약 단계의 설계

전사 텍스트를 그대로 LLM 에 넘기면 몇 가지 문제가 생긴다. 첫째, 전사 오류가 요약에 그대로 전파된다. 둘째, 반복적인 인사말이나 확인 멘트 같은 노이즈가 요약 품질을 낮춘다. 셋째, 긴 통화는 컨텍스트 창을 넘기기도 한다.

우리가 시도한 방식은 요약 전에 전처리 단계를 두는 것이다.

전사 텍스트
    → 화자 분리 (고객 발화 추출)
    → 짧은 반복 발화 제거 ("네", "알겠습니다" 등)
    → 청크 분할 (긴 통화인 경우)
    → LLM 요약 (구조화된 출력: 문의 유형, 핵심 내용, 처리 결과)

출력 형식을 구조화하는 것이 중요했다. 자유 텍스트 요약보다 “문의 유형: X, 핵심 내용: Y, 처리 결과: Z” 형태로 받으면 이후 분류나 집계에 쓰기가 쉽다.

실험 결과와 한계

요약 품질은 전사 품질에 직접적으로 의존한다. 전사가 나쁘면 아무리 좋은 요약 프롬프트를 써도 결과가 좋지 않다. 반대로 전사 품질이 높으면 요약은 꽤 만족스러운 수준으로 나왔다.

아직 해결하지 못한 부분도 있다. 통화 맥락이 중요한 경우, 즉 고객이 이전 통화를 언급하거나 오래된 이슈를 이어서 말하는 경우에 단일 통화 요약만으로는 전체 맥락을 잡기 어렵다. 고객 이력과 연결하는 부분은 다음 단계 과제로 남아 있다.

음성 모달리티는 기술적으로는 접근 가능하지만, 실제 운영 환경의 노이즈와 다양성을 다루는 것이 핵심 난도라는 걸 이번 실험에서 배웠다.

— by slecs