Przejdź do głównej treści
Pojedynczy klucz API może sięgnąć do każdego modelu, do którego uprawniona jest twoja przestrzeń robocza. To wygodne dla sesji konsolowej, a niebezpieczne dla długożyciowego agenta: agent z prompt injection trzymający nieograniczony klucz może po cichu przełączyć się z gpt-4o-mini na najdroższy model, do jakiego masz dostęp, lub na taki, którego obchodzenie się z danymi nigdy nie zatwierdziłeś. Rozwiązaniem jest lista dozwolonych modeli per klucz. Każdy klucz niesie pole model_limits (bramkowane przez model_limits_enabled). Gdy jest włączone, żądanie dowolnego modelu spoza listy jest odrzucane w bramie — zanim zostanie wybrany kanał i zanim cokolwiek ruszy do dostawcy.
To jedno ograniczenie na obiekcie klucza. Komponuje się z listą dozwolonych IP klucza, limitem wydatków, wygaśnięciem i dołączoną polityką guardrail / firewall — każde zawęża klucz niezależnie.

1. Po co ograniczać dostęp do modeli per klucz API

Wybór modelu to dźwignia uprawnień. Klucz, który może wywołać dowolny model, może zostać skierowany ku:
  • Wybuchom kosztów — przełączenie na model premium zwielokrotnia rachunek za token.
  • Pełzaniu możliwości — zadanie ograniczone do małego modelu zostaje poprowadzone do modelu z pierwszej linii, który może o wiele więcej, niż zamierzałeś.
  • Dryfowi zgodności — wysyłaniu ruchu do rodziny modeli, której nie zatwierdziłeś dla danej klasy danych.
Ograniczenie klucza do jednego lub dwóch modeli, których agent faktycznie potrzebuje, zamyka wszystkie trzy naraz. To odpowiednik firewalla listującego dozwolone narzędzia w osi modeli — agent może sięgnąć tylko do tego, co nazwałeś, i nic więcej.

2. Dwa pola

Limity modeli żyją na kluczu jako para:
PoleTypZnaczenie
model_limits_enabledboolGłówny przełącznik. Gdy false, klucz sięga do każdego modelu, na który pozwala przestrzeń robocza.
model_limitslistaLista dozwolonych nazw modeli. Ma znaczenie tylko, gdy model_limits_enabled jest true.
Dwa pola są niezależne, a kombinacja ma znaczenie: model_limits_enabled = true z pustą listą oznacza, że klucz nie może sięgnąć do żadnego modelu — każde żądanie jest odrzucane z “This token has no access to any models.” Włącz przełącznik dopiero, gdy nazwałeś co najmniej jeden model.

3. Ustaw to na kluczu

Skonfiguruj limity modeli w edytorze klucza w konsoli (/console/token), w tym samym miejscu, w którym ustawiasz inne ograniczenia klucza. Tworzenie lub edycja klucza wymaga roli Developer lub wyższej.
  1. Otwórz klucz (lub Utwórz klucz).
  2. Włącz Limity modeli.
  3. Wybierz modele, które ten klucz może wywoływać — pisz, by filtrować dostępne modele przestrzeni roboczej.
  4. Zapisz. Zmiana wchodzi w życie przy następnym żądaniu klucza — bez ponownego wdrożenia, bez rotacji klucza.
Zaplanowany streszczacz, który powinien dotykać tylko jednego taniego modelu, kończy z listą dozwolonych z dokładnie jednym wpisem:
model_limits_enabled: true
model_limits:         ["openai/gpt-4o-mini"]
Od tego momentu klucz jest przypięty do gpt-4o-mini. Każda inna nazwa modelu w żądaniu od tego klucza jest odrzucana — nie ma fallbacku do domyślnego modelu ani cichego obniżenia.
Połącz limity modeli z limitem credit_limit_usd na tym samym kluczu. Lista modeli ogranicza, do którego modelu może sięgnąć rozbiegana pętla; limit wydatków ogranicza, ile może spalić, zanim klucz przestanie działać. Dwa niezależne pułapy, oba egzekwowane w bramie. Zobacz Kwota, limit i wygaśnięcie.

4. Jak wygląda odrzucone żądanie

Gdy model_limits_enabled jest włączone, a żądanie nazywa model spoza listy, brama przerywa żądanie z HTTP 403 i ciałem błędu w kształcie OpenAI:
{
  "error": {
    "message": "This token has no access to model claude-opus-4-8 (request id: 2024...abc)",
    "type": "orcarouter_api_error",
    "code": ""
  }
}
Kluczowe właściwości odrzucenia:
Sprawdzenie odbywa się, gdy brama wciąż wybiera kanał — żądanie nigdy nie dociera do dostawcy nadrzędnego, więc zabroniony model nie kosztuje tokenów modelu.
Przy włączonym przełączniku i pustej liście dozwolonych komunikat to “This token has no access to any models”, a każde żądanie jest odrzucane. To różnica między „ogranicz do listy” a „zablokuj klucz przed inferencją całkowicie”.
Nazwa modelu z żądania jest normalizowana, zanim lista zostanie sprawdzona, więc powiązane warianty (np. warianty thinking) rozwiązują się do tej samej kanonicznej nazwy, którą umieściłeś na liście dozwolonych. Wypisz bazową nazwę modelu, którą pokazuje konsola.

5. Limity modeli vs uprawnienia grupowe

Dwie różne rzeczy decydują, czy klucz może wywołać model. Nie myl ich:
WarstwaZakresPytanie, na które odpowiada
Uprawnienie przestrzeni roboczejPrzestrzeń roboczaCzy ten model jest w ogóle dostępny dla przestrzeni roboczej?
model_limitsPojedynczy kluczZ dostępnych modeli, których może użyć TEN klucz?
model_limits zawsze tylko zawęża. Klucz nie może użyć limitów modeli, by sięgnąć do modelu, do którego sama przestrzeń robocza nie jest uprawniona — może jedynie wykroić mniejszą listę dozwolonych z tego, co już jest dozwolone. By nadać kluczowi nic ekstra, ale ściśle mniej, dokładnie do tego służy to pole.

6. Gdzie to pasuje do postawy minimalnych uprawnień

Limity modeli to jedna linia przepisu na klucz per agent. Najwęższy użyteczny klucz dla autonomicznego agenta przypina wszystkie jego osie naraz: Gdy taki klucz zostaje skompromitowany przez prompt injection, promień rażenia jest ograniczony na każdej osi — w tym na tym, na które modele atakujący może wydawać twój budżet.
Limity modeli to ograniczenie tożsamości na kluczu, nie polityka treści ani akcji. Nie sprawdzają promptów (to robią Guardrails) ani wywołań narzędzi (to robi Firewall) — decydują z góry, do którego modelu klucz w ogóle wolno zaadresować.

7. Kolejne kroki

Obiekt klucza

Każde pole, które niesie klucz — limity modeli, lista IP, limity, wygaśnięcie i załączniki polityk — w jednej referencji.

Lista kontrolna minimalnych uprawnień

Pełny przepis na klucz per agent: ogranicz każdą oś do minimum, którego agent potrzebuje.

Zakres, klucze i polityki

Jak klucze, guardrails i polityki firewalla wiążą się w jedną tożsamość agenta.

Powiązanie polityk z kluczem

Dołącz guardrail i politykę firewalla do tego samego klucza.
Ograniczanie dostępu do modeli per klucz API to najtańsza kontrola uprawnień, jaką możesz zastosować: jedna lista dozwolonych, egzekwowana w bramie, której żaden skompromitowany agent nie zdoła obejść gadaniną.