Passer au contenu principal
Une clé sans plafond est une clé qui peut vider tout le solde de votre espace de travail si un agent boucle. La façon la plus efficace de borner le rayon d’explosion d’un agent compromis ou emballé est de donner à sa clé un plafond de dépense. Sur la passerelle hébergée, chaque clé est soit illimitée, soit bornée par un quota de clé API mesuré en dollars US — et le choix est un seul champ dans l’éditeur de clé. Cette page explique les deux modes, comment le plafond est appliqué sur le chemin de relais, et quand choisir lequel. Pour l’ensemble complet des contraintes qu’une clé porte — allow-lists de modèles, allow-lists d’IP, attachements de politique — voir L’objet token.

1. Les deux modes

Chaque clé se résout exactement à l’un de deux états :

Illimité

unlimited_quota = true. La clé tire sur le solde de l’espace de travail sans plafond par clé. Aucune vérification de dépense ne s’exécute au moment de la requête — la seule limite est le solde propre de l’espace de travail.

Borné

credit_limit_usd > 0. La clé porte son propre plafond de dépense à vie en USD. Une fois que la dépense cumulée atteint le plafond, la clé cesse de fonctionner — le reste de l’espace de travail est intact.
Vous définissez ceci dans l’écran Clés de la console (/console/token). Créer ou modifier une clé requiert le rôle Developer ou supérieur.
credit_limit_usd = 0 signifie illimité — zéro est la sentinelle pour « aucun plafond », pas « un plafond de zéro dollar ». Pour borner une clé, donnez-lui un montant en dollars positif.

2. Comment un quota de clé API est appliqué

Lorsque vous fixez credit_limit_usd à un nombre positif, la passerelle le convertit en un solde interne remain_quota pour cette clé et bascule unlimited_quota sur false. Dès lors :
  • remain_quota est la marge de dépense restante de la clé, déduite au fur et à mesure que la clé facture son usage.
  • used_quota est la dépense cumulée que la clé a déjà comptabilisée.
  • À chaque appel de relais, la passerelle vérifie la clé avant de transmettre la requête. Une clé bornée dont le remain_quota a atteint zéro est rejetée comme épuisée — l’appel n’atteint jamais le modèle.
Une clé illimitée (unlimited_quota = true) ignore entièrement cette vérification de solde ; elle n’est bornée que par le solde de l’espace de travail et par toute autre limite au niveau de la clé que vous définissez (allow-list de modèles, allow-list d’IP, expiration).
Une clé bornée est un plafond à vie, pas un budget mensuel glissant — le plafond compte la dépense totale sur la durée de vie de la clé. Pour un budget qui se réinitialise, émettez une nouvelle clé bornée à votre propre cadence (par ex. une nouvelle clé par sprint) et révoquez l’ancienne. Voir Gérer les clés.

3. Un exemple concret

Disons que vous déployez un agent de résumé planifié et que vous voulez garantir qu’il ne peut jamais dépenser plus de 25 $ peu importe ce que fait le modèle. Définissez le plafond lorsque vous créez la clé :
// POST vers l'écran Clés de la console (Developer+).
// Configurez dans la console — la clé de relais (sk-orca-…) n'est jamais
// utilisée pour administrer des clés ; elle n'est présentée que sur les appels
// d'inférence /v1/*.
{
  "name": "nightly-summarizer",
  "credit_limit_usd": 25,        // borné : plafond à vie de 25 $
  "model_limits_enabled": true,
  "model_limits": ["openai/gpt-4o-mini"],
  "expired_time": -1             // -1 = n'expire jamais
}
La passerelle stocke ceci comme une clé bornée : unlimited_quota = false et un remain_quota valant 25 .Lagentappellelemodeˋleaveclacleˊderelaisskorcacommedhabitude.Aˋlinstantouˋladeˊpensecumuleˊeatteint25. L'agent appelle le modèle avec la clé de relais `sk-orca-…` comme d'habitude. À l'instant où la dépense cumulée atteint 25 , la clé est épuisée et tout appel /v1/* supplémentaire est rejeté — sans que vous surveilliez un tableau de bord, et sans toucher au reste de l’espace de travail. Pour rendre la même clé illimitée plus tard, modifiez-la et basculez l’interrupteur illimité — la console fixe unlimited_quota = true et credit_limit_usd = 0 ensemble, et la clé peut à nouveau tirer sur le solde complet de l’espace de travail.

4. Quel mode choisir

Toute clé remise à un agent autonome, un job CI, ou une intégration tierce devrait être bornée. Un plafond de dépense est la garantie la moins chère qu’une boucle d’injection de prompt ou une tempête de retry ne peut pas faire grimper une facture non bornée — le plafond arrête la clé avant que les dégâts s’aggravent. Associez-le à une limite de modèle serrée et une allow-list d’IP.
Pour une clé qui n’existe que pour une démo, un test de charge, ou un seul déploiement, combinez un petit credit_limit_usd avec un expired_time. La clé se retire d’elle-même sur la première limite qu’elle atteint. Voir Quota, plafond & expiration et Clés expirantes.
Une clé utilisée par un service de production central que vous contrôlez entièrement, où un plafond par clé causerait juste des pannes parasites, peut rester illimitée — le solde de l’espace de travail est le filet de sécurité. Gardez ces clés peu nombreuses, nommez-les clairement, et scopez-les quand même avec des limites de modèle et d’IP.
Une clé bornée qui s’épuise en cours d’exécution commence à rejeter les appels immédiatement. C’est le but — mais cela signifie qu’un agent non surveillé peut s’arrêter à mi-chemin d’un job. Dimensionnez le plafond pour le travail que vous attendez, et surveillez la dépense dans les vues d’usage de la console pour pouvoir relever le plafond avant qu’il ne morde une exécution légitime.

5. Comment les champs de plafond se rapportent

Les trois champs qui gouvernent ceci sont un seul interrupteur avec un solde dérivé — vous fixez le plafond en dollars, la passerelle dérive le reste :
ChampSignification
credit_limit_usdVotre entrée. > 0 = plafond borné en USD ; 0 = illimité.
unlimited_quotatrue quand la clé n’a aucun plafond ; mis à false automatiquement quand vous donnez un credit_limit_usd positif.
remain_quotaMarge de dépense dérivée pour une clé bornée ; atteindre zéro épuise la clé.
Vous ne fixez jamais que credit_limit_usd (ou unlimited_quota) dans l’éditeur. remain_quota et used_quota sont maintenus par la passerelle au fur et à mesure que la clé facture l’usage — ce sont de la télémétrie en lecture seule, exposée dans les vues d’usage de la console.

6. Où cela se situe dans la pile de contrôle

Un plafond de dépense borne combien une clé peut faire ; le reste de la portée de la clé borne *ce qu’*elle peut faire. Les deux se composent :

Quota, plafond & expiration

Combinez un plafond en dollars avec une expiration absolue pour qu’une clé se retire d’elle-même sur la première limite qu’elle atteint.

L'objet token

Chaque champ qu’une clé porte — limites de modèles, allow-list d’IP, attachements de politique, étiquette d’environnement — dans une seule référence.

Checklist de moindre agence

La recette complète de la clé la plus étroite possible, une contrainte à la fois.

Portée, clés & politiques

Comment le plafond s’inscrit dans la hiérarchie espace de travail → politique → clé, et comment borner une clé rétrécit le rayon d’explosion.
Plus le plafond de dépense de chaque clé est étroit, plus petite est la facture qu’un agent compromis peut faire grimper — et plus claire est votre piste d’audit de ce que chaque clé était autorisée à dépenser.