Test OmniRoute Fallbacks for Semantic Consistency, Not Just Availability

개요

OmniRoute는 여러 제공업체 및 모델에 걸쳐 단일 엔드포인트를 광고하는 AI 게이트웨이로, 할당량 기반의 대체 기능과 토큰 압축 기능을 제공하며, 대체 시 동작 변경이 아닌 의미론적 일관성을 검증하는 테스트 방법을 제시한다.

주요 내용

  • OmniRoute는 OpenAI 호환 인터페이스를 노출하지만 시스템 역할 우선순위, 툴 호출 JSON 형식, 컨텍스트 제한, 스트리밍 이벤트 순서, 거부 동작, 토큰화 및 잘림 등에서 차이가 발생할 수 있는 다양한 모델을 지원한다.
  • 툴 호출 형식, 컨텍스트 경계, 스트리밍 종료 상태를 검증하는 세 가지 테스트 시나리오를 통해 대체 기능의 의미론적 일관성을 확인할 수 있다.
  • 테스트 시나리오는 다음과 같은 사항을 검증한다:
  • 툴 호출 형식: 요청된 결정론적 툴 호출에 대해 필수 필드를 정확히 검증하고, JSON으로 위장된 거부 응답을 식별한다.
  • 컨텍스트 경계: 선언된 라우트 제한 바로 아래의 프롬프트와 끝부분에 카나리아 토큰을 보내, 기본 및 대체 모델이 컨텍스트를 유지하거나 명시적인 컨텍스트 오류를 반환하는지 확인한다.
  • 스트리밍 종료 상태: 스트림 시작 후 제공업체 실패를 강제하여, 게이트웨이가 부분적인 기본 응답과 새로운 대체 응답을 하나의 완료된 응답으로 병합하지 않고 명시적인 재시도 또는 라우트 변경 이벤트를 발생시키는지 확인한다.
  • 모든 이벤트는 요청 ID, 라우트 수정 버전, 제공업체/모델, 시도 횟수, 종료 상태를 포함해야 하며, 소비자는 텍스트 내용을 기준으로 중복 제거하는 대신 요청과 시도를 기준으로 중복을 제거해야 한다.
  • 대체 기능이 필수 기능을 누락하면, route_capability_unavailable 오류로 실패 처리해야 하며, 의미론적으로 성공적인 낮은 품질의 응답은 다운스트림 도구가 상태를 변경할 수 있는 경우 명백한 중단보다 더 나쁠 수 있다.

시사점

OmniRoute와 같은 다중 제공업체 게이트웨이는 단순히 HTTP 200 상태 코드를 반환하는 것을 넘어, 장애 조치가 관찰 가능하고, 제한적이며, 의미론적으로 호환될 때 신뢰성을 확보할 수 있다.

원문 읽기 →
원문을 불러오는 중...

댓글

GitHub Discussions