프로젝트 소개

Route67은 OpenAI 호환 채팅 완성 API를 위해 설계된 경량 LLM 라우팅 시스템입니다. 사용자는 자연어 쿼리를 대상 모델에 매핑하는 라우팅 테이블을 정의할 수 있습니다 (예: '이 정리를 증명해줘' → 'strong_model'). 런타임 시, 들어오는 쿼리는 문장 트랜스포머 모델로 계산된 코사인 유사도를 사용하여 라우팅 테이블과 매칭됩니다. 설정된 임계값을 초과하는 매칭 항목이 없는 경우, 지정된 'weak model'이 게이트키퍼 역할을 수행하여 직접 답변하거나 판단에 따라 더 강력한 모델로 에스컬레이션합니다. 이 시스템은 커스텀 클라이언트를 주입함으로써 OpenRouter와 같은 모든 OpenAI 호환 제공업체를 지원합니다. 라우팅 설정의 모델 이름은 변경 없이 전달되어, 라우팅 로직을 수정하지 않고도 유연하게 백엔드를 전환할 수 있습니다. 제공업체별 요청 옵션(extra_body 등)과 응답 필드(reasoning_details 등)는 그대로 보존됩니다. 라우팅 테이블 항목은 "weak_model" 또는 "strong_model"만 참조하며, 실제 모델 식별자는 ModelSpec 객체에 저장됩니다. ModelSpec의 사용 참고 사항은 weak model의 시스템 프롬프트에 주입되어 에스컬레이션 동작을 안내합니다. 임베딩 모델(minishlab/potion-base-8M)은 처음 사용할 때 지연 다운로드됩니다. 해당 저장소에는 합성 데이터셋을 사용하여 라우팅 정확도와 임계값 민감도를 평가하는 벤치마킹 도구가 포함되어 있습니다. 이는 개발 및 튜닝용이며 표준 PyPI 설치 항목에는 포함되지 않습니다. 설치에는 Python 3.10 이상이 필요하며 pip 또는 uv를 통해 설치할 수 있습니다. 예제 코드는 환경 변수와 기본 라우팅 로직을 활용한 최소 설정 방법을 보여줍니다.