SubLaneSubLane

모델 카탈로그

기본 모델 ID를 조회하고 목록 표시 여부와 라우팅 권한을 관리합니다.

모델 목록이 비어 있거나 사용 가능한 모델을 제어해야 할 경우에 사용하세요. 풀에 표시된 모델이면 충분합니다. 당신의 첫 번째 요청.

SubLane은 구독 계정당 모델 ID를 검색하고 활성화된 계정에서 각 풀의 카탈로그를 파생합니다. 풀 허용 목록은 관리자 소유 정책으로 유지됩니다. 발견은 결코 그들을 대체하지 않습니다. 보고된 모델은 남은 할당량이나 성공적인 생성 테스트가 아닌 업스트림 지원을 설명합니다.

합성 모델 ID가 포함된 모델 카탈로그의 예:

Account model catalog dialog with model IDs and update time

동기화 및 저장

자격 증명이 저장된 후 계정 가져오기, OAuth 완료 및 재인증이 검색을 시작합니다. 제출된 토큰이 변경되지 않은 경우에도 재인증을 수행하면 이전 카탈로그가 지워집니다. 기존 계정은 카탈로그나 풀을 읽을 때 또는 첫 번째 모델 요청 전에 느리게 검색합니다. 계정을 다시 활성화하면 저장된 카탈로그를 새로 고쳐야 하는지 여부가 확인됩니다. 연결 확인 그리고 모델 새로 고침 동일한 검색 작업을 공유합니다.

통합 스키마는 각 계정에 제한된 JSON 모델 스냅샷과 수명 주기 개정을 저장합니다. 스냅샷에는 정렬되고 중복이 제거된 기본 모델 ID, 마지막으로 성공한 관찰 시간 및 검색 소스 마커가 포함됩니다. 마커에는 Codex 클라이언트 버전과 어댑터 개정판이 포함됩니다. 해당 계약을 업그레이드하면 기간에 관계없이 오래되었거나 표시되지 않은 스냅샷이 새로 고쳐집니다. 각 계정은 최대 128개의 ASCII 문자로 구성된 512개의 모델 ID로 제한됩니다. 업스트림 지침, 매니페스트 또는 자격 증명은 저장되지 않습니다. null 스냅샷은 알 수 없는 지원을 의미합니다. 성공적으로 검색된 빈 목록은 알려진 빈 카탈로그입니다.

스냅샷은 15분 동안 최신 상태입니다. 오래된 읽기는 저장된 값을 반환하고 공유 백그라운드 새로 고침을 시작합니다. 유휴 상태에서는 주기적인 업스트림 폴링이 없습니다. 검색 소스 마커가 변경되면 콜드 요청도 새로 고침에 참여합니다. 실패한 업그레이드 새로 고침은 이전에 알려진 기능을 유지할 수 있지만 사용되지 않는 카탈로그는 목록에 없는 모델이 지원되지 않는다는 것을 증명할 수 없습니다. 수동 새로 고침에는 5초의 재사용 대기시간이 있습니다. 새로 고침이 실패하면 마지막으로 성공한 스냅샷이 유지되고 30초 동안 취소됩니다. 실패한 관찰은 타임스탬프를 절대 변경하지 않습니다. 24시간 후에도 이전 스냅샷은 관리자에게 계속 표시되지만 새로 고쳐질 때까지 공지 및 라우팅 가능한 모델에서는 제외됩니다. 새로 고침 상태와 백오프는 프로세스 로컬입니다. 성공적인 스냅샷은 다시 시작해도 유지됩니다.

모델 검색은 최대 2개가 동시에 실행되며 워크스페이스 작업 용량에 포함됩니다. 기본 용량은 128(SUBLANE_GATEWAY_CAPACITY)입니다. 같은 계정과 리비전의 검색은 공유하며 프로세스 컨텍스트와 45초 기한을 사용합니다. 브라우저 연결 해제는 해당 대기만 취소합니다. 최초 검색의 전체 예산도 45초입니다. 종료 시 작업을 중단한 뒤 SQLite를 닫으며 최신 카탈로그를 읽을 때는 업스트림 호출이 필요하지 않습니다.

조건부 쓰기 거부는 더 이상 사용되지 않는 인증, 비활성화/삭제된 계정 또는 이전 수명 주기 개정으로 인해 발생합니다. Discovery는 런타임 Codex 버전을 한 번 캡처합니다. 네트워크 요청 중에 대체된 버전의 결과는 삭제되고 스냅샷은 실제로 업스트림으로 전송된 버전을 유지합니다. 버전 정책 및 자동 안정 릴리스 동기화는 다음에서 관리됩니다. 시스템 설정. 풀 결과를 게시하기 전에 하나의 SQLite 트랜잭션에서 풀 부여, 멤버십, 정책 및 지속형 스냅샷을 다시 읽습니다. 풀에서 제거된 모델은 편집 전에 시작된 새로 고침을 통해 누출될 수 없습니다.

풀 카탈로그 및 라우팅

효과적인 풀 카탈로그는 풀의 정확한 모델 허용 목록으로 필터링된 사용 가능한 계정 스냅샷의 중복 제거된 조합입니다. 비활성화된 계정과 재인증이 필요한 계정은 제외됩니다. 휴지 시간, 동시성 및 남은 구독 할당량은 별도의 런타임 문제로 남아 있습니다. 나열된 모델은 즉시 사용 가능한 요청 슬롯을 약속하지 않습니다.

계정, 리소스 그룹, 키 카탈로그는 공급자 접두사 없이 네이티브 모델 ID를 사용합니다. 적격한 Codex, Claude, Antigravity, Grok Build, OpenAI 호환 API 리소스가 그룹 라우팅 및 대체 정책에 따라 참여합니다. 공개 목록에서는 숨겨진 모델을 제외합니다. 동일한 표시 ID는 병합하며 여러 공급자가 표시 경로를 제공하면 owned_by는 sublane입니다. 추론 변형의 권한은 전체 요청 ID로, 지원 여부는 검색된 기본 모델로 판단합니다. 통합 카탈로그 상한은 4,096개 ID입니다. 기존 공급자 접두사 요청도 지원하며 명시적 접두사는 후보를 제한합니다.

추론 전에 검색은 풀에 있는 적격 공급자에 대한 누락/오래된 카탈로그를 워밍업합니다. 명시적인 레거시 접두사는 검색 범위를 해당 공급자로 좁힙니다. 압축은 Codex 계정만 준비하고 선택합니다. 스케줄러는 선택 트랜잭션에서 풀 정책과 계정 스냅샷을 다시 확인하고 요청된 모델을 지원하지 않는 계정을 필터링한 다음 기존 동시성, 휴지 및 순환 규칙을 적용합니다. 알려진 지원되지 않는 모델이 반환됨 404 model_not_available; 알 수 없거나 연령이 초과된 기능 반환 503 model_catalog_unavailable 재시도 힌트와 함께. 다른 적격하고 알려진 계정은 피어 검색이 실패하더라도 여전히 모델을 제공할 수 있습니다.

기본 요청은 모델을 보고하는 허용되고 사용 가능한 계정 중에서 선택합니다. 계정 선택 및 예약은 기존 거래 및 프로세스 잠금을 공유합니다. 기존 기본 대화는 공급자 간에 단일 계정 바인딩을 유지합니다. 클라이언트가 명시적으로 모델을 변경하고 전체 휴대용 기록을 보내는 경우 새 모델을 지원하지 않는 계정은 동일한 풀의 적격 계정으로 대체될 수 있습니다. 현재 계정이 새 모델을 지원하는 경우 선택된 상태로 유지됩니다. 변경되지 않은 모델에 대한 포화, 쿨다운, 제거, 비활성화 및 지원 중단으로 인해 자동 장애 조치가 발생하지 않습니다.

공급자 연속은 자신의 계정을 유지합니다. 이전 응답 또는 저장된 대화 참조, 항목 참조, 암호화된 추론/압축, 서명된 Claude 사고 및 Gemini 캐시된 콘텐츠/서명은 모델 전환을 승인할 수 없습니다. 증분 WebSocket 회전은 모델을 변경할 수 없습니다. 독립적인 전체 기록 보내기 response.create 대신에 방향을 바꾸세요. HTTP previous_response_id 계속 거부됨; 해당 참조 없이 전체 입력을 보냅니다. 지원되지 않는 바운드 요청 반환 conversation_account_unavailable.

기존 account_affinity 테이블은 기본 라우팅을 저장합니다. auto 추가 마이그레이션을 통해 정규화된 모델의 범위를 지정하고 기록합니다. 알 수 없는 모델 메타데이터가 포함된 업그레이드된 바인딩은 지원되는 요청이 모델을 기록할 때까지 고정된 상태로 유지됩니다. 사용할 수 없는 경우 새 대화를 시작하세요. 계정이나 업스트림 세션 해시를 변경하지 않고 단일 레거시 공급자 바인딩이 채택됩니다. 동일한 세션의 여러 레거시 바인딩은 모호한 상태로 유지됩니다. 명시적 레거시 접두사 요청은 해당 공급자가 활성화된 경우에만 공급자별 바인딩을 유지합니다. 영구 API-키/계정 바인딩이 추가되지 않습니다.

UI 및 브라우저 API

  • 계정 → 모델 수동 새로 고침을 통해 계정의 마지막 보고된 모델 ID, 관찰 시간 및 동기화 상태를 표시합니다.
  • 리소스 그룹 → 모델 자동으로 파생되고 정책으로 필터링된 풀 카탈로그를 보여줍니다. 풀 편집자는 계속해서 허용 목록을 별도로 관리합니다.
  • API 키 → 모델 현재 키의 승인된 풀 카탈로그를 표시합니다. CC Switch로 가져오기 동일한 카탈로그를 사용하여 검색 가능한 모델 선택기를 제공합니다.
엔드포인트입장목적
GET /api/accounts/{id}/models관리자계정 스냅샷 읽기 및 오래된 검색 트리거
GET /api/channels/{id}/models관리자계정 스냅샷 읽기 및 오래된 검색 트리거
POST /api/accounts/{id}/models/refresh관리자, 정확한 출처, 빈 JSON 본문계정 검색 새로 고침 또는 가입
POST /api/channels/{id}/models/refresh관리자, 정확한 출처, 빈 JSON 본문계정 검색 새로 고침 또는 가입
GET /api/groups/{id}/models관리자파생 풀 카탈로그 읽기
GET /api/keys/{id}/models활성화된 키 소유자비밀을 해독하지 않고 활성 키의 풀 카탈로그 읽기
GET /v1/models게이트웨이 전달자 키키 풀의 표준 모델 목록을 반환합니다.

개인 카탈로그 액세스는 키 활성화, 만료, 해지 및 풀 액세스를 다시 확인합니다. 관리자는 개인 엔드포인트를 사용하여 다른 소유자의 키를 검사할 수 없습니다. Responses에는 구독 계정 ID, 이름 또는 자격 증명이 아닌 모델 메타데이터 및 집계 최신성 개수가 포함됩니다. 부분적인 풀 응답은 일부 계정 카탈로그가 모든 모델을 지원하는 것으로 처리하는 대신 알 수 없는 상태로 남아 있음을 노출합니다.

검증 경계

자동화된 테스트는 합성 계정과 로컬 가짜 업스트림을 사용합니다. 여기에는 재시작 지속성, 신뢰할 수 있는 빈 카탈로그, 새로 고침 실패 보존/백오프, 권한 부여 및 풀 취소 경합, 취소/종료, 혼합 계정 라우팅, 풀 허용 목록, 사고 변형, 대화 선호도, 엔드포인트 소유권 및 신규 스키마 지속성이 포함됩니다. 프런트엔드 테스트는 카탈로그 상태, 키보드 모델 선택 및 ID 변경 후 오래된 응답을 다룹니다. 검색은 모델 생성을 조사하지 않으며 업스트림 카탈로그는 동기화와 실제 요청 사이에 변경될 수 있습니다.

모델 가용성 진단

풀 및 개인 키 모델 대화 상자를 사용하면 기본 모델 ID를 검사할 수 있습니다. 결과에는 새 요청에 대한 현지 자격, 제외 이유, 관찰 시간 및 알려진 재시도 시간이 표시됩니다. 관리자는 계정 수준 세부정보를 검사할 수 있습니다. 개인 키는 구독 ID 없이 집계를 수신합니다. 검사에서는 추론을 실행하거나, 메타데이터를 새로 고치거나, 슬롯을 예약하거나, 대화 바인딩을 생성하지 않습니다. 알 수 없거나 오래된 데이터는 알 수 없는 상태로 유지됩니다. 자격이 업스트림 성공을 보장하지는 않습니다. 키, 회원 및 허용량 제한은 계속 적용되며 기존 대화는 계정을 유지합니다.

모델 수동 테스트

관리자는 계정 또는 API 채널의 모델 목록에서 모델 옆의 테스트를 선택할 수 있습니다. 각 테스트는 실제 생성 요청을 보내고 업스트림 할당량과 동시 실행 용량을 사용하며, 30초 후 시간 초과됩니다. 결과에는 테스트 시점의 해당 리소스에 대한 성공 여부, 민감한 정보를 제거한 오류, 소요 시간(밀리초)이 표시됩니다. 개인 키의 풀 접근 권한이나 사용량 할당은 검증하지 않습니다. 위의 로컬 가용성 진단은 생성 요청을 보내지 않습니다.

업스트림의 표시 설정과 라우팅 지원 여부는 별개입니다. 숨겨진 모델은 브라우저 목록이나 GET /v1/models에 표시되지 않지만, 계정이 지원하고 현재 모델 정책이 허용하면 ID를 명시한 요청을 처리할 수 있습니다. 숨겨진 모델에도 권한, 할당량 및 용량 제한이 적용됩니다.

내부 모델 표시와 호출

Antigravity의 isInternal 모델과 Grok Build의 hidden 또는 _meta.hidden 모델도 호출할 수 있습니다. 로그인한 계정·리소스 그룹·개인 키의 모델 대화상자에서는 숨겨진 모델 표시와 함께 보이는 모델 뒤에 나열하며 각 그룹 안에서 이름순으로 정렬합니다. GET /v1/models와 CC Switch 모델 선택기에서는 제외합니다. 명시적 요청에도 모델 정책, 권한, 할당량, 사용량 할당, 용량, 대기 시간과 계정 상태 검사를 적용합니다. Grok은 인증된 구독 카탈로그를 읽고 선택기 별칭을 네이티브 라우팅 ID로 정규화합니다. 이전 카탈로그는 표시 메타데이터를 가져오도록 자동 새로 고침됩니다.