Coûts et crédits
Ce qui se facture
L'apprentissage ne coûte rien. Seules les prédictions produites sont facturées.
| Opération | Coût |
|---|---|
POST /v1/models, entraînement | 0 crédit |
POST /v1/models/{id}/predict | les crédits du moteur par ligne scorée, 1 sur le moteur par défaut |
POST /v1/forecast | l'horizon multiplié par le nombre de séries |
POST /v1/models/{id}/outcomes | 0 crédit |
POST /v1/models/{id}/refresh | 0 crédit |
| Toutes les lectures | 0 crédit |
Un exemple pour fixer les idées : une prévision sur 56 points avec un horizon de 7 coûte 7 crédits, et non 56. C'est l'horizon qui compte, pas la longueur de l'historique que vous fournissez. Plusieurs séries en un appel coûtent le même prix que des appels séparés et donnent les mêmes valeurs. Chaque moteur annonce son prix par prédiction dans GET /v1/engines ; le moteur par défaut coûte un crédit.
Savoir avant de dépenser
Les bibliothèques calculent le coût sur votre machine, sans rien demander à l'API.
model.estimate_predict(rows) # 12 crédits
spavik.estimate_forecast(serie, horizon=7) # 7 créditsawait model.estimatePredict(rows);
await spavik.estimateForecast(serie, { horizon: 7 });Et chaque réponse facturable indique ce qu'elle a coûté, ainsi que ce qui reste : dans le corps quand la route le rend, et toujours dans l'en-tête X-Spavik-Predictions-Remaining, que les bibliothèques lisent.
r = model.predict(rows)
r.cout # 12
r.solde # 88
spavik.usage()["predictions_remaining"] # le même nombre, à tout moment, gratuitDepuis un agent, predict et forecast acceptent dry_run: true sur le serveur MCP : le même appel n'envoie rien, ne débite rien, et répond avec le coût face à ce qui reste.
Quand le solde est épuisé
L'API répond 402 CREDITS_EXHAUSTED, et l'erreur porte à la fois le solde et le montant qui aurait été nécessaire.
from spavik import SpavikCreditsExhausted
try:
model.predict(rows)
except SpavikCreditsExhausted as exc:
print(exc.balance, exc.required, exc.request_id)Le solde de crédits prend le relais lorsque le volume mensuel inclus dans votre plan est consommé : l'API continue de répondre au lieu de s'arrêter au milieu du mois.
Limite du plan gratuit
Le plan gratuit autorise un seul modèle par compte, tous workspaces confondus. Au-delà, l'API répond QUOTA_MODELS_EXCEEDED et vous invite soit à archiver un modèle dont vous ne vous servez plus, soit à changer de plan.
L'idempotence, pour ne jamais payer deux fois
Les cinq opérations qui modifient quelque chose acceptent un en-tête Idempotency-Key. Rejouer le même appel avec la même clé renvoie la réponse déjà calculée, sans nouveau débit.
Les bibliothèques la posent d'elles-mêmes et la rejouent à l'identique lorsqu' elles réessaient. Une coupure réseau ne se paie donc jamais deux fois.