비용 40–70% 절감과 <50ms 라우팅
단일 엔드포인트에서 요청별로 가장 적합한 모델을 선택해 프록시 방식으로 라우팅하며 로컬 키 보관과 OTLP 관찰성을 제공해 호스티드 또는 셀프호스트 환경에서 비용과 성능을 최적화한다.
TL;DR
이 레포지토리는 단일 엔드포인트로 여러 모델 공급자를 통합해 요청별로 최적 모델을 선택하는 프록시 라우터를 제공한다. 라우터는 온박스 임베더와 Avengers-Pro 계열의 클러스터 스코어러를 사용해 각 요청에 가장 적합한 모델을 점수화하고 선택하며, Anthropic·OpenAI·Gemini 등 다양한 API 포맷을 네이티브로 수용한다. BYOK로 업스트림 키를 로컬에 보관하고 OTLP 관찰성을 기본 제공해 보안과 운영 가시성을 유지하면서 실무에서 비용과 성능을 최적화하는 용도로 사용된다. 설치는 `npx @workweave/router`로 신속히 시작할 수 있으며 자체 호스트 모드도 Postgres와 환경 변수 설정으로 지원된다.
주요 기능
- 요청별 모델 선택 기능을 제공한다. 라우터는 각 요청에 대해 온박스 임베더와 클러스터 스코어러를 사용해 사용 가능한 공급자 가운데 최적 모델을 실시간으로 선정한다. 선정 결과는 즉시 업스트림으로 프록시되어 응답 경로가 단일 라우터 엔드포인트로 통합된다.
- 다수 API 호환을 지원한다. Anthropic Messages, OpenAI Chat Completions, Gemini 네이티브 등 서로 다른 벤더의 API 포맷을 라우터가 수용하며 스트리밍, 툴 호출, 비전 입력 등 다양한 요청 유형이 처리된다. 이 호환성은 클라이언트 설정을 최소한으로 유지하면서 공급자 전환을 가능하게 한다.
- 셀프호스트 환경에서 BYOK와 키 암호화를 제공한다. 업스트림 프로바이더 키는 로컬에 보관되며 라우터는 해당 키를 사용해 업스트림 호출을 수행하되 키는 암호화된 상태로 유지된다. 이 구조는 조직 내부 규정과 프라이버시 요구를 충족시키면서 외부 모델을 이용하도록 설계되었다.
- 관찰성과 관리 기능을 갖춘다. 라우터는 기본적으로 OTLP 추적을 출력하며 Weave 대시보드, Honeycomb, Datadog, Grafana 등으로 연결해 라우팅 결정과 트래픽을 모니터링할 수 있다. 로그와 대시보드 연동을 통해 모델 선택 경로와 성능 병목을 추적할 수 있다.
어떻게 동작하는가
라우터는 요청을 받아 먼저 온박스 임베더로 요청 텍스트의 임베딩을 계산하고 그 임베딩과 모델/클러스터 메타데이터를 비교해 클러스터 스코어러가 모델별 점수를 산출한다. 이 스코어링 로직은 README에서 Avengers-Pro 논문에서 파생된 접근을 사용한다고 명시되어 있으며 점수 기반으로 최적 모델을 선택해 해당 업스트림으로 요청을 프록시한다. 키 관리는 로컬에 저장된 업스트림 키를 사용하고 호출은 라우터가 중계하며 OTLP 등으로 관찰 데이터를 출력한다.
해결 문제
서로 다른 모델 공급자와 여러 클라이언트를 운영할 때 요청별 최적 모델을 자동으로 선택하는 복잡성을 해결한다. 라우터는 단일 엔드포인트로 모든 클라이언트를 통합해 클라이언트 설정 변경만으로 공급자 전환과 비용·성능 최적화를 수행할 수 있게 한다. 또한 키를 로컬에 보관하는 BYOK 방식과 내장 관찰성으로 보안·운영 요구를 충족시킨다.
지금 주목받는 이유
멀티모델·에이전트 아키텍처가 확산되면서 요청별로 최적 모델을 선택해 비용과 성능을 함께 관리하려는 수요가 증가하고 있다. README의 비용 절감(40–70%)과 저지연(<50ms)이라는 수치 기반 주장은 운영 측면의 실질적 이득을 강조해 관심을 끌고 있다. 또한 빠른 설치 경로와 BYOK 같은 보안 옵션은 조직 도입 장벽을 낮추는 요인으로 작용한다.
차별점
- 요청 단위의 클러스터 스코어링을 사용한다. README는 Avengers-Pro에서 파생된 스코어러를 언급하며 이 스코어러가 요청 임베딩과 모델 특성을 비교해 실시간으로 결정을 내린다고 명시한다. 이 접근은 라우팅을 프롬프트 기반의 휴리스틱이 아니라 계량화된 점수로 수행한다는 점에서 차별화된다.
- 온박스 임베더를 사용해 'vibes'-기반 프롬프트 대신 임베딩 매칭에 의존한다. 임베딩 기반 매칭은 요청의 의미적 특성을 수치적으로 비교할 수 있어 공급자 간 특성 차이를 일관되게 반영한다. 그 결과 라우터는 정형화된 점수에 따라 모델을 선택해 예측 가능한 라우팅 동작을 제공한다.
- 폭넓은 API 호환성과 간편한 설치 경로를 제공한다. README는 Claude Code, Codex, opencode, Cursor 등 다양한 클라이언트를 포인트 앤 클릭 또는 npx 설치로 연결할 수 있다고 명시하며 셀프호스트 모드도 위한 make 기반 전체 스택 설치 절차를 포함한다. 이 통합성은 기존 클라이언트의 설정을 크게 변경하지 않고 라우터로 전환할 수 있게 만든다.
사용 사례
- 로컬 개발 환경에서 여러 코딩 도구를 통합하는 데 사용된다. Claude Code, Codex, opencode 같은 개발자용 클라이언트를 단일 로컬 엔드포인트로 연결해 각 요청을 적합한 모델로 자동 전환한다. 이 방식은 개발자 설정을 단순화하고 클라이언트별로 다른 API 엔드포인트를 관리할 필요를 제거한다.
- 엔터프라이즈 환경에서 비용·규정 준수 관점의 중앙 라우터로 활용된다. 조직은 로컬에 업스트림 키를 보관한 채 요청을 라우터로 통합해 비용 효율적인 모델 사용과 키 보안 요구를 동시에 만족시킬 수 있다. OTLP 기반의 관찰성을 활용해 라우팅 정책의 효과와 비용 절감 수준을 추적할 수 있다.
- 도구 벡터에 걸친 모델 실험과 퍼포먼스 최적화 플랫폼으로 작동한다. 운영자는 라우터를 통해 다양한 모델 조합을 시험하고 클러스터 스코어러의 선택 기준을 바꿔 실제 요청 패턴에서의 성능과 비용 트레이드오프를 계량화할 수 있다. 이렇게 얻은 데이터는 추후 라우팅 전략 조정과 모델 선정 정책 수립에 활용된다.
시작하기
호스티드 설치의 가장 빠른 방법은 `npx @workweave/router` 명령을 실행하는 것이다. 설치기는 대상 클라이언트를 묻고 라우터 키를 발급해 사용자의 설정 파일을 자동으로 구성하며 이 과정에는 Docker나 Postgres가 필요하지 않다. 자체 호스트를 원할 경우 README에서 제시한 `.env.local`에 OPENROUTER_API_KEY를 추가하고 `make full-setup`으로 전체 스택을 기동하면 라우터와 대시보드가 로컬에서 실행된다.
요구사항
- 설치기와 일부 경로는 Node.js 18 이상을 필요로 한다. README는 Claude Code와 opencode 경로에서 `jq`를 요구한다고 명시하므로 해당 툴도 설치되어야 한다. 자체 호스트 모드에서는 Postgres와 Go 런타임·빌드 환경이 필요할 수 있으며 환경 변수에 업스트림 키를 설정해야 한다.
벤치마크
| 벤치마크 | 지표 | 값 | 비교 |
|---|---|---|---|
| Routing latency | latency | <50ms | — |
| Cost reduction | cost reduction | 40-70% | with just an endpoint change |
470
Stars
23
Forks
+279
Trending
3
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.