이 글은 NadirClaw를 활용해 프롬프트의 복잡도를 사전에 분류하고, 그 결과에 따라 서로 다른 LLM 모델(Gemini Flash / Pro)을 자동으로 선택하는 비용 인식형 LLM 라우팅 시스템을 구축하는 전체 과정을 정리한 기술 블로그입니다.
로컬 프롬프트 분류부터 실제 프록시 서버 기반의 실시간 모델 라우팅, 그리고 비용 절감 효과 분석까지, NadirClaw의 내부 동작 원리와 실전 활용 방법을 단계별로 설명합니다.
NadirClaw란 무엇인가
NadirClaw는 프롬프트 복잡도 기반 LLM 라우팅 레이어입니다.
요청이 들어오면 먼저 로컬에서 프롬프트를 분석해 “단순(Simple)” 혹은 “복잡(Complex)” 작업인지 판단한 뒤, 그 결과에 따라 적절한 모델로 요청을 전달합니다.
이 접근 방식의 핵심은 다음과 같습니다.
- 모든 요청을 고성능·고비용 모델로 보내지 않음
- 간단한 요청은 저렴한 모델로 처리
- 복잡한 요청만 고급 모델로 승급 처리
전체 아키텍처 개요
NadirClaw 기반 라우팅 흐름은 아래와 같은 단계로 구성됩니다.
- 로컬 프롬프트 분류
- 임베딩 기반 복잡도 점수 계산
- 신뢰도(confidence) 기반 보정
- 모델 자동 선택
- 프록시 서버를 통한 LLM 호출
- 비용 및 로그 리포트 생성
중요한 점은 모델 API를 호출하기 전에 분류가 먼저 일어난다는 점입니다.
로컬 프롬프트 분류 방식
프롬프트 분류 원리
NadirClaw는 사전에 학습된 문장 임베딩 모델을 사용해 프롬프트를 벡터로 변환한 뒤, 두 개의 기준 벡터와 비교합니다.
- Simple Centroid: 단순 작업의 중심 벡터
- Complex Centroid: 복잡 작업의 중심 벡터
각 프롬프트는 두 기준점과의 코사인 유사도를 비교해 어느 쪽에 더 가까운지 계산됩니다.
실제 분류 예시
아래와 같은 프롬프트를 분류하면 명확한 차이가 나타납니다.
- “What is 2+2?”
- “Format this JSON”
- “Lowercase: HELLO”
→ 단순(Simple) 작업으로 분류
반면,
- “의존성 주입 패턴으로 인증 모듈 리팩토링”
- “50k req/s를 처리하는 분산 이벤트 파이프라인 설계”
- “비동기 데드락 원인 분석 및 해결”
→ 복잡(Complex) 작업으로 분류
이 결과는 CLI 기반으로 JSON 형태로 확인할 수 있습니다.
센트로이드 벡터와 라우팅 경계
NadirClaw 패키지에는 이미 계산된 두 개의 기준 벡터가 포함되어 있습니다.
- simple_centroid.npy
- complex_centroid.npy
이 두 벡터는 서로 충분히 다른 방향성을 가지며, 코사인 유사도 역시 1에 가깝지 않습니다.
즉, 분류기가 의미 있는 구분을 수행할 수 있는 구조입니다.
시각화를 통한 이해
같은 임베딩 모델을 사용해 프롬프트를 벡터화한 뒤, 두 센트로이드와의 유사도를 좌표로 표현하면 다음과 같은 특성이 보입니다.
- 대각선 위: 복잡 작업
- 대각선 아래: 단순 작업
이 시각화는 라우팅 결정이 임의가 아니라 명확한 수학적 기준에 기반함을 보여줍니다.
복잡도 점수와 신뢰도(confidence)
NadirClaw는 단순히 “단순/복잡”만 판단하지 않습니다.
- score: 복잡도 점수 (0~1)
- confidence: 판단 신뢰도
신뢰도가 특정 임계값보다 낮으면, 점수가 낮아도 강제로 복잡 모델로 승급할 수 있습니다.
기본 임계값은 0.06이며, 이 값은 워크로드 성격에 따라 조정 가능합니다.
프롬프트 수정자(modifier)에 따른 라우팅
특정 요청 형태는 자동으로 복잡 작업으로 인식됩니다.
- 단계별 추론을 요구하는 요청
- 에이전트 역할 프롬프트
- 비전 입력(이미지 포함 요청)
이 경우 텍스트 내용 외에도 요청 구조 자체가 라우팅 결정에 영향을 줍니다.
라이브 모델 라우팅: 프록시 서버 실행
Gemini API 키가 설정된 경우, NadirClaw는 로컬 프록시 서버로 동작합니다.
- Simple 요청 → gemini-2.5-flash
- Complex 요청 → gemini-2.5-pro
OpenAI 호환 API 인터페이스를 제공하기 때문에, 기존 클라이언트 코드 변경 없이 바로 연동이 가능합니다.
실제 라우팅 동작 비교
같은 요청 구조에서 프롬프트만 바꿔 테스트하면 다음과 같은 차이가 나타납니다.
- 간단한 함수 설명 요청 → Flash 모델 사용
- 구조 리팩토링 + 설명 요청 → Pro 모델 사용
응답 품질과 지연 시간, 사용 모델이 모두 자동으로 달라집니다.
혼합 워크로드 테스트와 비용 분석
10개의 단순·복잡 요청을 섞어 실행한 결과:
- 라우팅 적용 비용 < 항상 Pro 사용 비용
- 전체 워크로드 기준 유의미한 비용 절감률 확인
이는 특히 트래픽이 많은 서비스 환경에서 큰 차이를 만들어냅니다.
로그 분석과 리포트
NadirClaw는 요청 로그를 JSONL 형태로 저장하며, 전용 report 명령어를 통해 다음 정보를 요약합니다.
- 모델 사용 분포
- 복잡도 분류 결과
- 전체 요청 통계
이를 통해 라우팅 정책의 적절성을 지속적으로 개선할 수 있습니다.
이번 튜토리얼을 통해 다음을 확인할 수 있었습니다.
- 프롬프트 복잡도는 로컬에서 충분히 판단 가능
- 모델 호출 전 분류로 비용을 효과적으로 절감 가능
- 센트로이드 기반 접근은 설명 가능성과 투명성이 높음
- 프록시 구조로 기존 시스템에 쉽게 통합 가능
NadirClaw는 단순한 비용 절감 도구를 넘어, 실제 운영 환경에서 LLM 사용을 더 현실적이고 지속 가능하게 만드는 라우팅 전략을 제시합니다.
모델 선택을 자동화하고 싶거나, LLM 비용이 고민인 환경이라면 충분히 검토해볼 만한 접근 방식입니다.
How to Build a Cost-Aware LLM Routing System with NadirClaw Using Local Prompt Classification and Gemini Model Switching
How to Build a Cost-Aware LLM Routing System with NadirClaw Using Local Prompt Classification and Gemini Model Switching
www.marktechpost.com

'인공지능' 카테고리의 다른 글
| GPT-5.5와 GPT-5.5-Cyber 기반 Trusted Access for Cyber로 확장되는 AI 보안 방어 체계 (0) | 2026.05.12 |
|---|---|
| Onyx 오픈소스 AI 플랫폼 개념과 주요 기능 정리: LLM 애플리케이션 레이어의 모든 것 (0) | 2026.05.12 |
| Anthropic 금융 서비스 특화 AI 에이전트 오픈소스 공개, 무엇이 달라졌나 (0) | 2026.05.11 |
| Open Design: Claude Design을 대체하는 로컬 퍼스트 오픈소스 디자인 엔진 정리 (0) | 2026.05.11 |
| 초고속 엔터프라이즈 AI 게이트웨이 Bifrost 핵심 정리와 활용 포인트 (0) | 2026.05.11 |