음성 에이전트를 위한 실시간 RAG 가속, 듀얼 에이전트 설계
초록
VoiceAgentRAG는 백그라운드 Slow Thinker가 대화 흐름을 예측해 문서 청크를 미리 가져오고, 포그라운드 Fast Talker가 서브밀리초 수준의 FAISS 메모리 캐시에서 즉시 검색하도록 설계된 이중‑에이전트 RAG 시스템이다. 200개의 질의·응답 시나리오에서 75 % 캐시 적중률과 316배 검색 속도 향상을 달성하였다.
상세 분석
본 논문은 실시간 음성 인터페이스에서 RAG(Retrieval‑Augmented Generation)의 병목 현상을 해결하기 위해 ‘느린 사고자(Slow Thinker)’와 ‘빠른 화자(Fast Talker)’라는 두 개의 비동기 에이전트를 도입한다. Slow Thinker는 사용자의 현재 발화를 LLM으로 분석해 향후 3~5개의 추론 가능한 토픽을 생성하고, 해당 토픽에 대한 문서 청크를 벡터 데이터베이스(Qdrant)에서 검색해 FAISS 기반 인‑메모리 캐시에 저장한다. 이 과정은 사용자가 현재 응답을 듣는 동안 백그라운드에서 진행되므로 대기 시간이 거의 없다. Fast Talker는 사용자의 다음 발화가 들어오면 즉시 임베딩을 생성하고, 캐시에서 유사도 임계값 τ(=0.40) 이상인 청크를 서브밀리초 내에 반환한다. 캐시 적중 시 벡터 DB 호출을 완전히 생략하고, 적중 실패 시에는 기존 RAG 흐름대로 Qdrant를 조회한 뒤 결과를 캐시에 삽입한다.
캐시 설계는 ‘문서 임베딩 인덱싱’ 방식을 채택해, 초기 설계인 ‘쿼리 임베딩 인덱싱’에서 발생하던 의미 불일치를 해소하였다. FAISS IndexFlatIP를 이용해 코사인 유사도를 빠르게 계산하고, 중복 청크(유사도 >0.95)는 업데이트로 처리한다. TTL(기본 300 s)과 LRU 정책을 통해 메모리 사용량을 제한하면서도 최신 대화 흐름을 반영한다.
실험에서는 10개의 서로 다른 시나리오(총 200턴)에서 전통적인 RAG와 비교했으며, 전체 캐시 적중률 75 %(따뜻한 턴 79 %)와 평균 검색 지연 110 ms → 0.35 ms, 즉 316배 속도 향상을 보고한다. 특히 토픽이 지속되는 API·보안·가격 등 단일 주제 대화에서는 80100 %의 높은 적중률을 보였으며, 주제가 자주 전환되는 혼합형 대화에서는 4060 %에 머물렀다. 턴이 진행될수록 캐시가 빠르게 워밍업되어 5~9턴에 86 % 적중률에 도달한다.
임계값 τ에 대한 민감도 분석에서는 τ=0.40이 정밀도와 재현율 사이의 최적 균형을 제공함을 확인했다. 또한, 백그라운드 프리패칭 간격(기본 0.5 s)과 레이트 리밋을 조절함으로써 벡터 DB 과부하를 방지하면서도 충분한 캐시 커버리지를 유지한다.
한계점으로는 (1) 임베딩 API 호출 자체가 200 ms 정도 소요되어 전체 응답 지연에 큰 비중을 차지한다는 점, (2) 예측 토픽이 부정확할 경우 캐시 효율이 급감한다는 점, (3) 현재는 단일 노드 메모리 캐시이므로 대규모 배포 시 분산 캐시 설계가 필요하다는 점을 들었다. 향후 연구에서는 로컬 임베딩 모델을 도입해 API 지연을 최소화하고, 토픽 예측을 강화하기 위한 멀티‑모달 컨텍스트 활용 및 캐시 일관성을 위한 분산 FAISS 클러스터링을 탐색한다.
댓글 및 학술 토론
Loading comments...
의견 남기기