Перейти к основному содержанию
Ключ без потолка — это ключ, который может опустошить весь баланс вашего рабочего пространства, если агент зациклится. Самый эффективный способ ограничить радиус поражения скомпрометированного или сорвавшегося агента — дать его ключу лимит расходов. На хостируемом шлюзе каждый ключ либо безлимитный, либо ограниченный квотой API-ключа, измеряемой в долларах США — и выбор это одно поле в редакторе ключа. Эта страница объясняет два режима, как лимит применяется на пути ретрансляции и когда какой выбирать. Полный набор ограничений, которые несёт ключ — списки разрешённых моделей, списки разрешённых IP, привязки политик — см. в Объекте токена.

1. Два режима

Каждый ключ разрешается ровно в одно из двух состояний:

Безлимитный

unlimited_quota = true. Ключ черпает из баланса рабочего пространства без потолка на ключ. Проверка расходов во время запроса не выполняется — единственный лимит это собственный баланс рабочего пространства.

Ограниченный

credit_limit_usd > 0. Ключ несёт собственный пожизненный лимит расходов в USD. Как только накопленные расходы достигают лимита, ключ перестаёт работать — остальное рабочее пространство нетронуто.
Вы задаёте это на экране Keys в консоли (/console/token). Создание или редактирование ключа требует роли Developer или выше.
credit_limit_usd = 0 означает без ограничения — ноль это сигнальное значение для «нет лимита», а не «лимит в ноль долларов». Чтобы ограничить ключ, дайте ему положительную долларовую сумму.

2. Как применяется квота API-ключа

Когда вы задаёте credit_limit_usd в положительное число, шлюз превращает его во внутренний баланс remain_quota для этого ключа и переключает unlimited_quota в false. С этого момента:
  • remain_quota — оставшийся запас расходов ключа, расходуемый по мере того, как ключ тарифицирует использование.
  • used_quota — накопленные расходы, которые ключ уже записал.
  • На каждом вызове ретрансляции шлюз проверяет ключ, прежде чем переслать запрос. Ограниченный ключ, чей remain_quota достиг нуля, отклоняется как исчерпанный — вызов никогда не достигает модели.
Безлимитный ключ (unlimited_quota = true) пропускает эту проверку баланса целиком; он ограничен только балансом рабочего пространства и любыми другими лимитами уровня ключа, которые вы задали (список разрешённых моделей, список разрешённых IP, срок действия).
Ограниченный ключ — это пожизненный лимит, а не скользящий месячный бюджет — лимит считает суммарные расходы за время жизни ключа. Для бюджета, который сбрасывается, выпускайте свежий ограниченный ключ в своём ритме (например, новый ключ на спринт) и отзывайте старый. См. Управление ключами.

3. Один конкретный пример

Скажем, вы деплоите запланированного агента суммаризации и хотите гарантировать, что он никогда не сможет потратить больше $25, что бы ни делала модель. Задайте лимит при создании ключа:
// POST to the console Keys screen (Developer+).
// Configure in the console — the relay key (sk-orca-…) is never used to
// administer keys; it is only presented on /v1/* inference calls.
{
  "name": "nightly-summarizer",
  "credit_limit_usd": 25,        // bounded: $25 lifetime cap
  "model_limits_enabled": true,
  "model_limits": ["openai/gpt-4o-mini"],
  "expired_time": -1             // -1 = never expires
}
Шлюз сохраняет это как ограниченный ключ: unlimited_quota = false и remain_quota на 25.Агентвызываетмодельсключомретрансляцииskorcaкакобычно.Вмомент,когданакопленныерасходыдостигают25. Агент вызывает модель с ключом ретрансляции `sk-orca-…` как обычно. В момент, когда накопленные расходы достигают 25, ключ исчерпан, и каждый дальнейший вызов /v1/* отклоняется — без того, чтобы вы смотрели на дашборд, и не трогая остальное рабочее пространство. Чтобы сделать тот же ключ безлимитным позже, отредактируйте его и переключите тумблер unlimited — консоль ставит unlimited_quota = true и credit_limit_usd = 0 вместе, и ключ снова может черпать из полного баланса рабочего пространства.

4. Какой режим выбрать

Любой ключ, переданный автономному агенту, CI-задаче или стороннему интегратору, должен быть ограниченным. Лимит расходов — самая дешёвая гарантия, что цикл prompt-инъекции или шторм повторов не накрутит безграничный счёт — лимит останавливает ключ, прежде чем ущерб усугубится. Сочетайте с тесным лимитом моделей и списком разрешённых IP.
Для ключа, который существует только для демо, нагрузочного теста или одного деплоя, сочетайте маленький credit_limit_usd с expired_time. Ключ выводит себя из эксплуатации по тому лимиту, которого достигнет первым. См. Лимит квоты и срок действия и Истекающие ключи.
Ключ, используемый ключевым production-сервисом, который вы полностью контролируете, где лимит на ключ просто вызывал бы ложные сбои, может оставаться безлимитным — баланс рабочего пространства это страховка. Держите такие ключи немногочисленными, называйте их ясно и всё равно ограничивайте их лимитами моделей и IP.
Ограниченный ключ, исчерпавшийся посреди прогона, начинает отклонять вызовы немедленно. В этом и смысл — но это значит, что агент без присмотра может остановиться на полпути задачи. Размеряйте лимит под работу, которую вы ожидаете, и следите за расходами в представлениях использования консоли, чтобы поднять лимит, прежде чем он укусит легитимный прогон.

5. Как соотносятся поля лимита

Три поля, которые управляют этим, — это один переключатель с производным балансом: вы задаёте долларовый лимит, шлюз выводит остальное:
ПолеЗначение
credit_limit_usdВаш ввод. > 0 = ограниченный лимит в USD; 0 = безлимитный.
unlimited_quotatrue, когда у ключа нет лимита; ставится в false автоматически, когда вы даёте положительный credit_limit_usd.
remain_quotaПроизводный запас расходов для ограниченного ключа; достижение нуля исчерпывает ключ.
Вы только задаёте credit_limit_usd (или unlimited_quota) в редакторе. remain_quota и used_quota поддерживаются шлюзом по мере того, как ключ тарифицирует использование — это телеметрия только для чтения, выводимая в представлениях использования консоли.

6. Куда это вписывается в стек управления

Лимит расходов ограничивает, сколько может делать ключ; остальная область ключа ограничивает, что он может делать. Эти два сочетаются:

Лимит квоты и срок действия

Сочетайте долларовый лимит с абсолютным сроком действия, чтобы ключ выводил себя из эксплуатации по тому лимиту, которого достигнет первым.

Объект токена

Каждое поле, которое несёт ключ — лимиты моделей, список разрешённых IP, привязки политик, метка окружения — в одном справочнике.

Чек-лист минимальных полномочий

Полный рецепт самого узкого возможного ключа, по одному ограничению за раз.

Область, ключи и политики

Как лимит вписывается в иерархию рабочее пространство → политика → ключ и как ограничение ключа сжимает радиус поражения.
Чем уже лимит расходов каждого ключа, тем меньше счёт, который может накрутить любой один скомпрометированный агент — и тем яснее ваш аудиторский след того, на что каждый ключ был уполномочен тратить.