콘텐츠로 이동
OmniRoute source

Auto-Combo: Let OmniRoute Pick the Best AI for You (한국어)

GPT-4o나 Claude처럼 특정 AI 모델을 선택하는 대신, 각 요청에 가장 적합한 모델을 OmniRoute가 자동으로 선택하도록 할 수 있습니다. 다음 요소를 고려합니다.

  • 상태 — 제공자가 현재 정상적으로 작동하고 있나요?
  • 속도 — 얼마나 빠른가요?
  • 비용 — 비용이 얼마나 드나요?
  • 품질 — 이 유형의 작업을 잘 처리하나요?
  • 용량 — 남은 할당량이 있나요?

OmniRoute는 연결된 모든 제공자의 점수를 계산하고 가장 적합한 제공자를 선택합니다. 선택한 제공자가 실패하면 자동으로 다음 제공자를 시도합니다.


1단계: IDE 또는 CLI에서 모델을 auto로 설정합니다.

model: "auto"

2단계: 이것으로 끝입니다! 나머지는 OmniRoute가 처리합니다.

3단계(선택 사항): 특정 작업에 맞는 변형을 사용합니다.

model: "auto/coding" # 코드에 가장 적합
model: "auto/fast" # 가장 빠른 응답
model: "auto/cheap" # 가장 저렴한 옵션

어떤 “auto”를 사용해야 하나요?

섹션 제목: “어떤 “auto”를 사용해야 하나요?”
원하는 사항 사용할 설정 가장 적합한 용도 작동 방식
전반적으로 최고 auto 일반 질문, 채팅 속도, 비용, 품질의 균형을 맞춤
코드에 최고 auto/coding 코드 작성, 디버깅 코딩 작업에 능숙한 모델을 선택
가장 빠른 응답 auto/fast 빠른 답변, 짧은 지연 시간 다른 모든 요소보다 속도를 우선시
가장 저렴한 옵션 auto/cheap 비용 절감 가장 저렴한 제공자를 선택
가장 지능적인 모델 auto/smart 복잡한 작업 품질을 우선시하고 새 모델을 탐색
가장 높은 가용성 auto/offline 제공자 사용량이 많을 때 용량이 가장 많이 남은 제공자를 선택
터미널 창
# 일반 채팅 — 균형 우선
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
# 코드 생성 — 품질 우선
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto/coding","messages":[{"role":"user","content":"Write a Python function"}]}'
# 빠른 답변 — 속도 우선
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto/fast","messages":[{"role":"user","content":"What is 2+2?"}]}'

model: "auto"로 요청을 보내면 OmniRoute는 다음과 같이 처리합니다.

  1. 연결된 모든 제공자를 확인합니다 — 사용자가 추가한 모든 제공자(OpenAI, Anthropic, Google 등)를 확인합니다.
  2. 각 제공자의 점수를 계산합니다. 특히 다음 요소에 가중치를 적용합니다.
    • 정상적으로 작동하나요? (상태)
    • 사용 가능한 용량이 있나요? (할당량)
    • 비용이 얼마나 드나요? (가격)
    • 얼마나 빠른가요? (속도)
    • 이 작업을 잘 처리하나요? (품질)
  3. 가장 적합한 제공자를 선택합니다 — 점수가 가장 높은 제공자가 요청을 처리합니다.
  4. 자동으로 복구합니다 — 실패하면 OmniRoute가 자동으로 다음 제공자를 시도합니다.

각 제공자는 0에서 1 사이의 점수를 받습니다. 점수가 높을수록 더 적합합니다.

요소 가중치 의미
상태 20% 제공자가 정상적으로 작동하나요? (회로 차단기 상태)
할당량 15% 남아 있는 용량이 있나요?
비용 15% 얼마나 비싼가요? (저렴할수록 점수가 높음)
속도 12% 얼마나 빠른가요? (지연 시간이 짧을수록 점수가 높음)
작업 적합도 8% 이 유형의 작업을 잘 처리하나요?
안정성 5% 일관되게 작동하나요? (낮은 오류율)
등급 5% 계정 등급 (Ultra > Pro > Free)
기타 20% 컨텍스트 선호도, 연결 밀도 등

각 변형은 서로 다른 가중치를 사용합니다.

변형 우선시하는 요소 주요 가중치
auto 균형 health=20%, quota=15%, cost=15%
auto/coding 품질 taskFit=37%, stability=15%
auto/fast 속도 latency=32%, health=28%
auto/cheap 비용 cost=37%
auto/smart 품질 + 탐색 taskFit=37%, exploration=10%
auto/offline 용량 quota=37%, health=28%

OmniRoute는 3단계 보호 기능을 제공합니다.

최적의 제공업체에 장애가 발생하면 OmniRoute가 자동으로 다음 제공업체를 시도합니다. 별도로 수행할 작업은 없습니다.

제공업체에서 장애가 계속 발생하는 경우:

  • 점수 < 0.2 → 5분 동안 제외
  • 서킷 브레이커 열림 → 자동 제외
  • 제공업체의 50% 이상이 중단됨 → 인시던트 모드(탐색 없음)

모든 제공업체에서 장애가 발생하면 OmniRoute는 최후의 수단으로 Kiro 또는 Qoder와 같은 안정적인 무료 제공업체로 라우팅합니다.


동일한 제공업체에 여러 계정이 있는 경우(예: OpenAI 키 2개), OmniRoute는 각 계정을 별도의 후보로 취급합니다. 즉:

  • 계정 A에 할당량이 남아 있음 → 사용
  • 계정 B에 요청 속도 제한이 적용됨 → 건너뜀
  • 계정 C가 더 저렴함 → 우선 선택

각 계정은 자체 상태, 할당량 및 속도에 따라 독립적으로 점수가 매겨집니다.


OmniRoute는 더 나은 옵션을 찾기 위해 때때로 새로운 제공업체를 탐색합니다.

  • 기본값: 요청의 5%를 무작위 제공업체로 전송
  • Auto/smart: 탐색률 10%
  • 제공업체의 50% 이상이 비정상일 때 비활성화

이를 통해 OmniRoute는 사용 패턴에 가장 적합한 제공업체를 학습할 수 있습니다.


“항상 가장 비싼 모델을 선택하나요?”

섹션 제목: ““항상 가장 비싼 모델을 선택하나요?””

아니요. 기본적으로 비용은 점수의 15%만 차지합니다. 저렴하고 빠르며 상태가 양호한 제공업체가 비싼 제공업체보다 높은 점수를 받을 수 있습니다. 비용을 더 우선시하려면 auto/cheap을 사용하세요.

“제공업체에 장애가 발생하면 어떻게 되나요?”

섹션 제목: ““제공업체에 장애가 발생하면 어떻게 되나요?””

OmniRoute가 해당 제공업체를 자동으로 건너뛰고 다음 제공업체를 시도합니다. 제공업체에서 장애가 계속 발생하면 일시적으로(5~30분) 제외됩니다. 별도로 수행할 작업은 없습니다.

“어떤 제공업체가 사용되었는지 확인할 수 있나요?”

섹션 제목: ““어떤 제공업체가 사용되었는지 확인할 수 있나요?””

응답 헤더를 확인하세요. OmniRoute는 각 응답에 사용된 제공업체와 모델을 포함합니다.

“내 사용 데이터를 바탕으로 학습하나요?”

섹션 제목: ““내 사용 데이터를 바탕으로 학습하나요?””

네! 점수 시스템은 과거 데이터(지연 시간, 오류율, 성공률)를 사용하여 시간이 지남에 따라 더 나은 결정을 내립니다.

“auto와 auto/smart의 차이점은 무엇인가요?”

섹션 제목: ““auto와 auto/smart의 차이점은 무엇인가요?””
  • auto — 균형 중심, 탐색률 5%
  • auto/smart — 품질 우선(auto/coding과 동일한 가중치), 탐색률 10%

최상의 품질을 원하며 간헐적인 탐색을 허용할 수 있다면 auto/smart를 사용하세요.

“특정 제공업체를 강제로 지정할 수 있나요?”

섹션 제목: ““특정 제공업체를 강제로 지정할 수 있나요?””

네! auto 대신 priority 전략을 사용하는 콤보를 만든 다음, 콤보의 정확한 이름을 model 필드로 전송하세요(예: model: "my-combo" — auto가 아님). 자세한 내용은 기술 참조를 확인하세요.

“라운드 로빈과 어떻게 다른가요?”

섹션 제목: ““라운드 로빈과 어떻게 다른가요?””

라운드 로빈은 제공업체를 순서대로 순환합니다. 자동 콤보는 각 제공업체에 점수를 매기고 최적의 제공업체를 선택합니다. 상태, 속도, 비용 및 품질을 고려하므로 더 지능적입니다.



개발자와 기여자는 다음 내용을 확인하려면 Auto-Combo 기술 참조 문서를 참조하세요.

  • 전체 16요소 점수 산정 알고리즘
  • 모드 팩 가중치 표
  • 구현 파일 경로
  • API 엔드포인트
  • 자가 복구 알고리즘 세부 정보

OmniRoute 소스 코드 (a58000c7685f)

HagiCode

HagiCode는 구조화된 워크플로, 다중 에이전트 실행, Hero Dungeon 뷰를 갖춘 에이전트 코딩 작업 공간입니다.

더 스마트하고 빠르며 즐거운 에이전트 워크플로로 유용한 소프트웨어를 만드세요.

HagiCode 라이트 테마 메인 화면
  • Smart구조화된 워크플로는 의도를 아이디어부터 배포까지 실행 가능한 경로로 바꿉니다.
  • Efficient다중 에이전트 워크플로로 조사, 구현, 검토를 병렬로 진행합니다.
  • FunHero Dungeon은 긴 코딩 세션을 시각적이고 협업적인 경험으로 만듭니다.
HagiCode 방문