대부분의 팀은 프롬프트를 재작성하거나 모델을 수동으로 전환하는 방식으로 추론 비용을 줄입니다. 두 방법 모두 지속적인 인간의 판단이 필요하고 대용량 처리에서 무너집니다. 프롬프트 라우터는 이 문제를 아키텍처 수준에서 해결합니다. 추론 전에 각 요청을 분류하고 자동으로 적절한 모델로 전송합니다.
결과적으로 소형 모델이 올바르게 처리할 수 있는 작업에 GPT-4급 가격을 지불하지 않아도 됩니다.
프롬프트 라우터가 실제로 하는 일
프롬프트 라우터는 애플리케이션과 모델 엔드포인트 사이에 위치합니다. 들어오는 요청을 받아 라우팅 기준에 따라 평가하고, 티어를 할당한 뒤 적절한 모델로 전달합니다.
프롬프트를 수정하지 않습니다. 출력 형식을 변경하지 않습니다. 오직 어떤 모델이 요청을 처리할지만 결정합니다.
라우팅 결정은 밀리초 단위로 이루어집니다. 비용 절감은 모든 요청에 걸쳐 누적됩니다.
네 가지 라우팅 기준
라우팅 로직을 작성하기 전에 의사결정 기준을 정의하십시오. 네 가지 기준이 대부분의 프로덕션 케이스를 커버합니다.
작업 복잡도. 조회, 분류, 요약, 다단계 추론 중 어느 작업인가? 조회와 분류는 프론티어 모델이 거의 필요하지 않습니다.
토큰 수. 입력 토큰 길이는 복잡도의 신뢰할 수 있는 대리 지표입니다. 300 토큰 미만의 요청은 대체로 경량입니다. 2,000 토큰 초과는 보통 복잡한 작업을 의미합니다.
레이턴시 요구사항. 일부 요청은 사용자 대면이므로 1초 이내 응답이 필요합니다. 다른 요청은 10초가 허용되는 배치 작업입니다. 레이턴시 허용 범위는 사용 가능한 모델에 영향을 줍니다.
비용 임계값. 티어별 요청당 비용 상한을 설정하십시오. 예: 경량 티어 ≤ $0.001, 표준 티어 ≤ $0.005, 복잡 티어 ≤ $0.02. 이 수치는 작업 유형별 허용 지출을 명시적으로 강제합니다.
무언가를 구축하기 전에 이 네 가지 기준을 문서화하십시오. 이것이 라우팅 스펙이 됩니다.
단계별: 요청을 티어로 분류하기
세 가지 티어가 대부분의 워크로드를 커버합니다.
- 경량: 단순 추출, 예/아니오 분류, 단답형 조회. 토큰 수 400 미만. 레이턴시 민감 또는 고용량.
- 표준: 요약, 구조화된 출력 생성, 중간 수준 추론. 토큰 수 400–1,500. 중간 수준의 레이턴시 허용.
- 복잡: 다단계 추론, 장문 문서 분석, 컨텍스트가 포함된 코드 생성. 토큰 수 1,500 초과 또는 명시적 복잡도 신호.
요청을 자동으로 분류하려면 메인 추론 호출 전에 경량 분류기를 실행하십시오. 이 분류기는 소형 모델, 규칙 기반 함수, 또는 그 조합일 수 있습니다.
실용적인 출발점은 규칙 기반 함수입니다:
- 입력 토큰을 카운트합니다.
- 요청 메타데이터에서 명시적 복잡도 신호를 확인합니다 (예: 애플리케이션이 이미 설정하는
task_type필드). - 알려진 복잡 작업 유형에 대한 키워드 목록을 적용합니다 (예: "비교", "분석", "코드 생성").
- 종합 점수를 기반으로 티어를 할당합니다.
이 분류기는 파이프라인에 20–50ms 이상을 추가해서는 안 됩니다. 분류에 모델을 사용한다면 가장 작은 모델을 사용하십시오. 7B 파라미터 모델이나 파인튜닝된 분류기로 충분합니다. 프론티어 모델을 사용할지 결정하기 위해 프론티어 모델을 사용하지 마십시오.
모든 분류 결정을 로깅하십시오. 2주 후 로그를 감사하십시오. 잘못 분류된 요청을 발견할 것입니다. 실제 데이터를 기반으로 규칙을 조정하거나 분류기를 재훈련하십시오.
티어별 모델 타겟 할당
티어가 정의되면 각 티어를 기본 모델에 매핑하십시오.
매핑 예시:
- 경량 →
gpt-4o-mini또는 동급 소형 모델 - 표준 →
gpt-4o또는 중간 티어 모델 - 복잡 → 확장 컨텍스트의
gpt-4o또는 추론 최적화 모델
모델 이름을 코드베이스 전체에 문자열로 하드코딩하지 마십시오. 티어-모델 매핑을 단일 설정 파일에 저장하십시오. 모델이 deprecated되거나 프로바이더를 교체할 때 파일 하나만 변경하면 됩니다.
폴백 체인 구축
모든 티어에는 폴백이 필요합니다. 모델 엔드포인트는 다운됩니다. 레이트 리밋에 도달합니다. 폴백 체인이 없는 라우터는 단일 장애점이 됩니다.
각 티어에 대해 다음을 정의하십시오:
- 기본 모델 — 기본 타겟.
- 보조 모델 — 동일 티어, 다른 프로바이더 또는 엔드포인트.
- 에스컬레이션 모델 — 기본과 보조 모두 사용 불가할 때만 사용하는 한 단계 위 티어.
경량 티어의 폴백 체인 예시:
- 기본:
gpt-4o-mini - 보조:
claude-haiku(또는 동급) - 에스컬레이션:
gpt-4o(표준 티어 모델, 최후 수단으로만 사용)
에스컬레이션 단계는 비용이 더 많이 듭니다. 이는 허용 가능합니다. 대안은 요청 실패입니다.
각 모델 시도에 타임아웃을 설정하십시오. 기본 모델이 800ms 내에 응답하지 않으면 보조로 이동합니다. 보조가 1,200ms 내에 응답하지 않으면 에스컬레이션합니다. 모든 폴백 이벤트를 로깅하십시오. 폴백 사용량의 급증은 기본 엔드포인트가 저하되고 있다는 조기 신호입니다.
실제 적용 사례
하루 50,000건의 요청을 라우팅 없이 처리하는 팀은 모든 것을 프론티어 모델로 보냅니다. 요청당 평균 $0.01이면 하루 $500입니다.
60%의 요청을 경량으로 올바르게 분류하여 요청당 $0.0008의 소형 모델로 전송하는 라우터를 사용하면:
- 경량 요청 30,000건 × $0.0008 = $24
- 표준/복잡 요청 20,000건 × $0.01 = $200
- 합계: 하루 $224
55% 비용 절감입니다. 프롬프트는 변경되지 않았습니다. 경량 작업의 출력은 동등합니다. 유일한 변화는 각 요청이 어디로 가는지입니다.
작동을 유지하는 운영 규율
라우터는 일회성 구축물이 아닙니다. 다음이 필요합니다:
- 분류 정확도의 주간 검토
- 출력 품질 검사에서 티어 할당으로 이어지는 피드백 루프
- 티어-모델 매핑의 버전 관리 (코드처럼 취급)
- 폴백 사용량이 임계값을 초과할 때의 알림
이 규율 없이는 라우터가 표류합니다. 작업이 잘못 분류됩니다. 비용이 다시 올라갑니다. 품질이 조용히 저하됩니다.
라우터 구축에는 하루가 걸립니다. 피드백 루프를 유지하는 것이 작동을 지속시키는 요소입니다.
AI 워크플로우를 대용량으로 운영 중이며 현재 추론 비용 구조를 감사하고 싶다면 대화를 시작하세요 →