AI 상담사가 전화를 걸어 연결됐습니다. 그런데 받은 쪽이 꼭 사람이라는 보장은 없죠. 음성사서함일 수도 있고, 요즘은 단말에 깔린 AI가 사람보다 먼저 받기도 합니다.
음성사서함이라면 빨리 끊어야 합니다. 반대로 통화 스크리닝이라면 끊지 말고 답해서, 사람에게 닿을 때까지 통과해야 하죠. 첫 1초엔 둘 다 비슷하게 들리는데, 정작 해야 하는 행동은 정반대입니다. 이 글에서는 vox.ai가 연결 직후 몇 초 안에 "지금 누가 받았는지"를 어떻게 가려내는지 정리했습니다.
1. 전화가 연결돼도, 받은 쪽이 사람이 아닐 수 있어요
전화가 막 연결된 직후 몇 초는 생각보다 어수선합니다. 통화 연결음과 컬러링 위로 "연결이 되지 않아 삐 소리 후 소리샘으로 연결됩니다" 같은 사전 안내가 깔리기도 합니다. 거기에 실제 음성사서함 멘트, ARS 메뉴, 통화 녹음 안내까지 번갈아 섞입니다. 여기에 요즘은 새 관문이 하나 더 생겼습니다. 수신자 단말의 AI가 사람보다 먼저 받는 통화 스크리닝입니다.
이 신호들은 서로 닮아서 더 까다롭습니다. "소리샘"이나 "음성사서함"이라는 말은 진짜 사서함에서도, 아직 연결 중인 사전 안내에서도 나옵니다. 단말 AI가 "누구세요"라고 물을 때의 첫인상도 녹음 안내와 별 차이가 없죠. 그렇다고 사람이 또렷하게 말해 주느냐 하면, 그것도 아닙니다. "여보세요" 한 마디뿐일 때가 많거든요.
그래서 "음성사서함이라는 말이 들렸다"는 사실 하나로 행동을 정하면 위험합니다. 끊지 말아야 할 통화를 끊어 버리면 멀쩡한 고객 전화를 시스템이 일방적으로 끊는 사고가 됩니다. 스크리닝에서 잘못 끊으면 그 사람에게는 영영 닿지 못합니다. 그래서 처음 몇 초 안에 "지금 받은 게 뭔지"부터 가려내야 합니다. 끊을지, 통과할지, 대화할지는 그다음 문제죠.
2. 통화 초반의 신호를 세 갈래로 나눠요
vox.ai는 이 판단을 여러 시스템으로 나누는 대신, 같은 초반 감지 엔진 하나로 처리합니다. 엔진 하나가 음성사서함, 통화 스크리닝, 사람을 한자리에서 갈라냅니다.
갈래가 정해지면 그때부터 행동이 갈립니다. 음성사서함이면 곧장 끊고, 스크리닝이면 답을 한 뒤 사람이 연결되길 기다리고, 사람이면 바로 대화로 들어갑니다. 먼저 음성사서함 쪽부터 보겠습니다.

3. 음성사서함: 빨리 끊어야 하는 쪽
AI 상담사가 전화를 걸면 곧 "지금 고객님께서 전화를 받을 수 없습니다. 삐 소리 후 음성 메시지를 남겨 주세요" 같은 안내가 흘러나옵니다. 사람이라면 이 한 문장으로 바로 알아챕니다. vox.ai는 이 판정에 네 가지 방법을 함께 씁니다. 실시간 전사, multimodal 판단, 사후 보정, audio fingerprint에 저마다 다른 역할을 맡깁니다.
여기서 모든 걸 짓누르는 제약은 시간입니다. 음성사서함은 안내가 끝나면 곧장 녹음 구간으로 넘어갑니다. "삐" 소리 뒤부터죠. 그 전에 끊지 못하면 AI 상담사가 빈 사서함에 대고 혼자 말을 시작합니다. 판정에 쓸 수 있는 시간은 안내 멘트가 흐르는 짧은 구간뿐이고, 이 몇 초가 아래 네 방법의 우선순위를 정합니다.
3-1. 들려오는 말을 실시간으로 글자로 옮기기
가장 직관적인 방법은 음성을 실시간으로 글자로 옮긴 뒤, 음성사서함을 가리키는 표현을 찾는 것입니다. 구조가 단순하다는 게 큰 장점입니다. 운영자가 통화 기록에서 "왜 그렇게 판단했는지"를 텍스트로 바로 확인할 수 있고, "소리샘"이나 "삐 소리 후 음성 메시지를 남겨 주세요" 같은 또렷한 문구는 잘 잡힙니다.
문제는 전화 초반 오디오가 짧고 불안정하다는 점입니다. 안내 멘트 구간 자체가 짧은 데다 그 위에 컬러링과 잡음까지 얹힙니다. 글자로 옮긴 결과가 채 안정되기도 전에 판정해야 할 순간이 와 버리죠. 거의 무음인 구간에서는 엉뚱한 문장이 만들어지기도 합니다. 텍스트는 분명 좋은 단서지만, 그것 하나만 믿고 통화를 끊기엔 부족합니다.

3-2. 전사와 오디오를 함께 보는 multimodal 판단
전사에는 "음성... 함으로 연결...니다" 정도로만 흐릿하게 남는데, 정작 오디오에는 음성사서함 특유의 안내 톤과 녹음 대기음이 또렷한 경우가 있습니다. 그래서 다음 방법은 전사와 오디오를 함께 보는 것입니다. 초반 구간의 오디오와 전사를 한꺼번에 LLM에 넣으면, 키워드만 맞춰 보던 방식보다 한결 신중하게 ARS인지 음성사서함인지 사람인지를 가립니다.
대신 대가가 따릅니다. 실시간 통화 중에 모델을 한 번 부르면 그 왕복만으로 짧은 판정 시간을 야금야금 잡아먹고, 비용과 안정성도 호출할 때마다 따져야 합니다. 같은 오디오를 넣어도 판단이 매번 똑같으리라고 장담하기 어렵죠. 그래서 multimodal은 느리지만 신중한 판단으로 두고, 빠르게 끊어야 할 실행 신호는 뒤에 나올 fingerprint에 맡깁니다.
3-3. 통화가 끝난 뒤 다시 보고 바로잡기
실시간 판단이 흔들린 통화도 있습니다. 누가 봐도 음성사서함이었는데 종료 사유가 다르게 기록돼서, 리포트만 보면 사람이 받았다가 끊은 통화처럼 보이는 식이죠. 그래서 통화가 끝난 뒤 전체 녹취로 한 번 더 봅니다. 긴 문맥과 사람 검수를 거쳐 틀린 사례를 정확한 정답 라벨로 되돌리고, 이 라벨은 리포트를 깨끗하게 유지하면서 패턴 목록과 다음 모델을 키우는 학습 데이터가 됩니다.
다만 이미 통화가 끝난 뒤라, AI 상담사가 사서함에 길게 말해 버린 일까지 되돌리지는 못합니다. 과금도 마찬가지입니다. 보정은 종료 사유와 분석 라벨만 새로 채울 뿐, 이미 써 버린 통화 시간은 그대로 과금됩니다. 그래서 초반에 fingerprint로 빨리 끊는 것이 정확도와 비용 양쪽에서 중요합니다. 사후 보정은 기록과 품질을 정리해 줄 뿐, 그 순간의 응대 자체를 멈추지는 못하니까요.

3-4. Shazam처럼, audio fingerprint로 알아채기
같은 통신사의 음성사서함 안내는 전화를 걸 때마다 거의 똑같이 반복됩니다. 글자로 옮기면 매번 조금씩 흔들리지만, 소리 패턴으로 보면 거의 같은 신호죠. 여기서 떠올린 비유가 Shazam입니다. Shazam은 짧은 오디오의 고유한 소리 패턴을 알려진 곡 목록과 대조해 곡을 찾습니다. vox.ai의 음성사서함 fingerprint도 같은 발상입니다. 안내 멘트의 음향 특징을 해시 같은 압축 표현으로 만든 뒤, 검증된 패턴 목록과 유사도로 견줍니다. "충분히 닮았다"고 볼 기준선은 검증으로 정하고, 구체적인 수치는 공개하지 않습니다.
fingerprint가 강한 이유는 글자를 거치지 않고 소리 특징을 곧장 대조하기 때문입니다. 코덱 압축이나 잡음, 언어 차이에 덜 흔들리고, 무엇보다 글자가 충분히 쌓이기를 기다릴 필요가 없습니다. 안내 멘트가 몇 마디 흐르자마자 맞춰 볼 수 있어서, 짧은 판정 구간에서 가장 먼저 결론을 냅니다. fingerprint를 앞에 두고 multimodal을 보조로 둔 이유죠.
물론 만능은 아닙니다. 검증된 패턴 목록을 꾸준히 관리해야 하고, 새 안내는 검수를 거친 뒤에 더해야 합니다. 사람 인사나 ARS처럼 닮았지만 끊으면 안 되는 신호도 hard negative로 함께 검증해 둡니다. 목록에 없는 안내는 매칭이 뜨지 않으니 자동으로 전사와 multimodal 경로로 넘어가고, 매칭이 떴더라도 종료 직전에 보수적인 안전장치를 한 번 더 통과시킵니다.

4. 통화 스크리닝: 끊지 말고 통과해야 하는 쪽
이번엔 정반대 갈래입니다. 통화 스크리닝은 수신자 단말의 AI가 사람보다 먼저 받아 "누구세요", "무슨 용건이세요"를 묻고, 그 답을 수신자에게 보여 준 뒤 연결 여부를 정하는 기능입니다. 삼성 빅스비 텍스트콜, iOS 26, SKT 에이닷이 이렇게 응대합니다. 사람이 받기 전에 단말 AI가 한 번 걸러 주는 관문인 셈이죠.
여기서 끊어 버리면 그 사람에게는 영영 닿지 못합니다. 신원과 용건을 간결히 답하고, 사람이 연결될 때까지 잠자코 기다려서 통과해야 합니다. 그런데 통화 맨 앞 한순간엔 음성사서함과 비슷하게 들립니다. 같은 초반 엔진이 이 두 신호를 한자리에서 갈라내야 하는 이유입니다.

스크리닝을 만났을 때, AI 상담사가 통과하는 과정
스크리닝으로 판정되면, AI 상담사는 미리 정해 둔 신원과 용건을 단말 AI가 알아들을 만큼만 짧게 답합니다. 이를 위해 음성사서함만 잡던 초반 감지기를 스크리닝까지 가려내도록 넓혀 두었습니다.
진짜 어려운 건 그다음입니다. 답을 마친 AI 상담사는 단말 AI가 사람에게 연결해 줄 때까지 말없이 기다려야 하는데, 바로 이 침묵이 문제를 일으킵니다.
원래 vox.ai에는 안전장치가 하나 있습니다. 상대가 한참 말이 없으면 "응답이 끊겼다"고 보고 통화를 정리하거나 다시 말을 거는 장치입니다. 평소에는 멈춰 버린 통화를 깔끔하게 처리해 주는 고마운 기능이죠. 그런데 스크리닝을 기다리는 이 구간에서는 정반대로 작동합니다. 사람을 기다리는 정상적인 침묵을 "끊긴 통화"로 오해해서, 다 와 가던 연결을 스스로 깨 버리는 겁니다.
그래서 이 구간에서만큼은 "침묵은 곧 끊긴 통화"라는 규칙을 잠시 꺼 둡니다. 대신 통화 전체에 최대 시간을 정해 둡니다. 사람이 끝내 받지 않더라도 정해진 시간이 되면 통화가 알아서 정리되도록 한 것입니다.
기다림 끝에 사람이 연결되는 순간도 놓치면 안 됩니다. 단말 AI의 안내는 늘 비슷한 패턴이라, 그와 다른 새로운 말투가 들리면 사람이 받았다고 알아챕니다. 이때 AI 상담사는 다시 인사를 건네며 본래 하려던 대화를 시작합니다. 반대로 통화 맨 앞에서는 AI 상담사의 첫인사와 단말 AI의 안내가 서로 말을 덮지 않도록 말 꺼내는 타이밍을 맞춥니다.
이 대응이 어긋나더라도 통화를 먼저 끊지는 않습니다. 사람이 받을 통화를 시스템이 끊어 버리는 쪽이 더 큰 사고이기 때문입니다. 다만 이렇게 두면 실패가 조용히 묻히기 쉬워서, 어떤 통화에서 통과가 어긋났는지는 따로 기록해 살펴봅니다. 단말마다 말하는 방식이 달라 빅스비 텍스트콜, iOS 26, 에이닷을 각각 확인해야 하고, 이런 동작은 실제 기기에서만 제대로 검증됩니다. 새로 나온 단말은 아직 확인이 덜 된 영역이라, 확실하지 않으면 무리해서 통과시키지 않고 보수적으로 둡니다.
정리하면 음성사서함과 통화 스크리닝은 같은 엔진에서 갈라져 나오지만, 보수적으로 움직이는 방향이 정반대입니다. 음성사서함은 한순간이라도 빨리 끊으려고, 통화 스크리닝은 한 통이라도 섣불리 끊지 않으려고 신중해집니다.
5. 끊을 때, 통과할 때, 말할 때를 아는 시스템
연결 직후 상대가 사람인지 사서함인지부터 못 가리면, 그다음 말솜씨는 빈 사서함에 대고 쏟는 셈이 됩니다. 그래서 vox.ai는 이 첫 판단을 여러 층으로 나눠 처리합니다. 통화 초반에 단 한 번, 음성사서함인지 통화 스크리닝인지 사람인지를 가르는 분기가 골격을 잡습니다. 그 위에 fingerprint와 multimodal, 실시간 전사와 사후 보정이 저마다 다른 속도로 층을 이룹니다. 빠른 신호는 짧은 판정 구간 안에서 곧장 결정을 내리고, 느리지만 정확한 신호는 통화가 끝난 뒤 기록과 학습을 차분히 정리합니다.
이 판단은 통화 한 건으로 끝나지 않습니다. 운영 전체의 도달률로 이어집니다. 끊지 말아야 할 통화를 끊으면 사람에게 닿을 기회 자체가 사라지고, 음성사서함에 길게 응대하면 비용과 통화 자원이 새어 나가니까요. 끊어야 할 통화는 빨리 정리하고, 사람을 기다리는 통화는 끝까지 붙잡는 것. 그 판단이 곧 캠페인이 진짜 사람에게 닿는 비율을 지킵니다. 같은 신호로 시작하는 통화를 정반대 행동으로 갈라내는 일이야말로, 연결 직후 시스템이 가장 먼저 해내야 하는 일입니다.
이 판단이 실제로 어떻게 굴러가는지는 직접 들어 보는 편이 빠릅니다. vox.ai의 AI 상담사에게 전화를 한번 걸어 보세요. 통화 초반의 불완전한 신호 속에서 시스템이 어떻게 끊고, 기다리고, 대화를 이어 가는지 직접 확인하실 수 있습니다.