PoC와 본사업 사이의 성능 괴리 — LLM 콜봇이 운영에서 달라지는 이유


PoC(개념검증) 단계에서 인상적인 성능을 보여주던 LLM 콜봇이 본사업 운영으로 넘어가는 순간 전혀 다른 모습을 보이는 경우가 있습니다. 응답 지연이 갑자기 길어지거나, STT 인식률이 눈에 띄게 떨어지거나, 시나리오 정확도가 흔들리는 상황입니다. 이 글은 그 괴리가 어디서 비롯되는지를 구성 요소별로 분해하고, PoC 단계부터 미리 설계해야 할 전환 체크리스트를 정리합니다. 시리즈 마지막 편인 만큼, 40편에 걸쳐 다룬 콜봇 엔지니어링의 핵심을 이 주제로 마무리하겠습니다.

[시리즈] S2S·LLM 음성 에이전트 엔지니어링 63편 · 현재 8-6편

← 이전: 8-5 콜봇 SLM: 30B vs 70B 트레이드오프 / 다음 → 9-1 상담어시스트란 무엇인가 — 실시간 STT가 상담사 화면을 바꾸는 구조

전체 목차 펼치기 (63편)

Part 1 — 음성 AI가 느린 이유: 레이턴시 진단 (4편)

Part 2 — 텍스트를 넘어: End-to-End S2S의 원리 (4편)

Part 3 — 실시간 대화와 에이전트화: 인터럽트·MCP·도구 (5편)

Part 4 — 인프라·세션·보안: 프로덕션 백엔드 (5편)

Part 5 — 운영·품질·평가: 에이전틱 워크플로우와 신뢰성 (7편)

Part 6 — 음성 경험 고도화·실전 통합: 한국어·UX·전화망·엣지 (5편)

Part 7 — S2S 도입 전략·구매 의사결정 (4편)

Part 8 — LLM 콜봇 PoC 현장 (6편)

Part 9 — 상담어시스트: 상담사 화면을 바꾸는 실시간 AI (7편)

Part 10 — 직접 만든 롤플레이 챗봇: RAG 에이전트 구축기 (8편)

Part 11 — KMS 실무 — 지식관리시스템의 설계와 운영 현실 (8편)

PoC 환경이 만들어내는 착시

PoC는 통제된 조건에서 가능성을 증명하는 자리입니다. 문서 3~10개, 단순 시나리오 10~20개, 그리고 동시에 접속하는 사용자가 많아야 1~2명인 환경에서 진행됩니다. 이 조건에서 응답 레이턴시가 1.2초라면, 시스템이 충분히 빠르다는 인상을 줍니다. STT 인식률이 95%라면, 실사용에 문제없겠다는 판단이 섭니다.

문제는 이 숫자들이 그 환경에 한정된 값이라는 점입니다. RAG 검색 대상이 10개 문서일 때와 5만 개 문서일 때의 검색 레이턴시는 다릅니다. 전용 GPU 인스턴스에서 나온 추론 속도와 수십 개 세션이 동시에 돌아가는 공유 인프라에서의 속도도 다릅니다. 녹음 파일로 테스트한 STT 결과와 실제 전화망에서 들어오는 노이즈 환경에서의 결과도 다릅니다. PoC가 만들어내는 착시는 여기서 출발합니다. 각 구성 요소가 최적화된 조건에서만 동작하도록 검증받았고, 그 검증이 운영 환경을 대표한다고 착각하는 것입니다.

PoC 보고서와 운영 첫 달 모니터링 대시보드를 나란히 놓고 보면, 같은 시스템을 설명하는 자료라고 믿기 어려울 때가 많습니다. 지표 이름은 같아도 측정 조건이 다르기 때문입니다. 여러 프로젝트에서 반복되는 패턴은, 이 격차 자체보다 격차의 존재를 아무도 미리 경고하지 않았다는 점이 더 큰 문제로 남는다는 것입니다. 그래서 PoC 보고서에는 성능 수치 옆에 "이 수치가 어떤 조건에서 측정됐는지"를 항상 함께 적어 두는 습관이, 나중의 오해를 가장 값싸게 막는 방법입니다.

RAG: 문서 규모가 검색 레이턴시를 바꾸는 방식

LLM 콜봇에서 RAG(Retrieval-Augmented Generation)는 고객 질문에 답하기 위한 지식 기반입니다. PoC 단계에서는 FAQ 수십 건, 상품 안내 몇 개, 업무 규정 2~3개 정도로 운용합니다. 벡터 인덱스에 올라가는 문서가 적기 때문에 검색 자체는 수십 밀리초 안에 끝납니다.

본사업으로 가면 이 규모가 달라집니다. 수년 치 Q&A 아카이브, 다수의 상품군 설명서, 업무 매뉴얼, 약관 문서 등이 합산되면 수만 개 청크가 인덱스에 올라갑니다. 동일한 벡터 검색 알고리즘을 쓰더라도 대상 공간이 커지면 근사 최근접 이웃(ANN) 탐색 시간이 늘어납니다. 실제 PoC 대비 운영 환경에서 RAG 검색 레이턴시가 3~5배 증가하는 사례는 드물지 않습니다. 특히 청크 크기, 인덱스 파라미터, 재랭킹 여부에 따라 이 차이는 더 벌어질 수 있습니다.

여기서 놓치기 쉬운 부분은 재랭킹 단계입니다. PoC에서는 단순 코사인 유사도 Top-K 결과를 그대로 쓰지만, 운영에서는 정확도를 높이기 위해 Cross-Encoder 기반 재랭킹을 추가하는 경우가 많습니다. 정확도는 올라가지만 레이턴시는 또 한 번 늘어납니다. PoC에서 재랭킹 없이 측정한 수치를 운영 기준으로 그대로 가져가면, 본사업 첫 달부터 SLA 위반이 발생할 수 있습니다.

LLM 추론: GPU 경합이 만드는 불규칙한 지연

PoC 단계에서는 LLM 추론을 전용 인스턴스에서 실행하는 경우가 많습니다. 하나의 GPU가 그 PoC만을 위해 돌아가는 상황입니다. 이 조건에서 측정한 TTFT(Time To First Token)나 토큰 생성 속도는 최적 상태의 수치입니다.

본사업 운영으로 가면 동시 접속 세션이 수십에서 수백 개로 늘어납니다. GPU 자원은 여러 요청을 배치(batch) 처리합니다. 이 과정에서 특정 요청이 배치 큐에 대기하거나, 다른 세션의 긴 컨텍스트 처리로 인해 자원 경합이 발생합니다. 결과적으로 응답 지연의 분산이 커집니다. 평균 레이턴시는 PoC와 비슷해 보여도, P95 혹은 P99 지연이 수 배로 벌어지는 현상이 나타납니다.

환경동시 세션평균 TTFTP99 TTFT
PoC (전용 인스턴스)1~20.8초1.0초
운영 초기 (공유 인프라)20~301.1초2.8초
운영 피크 (공유 인프라)80~1201.4초5.2초

위 표는 업계에서 보고되는 일반적인 패턴을 단순화한 예시입니다. 실제 수치는 모델 크기, 인프라 구성, 청크 길이에 따라 달라집니다. 중요한 것은 평균값보다 꼬리 지연(tail latency)이 고객 경험을 결정한다는 사실입니다. 콜 센터에서 고객이 3초 이상 응답을 기다리면 상담 포기율이 크게 올라갑니다. PoC에서 평균 레이턴시만 보고 이 문제를 지나치면, 운영 첫 주에 고객 불만이 쏟아집니다.

STT: 전화 노이즈가 인식률을 끌어내리는 구조

PoC 단계에서 STT 평가는 대체로 녹음 파일로 진행합니다. 조용한 환경에서 또렷하게 말한 음성이거나, 이미 잡음이 제거된 클린 파일입니다. 이 조건에서 95% 이상의 인식률이 나오는 것은 어렵지 않습니다. 현재 STT 엔진들의 일반 성능이 그 수준이기 때문입니다.

본사업 환경에서 음성은 전화망(PSTN 또는 VoIP)을 통해 들어옵니다. 여기에는 여러 가지 잡음 요인이 누적됩니다. 배경 소음(사무실, 이동 중, TV 소리), 통화 압축 코덱 특성(G.711, G.729), 망 지연에 의한 패킷 손실, 에코 등입니다. 이런 실환경 전화 음성에서 STT 인식률은 PoC 대비 5~8% 하락하는 경우가 일반적입니다 — 특정 1개 프로젝트의 수치가 아니라 여러 콜봇 구축 사례를 지켜보며 공통적으로 관찰한 하락 폭이며, 코덱·잡음·회선 조건에 따라 편차가 있습니다.

5~8% 하락이 작게 들릴 수 있지만, 콜봇 맥락에서는 다릅니다. 인식 오류는 단순히 한 단어가 잘못 전사되는 데 그치지 않습니다. 숫자, 고유 명사, 금융 상품명, 계좌 뒷자리처럼 콜봇이 판단에 활용해야 하는 핵심 정보가 오인식되면, 후속 LLM 응답 전체가 틀린 방향으로 흘러갑니다. 이 누적 오류가 체감 품질을 낮추고 상담사 에스컬레이션 비율을 높입니다. PoC에서 클린 파일로만 평가했다면, 이 현상은 운영 단계에서야 비로소 드러납니다.

PoC→운영 전환 체크리스트

괴리를 줄이는 가장 확실한 방법은 PoC 단계에서 운영 환경을 미리 시뮬레이션하는 것입니다. 완벽하게 재현하기는 어렵지만, 핵심 변수를 PoC 조건에서 의도적으로 늘려 보는 것만으로도 숨겨진 병목을 조기에 발견할 수 있습니다.

문서 규모 10배 테스트. PoC에 사용한 문서 수를 최소 10배 이상 늘린 상태에서 RAG 검색 레이턴시를 재측정합니다. 이미 보유한 아카이브 문서나 더미 데이터를 채워도 됩니다. 이 조건에서 P95 레이턴시가 SLA 임계값을 초과한다면, 인덱스 파라미터 조정이나 캐싱 전략을 PoC 종료 전에 검토해야 합니다.

동시 접속 부하 테스트. 예상 피크 동시 세션의 120% 수준으로 부하를 걸고 응답 지연 분포를 측정합니다. 평균값보다 P95·P99 지연이 얼마인지를 봅니다. 이 수치가 운영 SLA와 맞지 않는다면, GPU 스케일링 계획 또는 요청 큐 우선순위 전략이 필요합니다.

실제 전화 녹음 기반 STT 평가. 가능하다면 운영 예정 채널과 유사한 전화 환경에서 녹음한 음성으로 STT를 재평가합니다. 기존 콜 센터가 운영 중이라면 당해 연도 통화 녹음 샘플 100~200건을 확보해 인식률을 측정하는 것이 현실적입니다. 클린 파일 대비 얼마나 하락하는지를 미리 파악하면, 후처리(LLM 교정 레이어) 또는 도메인 커스텀 STT 적용 여부를 PoC 안에서 결정할 수 있습니다.

GPU 스케일링 계획 수립. 동시 세션이 몇 개일 때 레이턴시 SLA를 넘는지를 PoC에서 측정하고, 그 임계값에 맞는 자동 스케일링 정책을 설계합니다. 온프레미스라면 GPU 서버 증설 리드타임을, 클라우드라면 Auto Scaling 그룹 파라미터와 스케일아웃 반응 시간을 함께 검토해야 합니다.

체크리스트 항목PoC 조건검증 목표
RAG 문서 규모 테스트PoC 대비 10배 이상 문서 적재P95 검색 레이턴시 SLA 이내
동시 접속 부하 테스트예상 피크의 120%P99 TTFT SLA 이내
실환경 STT 평가전화 녹음 샘플 100건+인식률 하락폭 파악 및 대응 방안 확정
GPU 스케일링 계획레이턴시 임계 세션 수 측정스케일아웃 정책 및 리드타임 확정

솔루션 사업자가 고객에게 제시할 수 있는 전환 로드맵

솔루션 사업자 입장에서 PoC→본사업 전환은 단순히 시스템을 확장하는 문제가 아닙니다. 고객이 PoC에서 경험한 성능에 대한 기대치를 관리하고, 그 기대치가 운영 환경에서 어떻게 달라질 수 있는지를 미리 정직하게 설명하는 것이 신뢰 관계의 시작입니다.

실무에서 효과적인 접근은 3단계 로드맵을 고객과 공유하는 방식입니다. 첫 번째 단계는 PoC 환경에서 운영 규모 시뮬레이션을 추가로 수행하는 것입니다. 앞서 설명한 체크리스트 항목들을 PoC 완료 전에 한 번 더 돌리고, 그 결과를 고객과 함께 리뷰합니다. 수치가 예상보다 나쁘더라도 이 단계에서 공유하는 것이 나중에 운영 중에 문제가 터지는 것보다 훨씬 낫습니다.

두 번째 단계는 파일럿 운영입니다. 일부 채널이나 특정 시간대에 제한적으로 운영하면서 실환경 지표를 수집합니다. 이 단계에서 수집한 STT 오인식 패턴, 실제 동시 접속 피크, RAG 검색 레이턴시 분포를 분석해 본사업 인프라 스펙을 확정합니다.

세 번째 단계는 전면 운영 전환입니다. 파일럿에서 수집한 지표 기반으로 GPU 스케일링 계획, RAG 인덱스 최적화, STT 후처리 파이프라인을 정비한 뒤 전환합니다. 이 단계에서는 PoC 때와 다른 알람 임계값과 모니터링 대시보드가 필요합니다. 평균 레이턴시가 아니라 P95·P99 지연과 STT 오인식 비율을 실시간으로 추적하는 체계가 갖춰져야 운영 안정성을 유지할 수 있습니다.

고객에게 "PoC보다 운영이 조금 더 복잡합니다"라고 말하는 것은 약점이 아닙니다. 그 복잡함을 미리 구조화해서 보여주는 것이 오히려 솔루션 사업자의 전문성입니다. PoC에서 측정한 숫자를 그대로 계약서 SLA에 넣는 일은 양측 모두에게 좋지 않은 결과를 낳습니다. 여기까지의 로드맵은 실무에서 얻은 관점과 공개 자료를 엮어 2026년 7월에 정리한 것으로, 특정 조직의 비공개 정보는 담지 않았습니다. 40편에 걸쳐 시리즈를 읽어 주신 독자께 감사드리며, 지금 PoC를 앞두고 있다면 체크리스트 항목 하나라도 실제로 돌려 보는 것이 이 시리즈가 드릴 수 있는 가장 실용적인 다음 행동입니다.

자주 묻는 질문(FAQ)

Q1. PoC와 운영 환경의 성능 차이는 얼마나 납니까?
구성 요소마다 다릅니다. RAG 검색 레이턴시는 문서 규모에 따라 3~5배까지 늘어날 수 있고, LLM 추론의 P99 지연은 동시 세션 수에 따라 PoC 대비 3~6배 수준까지 벌어지는 경우도 있습니다. STT 인식률은 전화 노이즈 환경에서 5~8% 하락이 일반적입니다. 중요한 것은 이 수치가 환경에 따라 크게 달라지므로, 공통 숫자보다는 실환경 시뮬레이션으로 직접 측정하는 것이 정확합니다.

Q2. PoC를 처음부터 운영 규모로 진행하면 안 됩니까?
비용 대비 효율 문제가 있습니다. PoC는 기술 가능성을 증명하는 단계이므로, 처음부터 운영 규모 인프라를 구성하는 것은 낭비입니다. 다만 체크리스트 항목(문서 10배 테스트, 부하 테스트, 실환경 STT 평가)은 PoC가 끝나기 전에 한 번은 수행해야 합니다. 이 추가 검증이 본사업 전환 후 발생하는 리스크를 크게 줄여 줍니다.

Q3. 전화 노이즈 환경에서 STT 인식률을 올릴 수 있습니까?
어느 정도는 가능합니다. 도메인 커스텀 STT 모델을 사용하거나, 전화 음성에 특화된 노이즈 캔슬링 전처리를 추가하는 방법이 있습니다. 또한 STT 출력을 LLM이 재해석하는 오류 교정 레이어를 넣으면 최종 정확도를 높일 수 있습니다. 다만 이런 추가 구성은 레이턴시를 한 단계 더 늘리는 트레이드오프가 있으므로, PoC 단계에서 어떤 조합이 우리 환경에 적합한지 함께 검토해야 합니다.

댓글

이 블로그의 인기 게시물

STT 인식률 93%의 함정 — 왜 그 숫자는 콜봇 목표가 될 수 없는가

AI 보이스봇이 답답한 이유: Cascaded 구조 레이턴시 완전 분석

음성 토큰(Audio Token)이란? LLM이 소리를 이해하는 원리