고급플랫폼 / AI 엔지니어

에이전트가 실행하는 모델을 고정하세요 — 계획은 하나, 실행은 다른 하나

클라이언트 측 모델 선택을 무력화한 뒤 계획 모드와 실행을 분리해, 강한 모델이 계획하고 저렴한 모델이 실행하게 합니다.

커뮤니티가 실제로 불평하는 것

"우리 개발자들이 변경 로그를 요약하려고 Claude Code를 Opus로 바꾼다", "모두가 설정에 다른 모델을 넣어 누가 얼마를 썼는지 볼 수 없다", "클라이언트 측 정책을 시도했지만 누구나 되돌릴 수 있다".

모델 선택은 개발자 취향이 아니라 비용 결정입니다 — 요청이 실제로 도착하는 게이트웨이에서 강제해야 합니다.

GateLLM은 이렇게 합니다

건너뛸 수 없는 세 계층: 키 그룹의 models 허용 목록(인그레스 게이트)이 승인되지 않은 모델 이름을 403으로 거부하고, "*"에서 시작하는 포괄 모델 매핑이 클라이언트가 요청한 이름을 승인된 모델로 재작성하며, before 슬롯 스크립트가 계획 모드에서는 강한 모델을 유지하고 종료 시 실행 모델로 전환합니다.

Claude Code의 대화 제목 생성 같은 우회 요청은 계획 마커가 없으므로 저렴한 실행 모델로 떨어집니다. 그것이 바로 "요약에 Opus를 돌리지 말라"는 원하던 동작입니다.

실제로 효과가 있는 5가지 레버

  • 인그레스 게이트: 키 그룹의 models 허용 목록이 라우팅 전에 승인되지 않은 모델 이름을 거부
  • 포괄 매핑: "*" → 승인된 모델로 모든 요청 이름을 하나의 모델로 정규화
  • 계획/실행 분리: before 슬롯 스크립트가 계획 모드 마커를 읽고 계획 종료 후에만 라우팅 전환
  • 관찰 가능: 전환된 요청은 로그에 SW 태그가 붙어 모든 요청의 실제 도착 모델을 감사 가능
  • 핫 리로드: 매핑과 규칙이 즉시 적용 — 재시작도, 개발자별 배포도 없음
전체 방법: 계획 모드 모델 전환(문서)

FAQ