최근 대규모 언어모델(LLM)을 활용한 검색 증강 생성(RAG) 시스템은 외부 API, 데이터베이스, 벡터 스토어 등 다양한 도구를 연동하며 복잡해지고 있습니다. 이 과정에서 기존 방식은 모든 도구 설명을 LLM에 노출하거나 단순히 벡터 유사성으로만 도구를 선택하여, 불필요한 데이터를 과도하게 가져오거나(over-fetching) 필요한 정보를 놓치는(under-fetching) 비효율적인 문제가 발생했습니다. 이러한 비효율은 페이로드 크기 증가, 토큰 사용량 증대, 그리고 응답 지연으로 이어져 시스템 운영 비용 상승과 사용자 경험 저하를 초래했습니다.
이 문제를 해결하기 위해 용은 조(Yong-eun Cho) 연구원은 '스키마라우터(SchemaRouter)'라는 경량 라우팅 레이어를 제안했습니다. 스키마라우터는 도구, 엔드포인트, 파라미터, 응답 필드, 도메인 개념 등을 스키마 그래프(schema graph)로 표현합니다. 사용자의 질의가 들어오면, 작은 LLM이 질의의 의도와 제약 조건을 추출하고, 스키마라우터는 이 정보를 바탕으로 어떤 도구를 호출하고 어떤 필드를 검색할지 정확히 지정하는 실행 가능한 도구 계획(executable tool plan)을 생성합니다. 이를 통해 필요한 정보만 선별적으로 가져와 효율성을 극대화합니다.
실험 결과, 스키마라우터는 재료 과학 벤치마크에서 기존 방식인 '모든 것을 가져오는(fetch-everything)' 방식과 유사한 0.71의 답변 정확도를 달성하면서도, 검색된 컨텍스트 토큰 수를 2,066개에서 227개로 획기적으로 줄였습니다. 또한, 엔드투엔드(end-to-end) 지연 시간은 '모든 프롬프트(prompt-all)' 방식 대비 2.7배 단축되었습니다. 특히, 도구 정확도(tool-exact rate)는 0.93, 파라미터 유효성(parameter validity)은 1.0을 기록하며 뛰어난 성능을 보였습니다. 이는 스키마라우터가 복잡한 RAG 시스템의 효율성을 높이고, 비용을 절감하며, 답변의 신뢰성까지 향상시킬 수 있음을 의미합니다.
