Specifications des Quotas AI - Optralis¶
Resume¶
Documentation des quotas AI par plan tarifaire avec calcul des couts API Claude Sonnet 4.
1. Tarification API Claude Sonnet 4¶
Prix Anthropic¶
| Type | Prix |
|---|---|
| Input tokens | $3 / 1M tokens |
| Output tokens | $15 / 1M tokens |
Consommation moyenne par analyse¶
Base sur l'analyse des prompts dans ai-service/internal/claude/prompts.go :
| Composant | Tokens estimes |
|---|---|
| System prompt | ~600 |
| User prompt (metriques, logs, SMART data) | ~2,500 |
| Total Input | ~3,100 |
| Output JSON (analyse + recommandations) | ~900 |
| Total Output | ~900 |
Cout unitaire par analyse¶
Input: 3,100 x $3 / 1,000,000 = $0.0093
Output: 900 x $15 / 1,000,000 = $0.0135
-----------------------------------------
TOTAL: $0.0228 (~$0.025 arrondi)
2. Quotas par Plan¶
Tableau recapitulatif¶
| Plan | Prix | Quota/mois | Machines | Cout API | Marge | Premium |
|---|---|---|---|---|---|---|
| Starter | 69 EUR | 150 | 25 | ~3.50 EUR | 95% | Non |
| Essentials | 149 EUR | 300 | 75 | ~7 EUR | 95% | Non |
| Pro | 269 EUR | 1,500 | 150 | ~35 EUR | 87% | Oui |
| Business | 549 EUR | 5,000 | 500 | ~115 EUR | 79% | Oui |
| Enterprise | Devis | 15,000 | Illimite | ~350 EUR | Var. | Oui |
Detail par plan¶
Starter (69 EUR/mois - Cout API ~3.50 EUR)¶
- Quota : 150 analyses/mois
- Machines : 25 maximum
- Ratio : 6 analyses/machine/mois (~0.2/jour)
- Features : Health Score, Tendances (sans priorisation)
- Cible : TPE, petites structures
Essentials (149 EUR/mois - Cout API ~7 EUR)¶
- Quota : 300 analyses/mois
- Machines : 75 maximum
- Ratio : 4 analyses/machine/mois (~0.13/jour)
- Features : Comme Starter
- Cible : PME avec parc modere
Pro (269 EUR/mois - Cout API ~35 EUR)¶
- Quota : 1,500 analyses/mois
- Machines : 150 maximum
- Ratio : 10 analyses/machine/mois (~0.33/jour)
- Features Premium :
- Routines automatiques (scheduler)
- Triggers intelligents
- Analyses predictives (degradation, intermittence)
- Correlation cross-machine
- Generation de rapports PDF
- Cible : ETI, entreprises avec besoins avances
Business (549 EUR/mois - Cout API ~115 EUR)¶
- Quota : 5,000 analyses/mois
- Machines : 500 maximum
- Ratio : 10 analyses/machine/mois (~0.33/jour)
- Features : Toutes les features Pro
- Cible : Grandes entreprises, MSP, infogerants
Enterprise (Sur devis - Cout API ~350 EUR)¶
- Quota : 15,000 analyses/mois
- Machines : Illimite
- Usage typique : Usage intensif + predictif avance
- Features : Toutes les features + configuration AI personnalisee
- Justification : Grands comptes, datacenters
3. Hierarchie des Features¶
Starter/Essentials (Base)
+-- POST /ai/analyze/logs
+-- POST /ai/analyze/anomalies
+-- POST /ai/analyze/full
+-- POST /ai/recommendations
+-- POST /ai/health-score
+-- POST /ai/analyze/trends
+-- POST /ai/scripts/generate
Pro/Business/Enterprise (Premium)
+-- Tout ce qui precede +
+-- POST /ai/analyze/degradation (Priorisation intelligente)
+-- POST /ai/analyze/intermittent (Detection d'intermittence)
+-- POST /ai/correlate (Correlation cross-machine)
+-- POST /ai/predictive/maintenance (Analyse groupee)
+-- Routines automatiques (scheduler)
+-- Triggers sur evenements
+-- Rapports PDF automatiques
Enterprise (Exclusif)
+-- Configuration AI personnalisee (context custom)
+-- Machines critiques/importantes
+-- Retention donnees etendue (365 jours)
4. Fichiers a Modifier (Reference)¶
4.1 Quotas - ai-service/internal/services/quota.go¶
Ligne 112-118, remplacer par :
monthlyLimit := 150 // starter (nouveau: 150 au lieu de 200)
switch licenseType {
case "essentials":
monthlyLimit = 300
case "pro":
monthlyLimit = 1500
case "business":
monthlyLimit = 5000
case "enterprise":
monthlyLimit = 15000
}
4.2 Types de licence - backend/internal/database/database.go¶
Ligne 362-369, ajouter les nouveaux types :
INSERT INTO license_types (name, display_name_fr, display_name_en, default_machines_limit, default_duration_months)
VALUES
('trial', 'Essai', 'Trial', 5, 1),
('starter', 'Starter', 'Starter', 25, 12),
('essentials', 'Essentiels', 'Essentials', 75, 12),
('pro', 'Pro', 'Pro', 150, 12),
('business', 'Business', 'Business', 500, 12),
('enterprise', 'Entreprise', 'Enterprise', 9999, 12)
ON CONFLICT (name) DO UPDATE SET
default_machines_limit = EXCLUDED.default_machines_limit;
4.3 Validation - backend/internal/services/admin.go¶
Ligne 225 :
validTypes := map[string]bool{
"trial": true,
"starter": true,
"essentials": true,
"pro": true,
"business": true,
"enterprise": true,
}
4.4 Features Premium - ai-service/internal/services/license.go¶
Ligne 39, modifier pour inclure Business :
4.5 Scheduler et Triggers¶
Fichiers concernes :
- ai-service/internal/services/scheduler.go (lignes 112, 215, 226, 238)
- backend/internal/services/ai_triggers.go (ligne 382, 506)
- backend/internal/services/ai_routines.go (ligne 441, 487)
Modifier les conditions :
-- Avant
WHERE c.license_type IN ('pro', 'enterprise')
-- Apres
WHERE c.license_type IN ('pro', 'business', 'enterprise')
5. Tarification et Marges¶
Prix de vente valides¶
| Plan | Prix/mois | Cout API | Marge brute | Marge % |
|---|---|---|---|---|
| Starter | 69 EUR | ~3.50 EUR | 65.50 EUR | 95% |
| Essentials | 149 EUR | ~7 EUR | 142 EUR | 95% |
| Pro | 269 EUR | ~35 EUR | 234 EUR | 87% |
| Business | 549 EUR | ~115 EUR | 434 EUR | 79% |
| Enterprise | Sur devis | ~350 EUR | Variable | Variable |
Conversion : 1$ = 0.92 EUR
Analyse de rentabilite¶
Toutes les marges sont excellentes : - Starter, Essentials : Marge ~95% - tres rentable - Pro : Marge 87% - tres rentable - Business : Marge 79% - rentable
Progression tarifaire coherente : - Starter -> Essentials : +116% (69 EUR -> 149 EUR) - Essentials -> Pro : +81% (149 EUR -> 269 EUR) - Pro -> Business : +104% (269 EUR -> 549 EUR) - Business -> Enterprise : Sur devis
Notes importantes¶
-
Couts variables : Les couts API dependent de l'usage reel. Un client utilisant 50% de son quota = 50% du cout estime.
-
Analyses complexes : Les analyses de rapports PDF ou predictives consomment plus de tokens (~2x une analyse standard).
-
Cache : Le systeme de cache (30min TTL) reduit les appels API redondants.
-
Cooldown : Le systeme de cooldown empeche les analyses en rafale sur une meme machine.
6. Migration¶
Clients existants¶
Pour les clients actuels avec les anciens plans :
| Ancien plan | Ancien quota | Nouveau plan suggere | Nouveau quota |
|---|---|---|---|
| starter | 200 | starter | 150 (ajuster si necessaire) |
| pro | 1500 | pro | 1500 (inchange) |
| enterprise | 10000 | enterprise | 15000 (bonus) |
Script de migration SQL¶
-- Ajouter les nouveaux types de licence
INSERT INTO license_types (name, display_name_fr, display_name_en, default_machines_limit)
VALUES
('essentials', 'Essentiels', 'Essentials', 75),
('business', 'Business', 'Business', 500)
ON CONFLICT (name) DO NOTHING;
-- Mettre a jour les limites existantes
UPDATE license_types SET default_machines_limit = 25 WHERE name = 'starter';
UPDATE license_types SET default_machines_limit = 150 WHERE name = 'pro';
-- Mettre a jour les quotas AI existants (optionnel)
UPDATE ai_quotas aq
SET monthly_limit = CASE
WHEN c.license_type = 'starter' THEN 150
WHEN c.license_type = 'essentials' THEN 300
WHEN c.license_type = 'pro' THEN 1500
WHEN c.license_type = 'business' THEN 5000
WHEN c.license_type = 'enterprise' THEN 15000
ELSE 150
END
FROM clients c
WHERE aq.client_id = c.id;
7. Monitoring des couts¶
Metriques a suivre¶
- Usage mensuel par client :
SELECT client_id, used_this_month FROM ai_quotas - Tokens consommes : Logs du client Claude (
TokensInput,TokensOutput) - Cout reel :
(input_tokens x $3 + output_tokens x $15) / 1,000,000
Alertes suggerees¶
- Client a 80% de son quota -> Notification
- Client a 100% de son quota -> Bloquer + proposition upgrade
- Cout API depassant marge prevue -> Alerte admin