요즘 AI 제품팀의 가장 큰 리스크는 "모델이 별로라서"가 아니다. 오히려 반대다. 쓸 수 있는 모델이 너무 많아졌고, 요청마다 최적 선택이 달라져서 운영이 흔들린다. 그래서 필요한 건 단일 모델 전략이 아니라, 실시간으로 속도·품질·비용을 중재하는 인퍼런스 타워다.
처음 AI 기능을 제품에 붙일 때는 단순했다. 가장 잘 나오는 모델 하나를 정하고, 프롬프트를 다듬고, 실패하면 재시도하면 됐다. 그런데 서비스가 커질수록 이 방식은 빠르게 한계에 닿는다. 같은 질문처럼 보여도 사용자의 맥락, 입력 길이, 요구 정밀도, 지연 허용치, 예산 구간이 전부 다르기 때문이다. 긴 문서 요약은 정확성이 우선일 수 있지만, 실시간 안내 챗은 1초 차이가 체감 품질을 결정한다. 내부 운영 자동화처럼 실수가 큰 기능은 보수적으로 가야 하고, 아이데이션 기능은 저비용 탐색을 더 공격적으로 써도 된다. 결국 "무슨 모델이 제일 좋냐"는 질문은 운영 관점에서 틀린 질문이 된다. 정확한 질문은 "이 요청에 지금 어떤 모델 조합이 손익이 맞느냐"다.
이 전환을 제대로 하지 못하면 조직은 두 가지 극단 중 하나로 간다. 첫째, 품질 불안 공포 때문에 고가 모델 비중이 끝없이 늘어나고 마진이 붕괴한다. 둘째, 비용 압박 때문에 저가 모델만 고집하다가 사용자 신뢰를 잃는다. 둘 다 장기적으로는 같은 결말이다. 사용자는 떠나고 팀은 소방 모드에 갇힌다. 그래서 지금 필요한 건 모델 교체 뉴스 추적이 아니라, 매 요청의 의사결정을 시스템으로 흡수하는 구조다. 나는 이 구조를 "인퍼런스 중재 타워"라고 부른다.
1. 라우터보다 먼저 결정 정책을 문서화한다
많은 팀이 모델 라우터를 먼저 만든다. 하지만 코드로 들어가기 전에 정책부터 고정하지 않으면 라우터는 결국 임시 조건문 더미가 된다. 먼저 네 가지 축을 명문화해야 한다. 지연 한도, 품질 임계치, 요청당 비용 상한, 실패 시 폴백 우선순위다. 예를 들어 "고객센터 실시간 응답은 p95 2.8초 초과 금지", "재무·법무 영역 요약은 근거 누락률 3% 미만", "일반 생산성 기능은 요청당 추론비 ₩45 이하" 같은 식으로 숫자를 박아야 한다. 추상적인 원칙은 분쟁이 생기면 아무 힘이 없다.
이 정책 문서가 필요한 이유는 단순하다. 모델 성능은 변하고, 가격은 바뀌고, 트래픽 패턴도 요동친다. 그때마다 "이번엔 느낌상 이 모델이 낫지 않나"로 결정하면 운영 품질이 팀의 컨디션에 종속된다. 반대로 정책이 있으면 모델이 바뀌어도 판단 기준은 유지된다. 운영 안정성은 최신 모델 도입 속도가 아니라, 의사결정 기준의 재현성에서 나온다.
또 하나 중요한 점은 정책에 "예외 승인 경계"를 적는 것이다. 예컨대 요청당 비용 상한을 넘겨도 되는 상황(핵심 고객 계약 SLA, 장애 복구 중 임시 우회, 안전 이슈 조사 등)을 명시하면, 운영자가 밤중에 죄책감 기반 판단을 하지 않아도 된다. 작은 팀일수록 이런 심리적 비용이 누적되기 쉽다.
2. 요청을 티어로 분해해 지연 예산 사다리를 만든다
모든 요청을 같은 파이프라인에 태우는 순간 비용과 지연은 동시에 악화된다. 핵심은 요청을 난이도와 민감도로 분류해 티어를 나누는 것이다. 예를 들어 A~F 6단계 티어를 두고, A는 "짧은 실시간 응답", F는 "고정밀 장문 추론"으로 정의한다. 각 티어마다 사용할 모델군, 최대 토큰, 재시도 횟수, 타임아웃, 캐시 정책을 따로 준다. 이때 중요한 건 티어 판단이 100% 완벽할 필요는 없다는 점이다. 70~80%만 정확해도 운영비 개선 효과는 즉시 나타난다.
실무에서는 티어 판단 입력값을 최소화하는 편이 유리하다. 초반에는 도메인, 입력 길이, 사용자 플랜, 위험 키워드 정도면 충분하다. 여기에 과거 실패 패턴을 반영해 "이 유형은 1단계 상향" 같은 보정 규칙을 붙인다. 너무 많은 피처를 넣어 분류기를 복잡하게 만들면, 정작 운영 중 설명 가능성이 떨어져 디버깅이 더 어려워진다. 작은 팀이 가져가야 할 철학은 "정교함보다 회복력"이다.
지연 예산 사다리를 설계할 때는 한 가지 함정을 조심해야 한다. 평균 지연을 기준으로 의사결정하면 실제 사용자 불만을 놓친다. 체감 품질은 평균보다 꼬리 지연(p95/p99)에 좌우된다. 따라서 티어별 KPI는 반드시 꼬리 지연 중심으로 잡아야 하고, 경보도 같은 기준을 따라야 한다. 그래야 "대부분 빠른데 가끔 너무 느림" 같은 신뢰 파괴 패턴을 초기에 끊을 수 있다.
3. 품질 회귀 방화벽을 둬서 롤아웃 속도와 안전을 같이 가져간다
모델 라우팅을 잘해도, 품질 회귀를 막는 장치가 없으면 결국 운영팀이 모든 배포를 두려워하게 된다. 여기서 필요한 것이 품질 회귀 방화벽이다. 구조는 단순하다. (1) 카나리 입력 세트, (2) 평가 매트릭스, (3) 승격 게이트. 새 모델이나 새 프롬프트 조합은 먼저 카나리 세트에서 점검하고, 통과 기준을 만족할 때만 전체 트래픽으로 승격한다. 통과 기준은 정답률 하나가 아니라 근거 보존, 금지 정책 위반률, 형식 준수율까지 함께 봐야 한다.
이 방화벽이 실효성을 가지려면 평가 입력이 실제 운영 분포를 닮아야 한다. 샘플이 너무 깨끗하면 운영에서 바로 무너진다. 그래서 카나리 세트는 "자주 실패하던 입력", "경계 케이스", "길고 복잡한 입력", "안전 민감 입력"을 비율로 섞어야 한다. 특히 팀 내부에서 잘 아는 도메인만 모으면 과적합된 착시가 생긴다. 사용자 언어 습관의 거칠고 불완전한 문장을 일부러 포함해야 한다.
그리고 승격 게이트는 자동화하되, 전면 확장은 단계적으로 가는 게 좋다. 5% → 20% → 50% → 100%로 올리면서 각 단계에서 품질·비용·지연 변화를 체크하면 사고 반경을 크게 줄일 수 있다. 작은 팀이 속도와 안전을 동시에 잡는 가장 현실적인 방법은, 대담한 배포가 아니라 작은 배포를 자주 하는 것이다.
4. 운영 지표는 결제서처럼 읽혀야 한다
좋은 대시보드는 멋진 시각화가 아니라 "지금 돈이 어디서 새고 있는지"를 바로 보여주는 화면이다. 나는 최소한 아래 네 가지를 한 화면에 두는 것을 권한다.
- 티어별 요청량과 성공률
- 티어별 p95 지연
- 요청당 평균 추론비와 총액 추세
- 폴백 발생률과 폴백 후 만족도(또는 재질문율)
이 네 가지가 함께 보여야 "비용이 늘었다"라는 사실에서 멈추지 않고 "어느 티어에서 어떤 이유로 늘었는지"까지 닿는다. 지표를 분리해 놓으면 회의는 늘고 결론은 늦어진다. 반대로 한 화면에서 읽히면 운영 회의가 의사결정 회의로 바뀐다.
또, 월말 정산 관점으로 데이터를 보는 습관이 중요하다. 일 단위 그래프만 보면 노이즈에 과민해지고, 반대로 월간 합계만 보면 징후를 늦게 본다. 주간 롤링 윈도우와 월간 누적을 함께 보면 이상 급증과 구조적 추세를 동시에 잡을 수 있다. 작은 팀이 데이터팀 없이도 운영 통찰을 얻는 방법은 복잡한 모델이 아니라, 지표의 시간축을 잘 고르는 것이다.
5. 결국 경쟁력은 모델이 아니라 운영 리듬에서 나온다
멀티모델 시대의 차별화는 "가장 좋은 모델을 먼저 붙였다"가 아니다. 누구나 비슷한 모델에 접근할 수 있기 때문이다. 진짜 격차는 운영 리듬에서 벌어진다. 입력이 들어올 때마다 손익과 품질을 동시에 판단하고, 징후가 보이면 즉시 라우팅을 조정하고, 회귀 가능성을 작게 쪼개 검증하는 팀이 오래 버틴다.
여기서 말하는 리듬은 거창한 것이 아니다. 매일 아침 15분 운영 리뷰, 주 1회 티어 정책 점검, 월 1회 카나리 세트 교체 같은 단순한 반복이다. 반복 가능한 의식이 쌓여야 시스템은 사람 의존에서 벗어난다. 특히 인원이 적을수록 "누가 오늘 당직이냐"보다 "누가 와도 같은 판단을 하게 만드는가"가 중요하다.
지금 바로 시작할 최소 단위도 분명하다. 첫째, 요청 티어 6단계를 정의하고 지연 예산을 숫자로 박는다. 둘째, 모델 라우터 조건문을 정책 문서와 1:1로 맞춘다. 셋째, 카나리 입력 30개만 먼저 만들어 품질 방화벽을 세운다. 이 세 가지를 한 주 안에 고정하면, 다음 달의 추론비와 장애 복구 속도는 눈에 띄게 달라진다. 멀티모델 시대에 필요한 건 더 비싼 모델이 아니라, 더 단단한 중재 체계다.
