Gestion des Erreurs
Chatbotaurus implemente une gestion des erreurs a plusieurs niveaux pour garantir la fiabilite du service.
Niveaux d'Erreurs
Transport MCP
Erreurs liees au protocole Streamable HTTP :
| Code | Description | Action |
|---|---|---|
| -32700 | JSON invalide | Retourner erreur parse |
| -32600 | Requete invalide | Retourner erreur validation |
| -32601 | Methode inconnue | Retourner erreur methode |
| -32602 | Parametres invalides | Retourner erreur params |
| -32603 | Erreur interne | Log + retourner erreur generique |
Connecteurs
Erreurs liees aux services externes :
- Timeout : Retry avec backoff exponentiel (max 3 tentatives)
- Authentification : Rafraichir les credentials depuis Vault
- Service indisponible : Marquer le connecteur comme degrade
Inference IA
Erreurs liees aux modeles :
- Hallucination detectee : Validation multi-couches (MultiLayerValidator)
- Timeout modele : Fallback vers modele plus leger (nanbeige4.1:3b)
- OOM : Reduire num_ctx, degradation gracieuse
Degradation Gracieuse
Chatbotaurus implemente 5 niveaux de degradation :
- FULL : Toutes les techniques actives (ToT, MCTS, CoV, Self-Consistency)
- NO_MCTS : Si latence > 10s
- NO_TOT : Si RAM > 22 Go
- NO_SELF_CONSISTENCY : Si CPU > 80%
- TEMPLATE_ONLY : Fallback ultime, reponses basees sur templates
Observabilite
Chaque erreur est tracee avec :
- Timestamp
- Niveau de severite (DEBUG, INFO, WARN, ERROR, CRITICAL)
- Contexte (session MCP, connecteur, outil)
- Metriques de performance (resolveMs, credentialsMs, executeMs)
- Stack trace (en mode developpement uniquement)
Les metriques sont collectees par VictoriaMetrics et les logs par VictoriaLogs.