하나의 질문,
최적의 라우팅
Haiku에 물으면 1달러, Opus에 물으면 15달러.
같은 답이 나온다면, 왜 비싼 모델을 쓰는가.
질문마다 최적의 모델을 자동 선택하는 구조가 있다.
사용자 질문
"이 코드의 보안
취약점을 분석해줘"
작업 분류기
질문 유형 판별
단순 / 복잡 / 창작 / 분석
모델 선택기
전략 + 등급 기반
최적 모델 선택
AI 응답
선택된 모델이
스트리밍 응답 생성
등급을 자동 결정
경량 등급으로 고정
고성능 등급으로 고정
특정 모델 사용
동적 모델 라우팅의 구조
동적 모델 라우팅은 사용자의 질문을 분석하여 최적의 AI 모델을 자동으로 선택하는 설계 패턴이다. 핵심은 네 단계로 구성된다.
질문 분류
작업 분류기가 질문의 유형과 복잡도를 판별한다
모델 선택
모델 선택기가 분류 결과와 전략에 따라 모델을 결정한다
응답 생성
선택된 모델이 응답을 생성하고 스트리밍한다
기록
파이프라인 기록기가 전 과정을 비동기로 DB에 기록한다
1단계에서 작업 분류기(Task Classifier)는 질문을 네 가지 유형으로 분류한다. 단순(simple), 복잡(complex), 창작(creative), 분석(analytical). 이 분류 결과가 모델 등급을 결정한다. 단순과 창작은 경량 등급(fast)으로, 복잡과 분석은 고성능 등급(deep)으로 매핑된다.
2단계에서 모델 선택기(Model Router)는 결정된 등급에 해당하는 모델을 DB에서 조회한다. 같은 등급에 모델이 여러 개 있으면 추천 표시(isRecommended)가 켜진 모델이 우선 선택된다. 이 과정은 시스템에 설정된 전략(strategy)에 따라 분기된다.
라우팅의 핵심은 판별이다.
어떤 모델을 쓸지가 아니라,
이 질문이 얼마나 어려운지를 먼저 결정한다.
전략은 네 가지다. 시스템 관리자가 설정하며, 모든 사용자의 질문에 일괄 적용된다.
| 전략 | 등급 결정 방식 | 적합한 환경 |
|---|---|---|
| 자동 (auto) | 작업 분류기가 질문마다 경량 또는 고성능을 자동 결정 | 대부분의 환경에 권장. 비용과 품질의 균형 |
| 비용 절감 (cost_saving) | 모든 질문을 경량 등급으로 고정 | 비용이 최우선인 환경. 자주 묻는 질문, 고객 응대 |
| 고품질 (high_quality) | 모든 질문을 고성능 등급으로 고정 | 품질이 최우선인 환경. 법률, 의료, 연구 |
| 수동 (manual) | 관리자가 지정한 특정 모델을 항상 사용 | 특정 모델에 대한 검증이 완료된 환경 |
자동(auto) 전략에서만 작업 분류기가 동작한다. 비용 절감, 고품질, 수동 전략은 분류 과정을 건너뛰고 바로 모델을 결정한다. 이 설계는 의도적이다. 분류 자체도 AI 모델을 호출할 수 있으므로, 고정 전략에서는 그 비용을 절약한다.
모델이 여러 개인 이유
2026년 2월 기준, Anthropic은 Claude 모델을 3종 출시하고 있다. Haiku, Sonnet, Opus. OpenAI도 10종 이상의 모델 라인업을 운영한다. 같은 회사가 왜 AI 모델을 여러 개 만드는가. 답은 단순하다. 비용, 속도, 품질은 동시에 최적화할 수 없기 때문이다.
가벼운 모델은 빠르고 저렴하지만 복잡한 추론에 약하다. 무거운 모델은 정교하지만 느리고 비싸다. 어떤 단일 모델도 모든 질문에 최적일 수 없다. 이것이 모델 라인업이 존재하는 이유다.
입력 토큰 기준
입력 토큰 기준
입력 토큰 기준
같은 Anthropic 모델인데 가격이 15배 차이 난다. 그리고 모델 제공사는 이 차이를 의도적으로 설계한다. Anthropic은 공식적으로 Haiku를 분류·요약·자주 묻는 질문 같은 경량 작업에, Sonnet을 코딩·분석·에이전트 조율에, Opus를 복잡한 추론과 장기 계획에 배치한다.
경량 모델
분류, 요약, 자주 묻는 질문, 키워드 추출. 응답 속도가 핵심인 작업.
범용 모델
코딩, 분석, 일반 대화, 에이전트 조율. 대부분의 작업.
고성능 모델
복잡한 추론, 수학, 장기 계획, 핵심 의사결정.
문제는 여기서 시작된다. 사용자는 자기 질문이 어느 등급에 해당하는지 모른다. "오늘 날씨 알려줘"에 Opus를 쓸 필요가 없고, "이 코드의 보안 취약점을 분석해줘"에 Haiku를 쓰면 품질이 떨어진다. 이 판단을 사람 대신 시스템이 자동으로 하는 것. 그것이 동적 모델 라우팅이다.
단일 모델 vs 동적 라우팅
동적 라우팅 없이 하나의 모델로 모든 질문을 처리하면 두 가지 중 하나가 발생한다. 비싼 모델을 쓰면 비용이 폭증하고, 싼 모델을 쓰면 복잡한 질문에서 품질이 떨어진다. 어떤 선택이든 최적이 아니다.
하나의 모델
모든 질문에 동일한 모델 적용. 비싼 모델이면 단순 질문에도 비용 발생. 싼 모델이면 복잡한 질문에서 품질 저하. 중간 모델이면 양쪽 모두 차선.
동적 라우팅
질문마다 등급 분기. 단순 질문은 경량 등급이 빠르고 저렴하게 처리. 복잡한 질문은 고성능 등급이 정밀하게 처리. 비용과 품질 모두 최적화.
LMSYS가 개발한 오픈소스 라우터인 RouteLLM의 실험 결과가 이를 실증한다. MT-Bench 벤치마크에서 동적 라우팅을 적용하면 비용을 85% 절감하면서도 응답 품질의 95%를 유지했다. 전체 질문 중 고성능 모델이 필요한 경우는 14%에 불과했다.
RouteLLM 실험 기준
GPT-4 대비
나머지 86%는 경량 모델
이 데이터가 말하는 것은 명확하다. 모든 질문의 70~80%는 경량 모델로 충분하다. 나머지 20~30%만 고성능 모델이 필요하다. 하나의 모델로 운영하면 70%의 질문에서 불필요한 비용을 지불하거나, 30%의 질문에서 부족한 품질을 감수하게 된다.
-
2023
단일 모델 시대. "GPT-4 하나면 된다." 선택지가 적고, 모델 간 성능 격차가 컸다.
-
2024
수동 선택 시대. 모델이 다양해지면서 용도에 맞는 모델을 사람이 직접 골랐다. RouteLLM 논문 발표.
-
2025
다중 모델 운영. 기업들이 여러 모델을 동시에 쓰기 시작. 전환은 수동. AI 중계 서비스 등장.
-
2026
동적 라우팅 시대. 질문마다 자동으로 최적 모델 배정. Martian, Not Diamond 등 전문 플랫폼 성장.
-
2028
자율 라우팅 예측. IDC: "AI 선도 기업의 70%가 자율 모델 라우팅을 사용할 것."
실제 아키텍처 미리보기
실제로 동적 모델 라우팅을 구현한 프로젝트의 구조를 살펴본다. 전체 시스템은 23개 파일, 61개 테스트로 구성되어 있으며, 핵심 서비스는 3개다.
작업 분류기 (Task Classifier)
사용자 질문을 4가지 유형으로 분류한다. 규칙 기반 키워드 매칭을 먼저 시도하고, 실패하면 AI 모델을 보조로 호출하는 혼합 방식.
모델 선택기 (Model Router)
전략과 등급을 기반으로 DB에서 최적의 모델을 조회한다. 추천 표시(isRecommended)로 우선 모델을 선택.
파이프라인 기록기 (Pipeline Logger)
분류 결과, 선택된 모델, 응답 시간, 토큰 수를 비동기로 DB에 기록한다. 비용 추적과 품질 점검의 기반.
사용자가 메시지를 보내면 다음 순서로 처리된다.
-
1
전략 확인. 시스템 설정에서 채팅 모델 전략(chatModelStrategy)을 읽는다. 자동, 비용 절감, 고품질, 수동 중 하나.
-
2
질문 분류. 자동 전략일 때만 작업 분류기가 동작한다. 규칙 기반으로 먼저 판별하고, 불확실하면 경량 모델로 AI 분류를 수행한다.
-
3
등급 결정. 분류 결과를 경량 또는 고성능 등급으로 변환한다. 단순/창작 → 경량, 복잡/분석 → 고성능.
-
4
모델 조회. 모델 선택기가 해당 제공사의 해당 등급에서 활성화된 모델을 DB에서 가져온다. 추천 표시가 켜진 모델이 우선.
-
5
AI 호출. 선택된 모델로 스트리밍 응답을 생성한다. 맥락 정보(검색 보강 + 대화 이력)가 함께 전달된다.
-
6
기록과 전달. 응답 완료 시 처리 요약 정보를 생성하고, 파이프라인 기록기가 비동기로 DB에 기록한다. 화면에 요약 배지가 표시된다.
이 구조는 업계의 2단계 라우팅 표준과 일치한다. 1단계는 어떤 제공사와 모델군을 쓸지(전략), 2단계는 선택된 제공사 내에서 어떤 무게의 모델을 쓸지(등급)를 결정한다. 이 구조는 현재 2차 개선이 진행 중이며, API 키에 묶여 있던 모델 설정을 분리하여 중앙에서 관리하는 방향으로 발전하고 있다.
다음 편에서는 이 구조의 핵심인 작업 분류기가 질문을 어떻게 분류하는지, 모델 선택기가 DB에서 모델을 어떻게 고르는지를 구체적으로 분해한다.
모든 질문에 같은 모델을 쓰는 건
최적화의 부재다
다음 편에서 질문을 분류하고 모델을 선택하는 핵심 서비스를 분해한다.