Back to deblo
deblo

Observabilité : tracer chaque appel LLM en production

AILog trace chaque appel LLM. SystemSetting permet la configuration sans redéploiement. ExerciseResult mesure l'apprentissage. Le tableau de bord admin derrière la route masquée.

Thales & Claude | March 30, 2026 3 min deblo
EN/ FR/ ES
debloobservabilitéailogadminmonitoringsuivi-coûts

On ne peut pas améliorer ce qu'on ne peut pas mesurer. C'est vrai pour tout produit logiciel, mais c'est particulièrement vrai pour les produits IA où le comportement principal -- ce que le modèle dit, combien de temps il prend, combien il coûte -- est fondamentalement non déterministe.

Nous journalisons tout. Chaque appel API LLM. Chaque invocation d'outil. Chaque mouvement de crédit. Chaque résultat d'exercice. Chaque action admin.

Le modèle AILog

Au centre de notre système d'observabilité se trouve la table AILog. Elle enregistre chaque appel API LLM via OpenRouter : model_used, has_images, input_tokens, output_tokens, response_time_ms et error.

Pour un seul message utilisateur qui déclenche 3 itérations d'outils (boucle agentique), nous créons 3 entrées AILog -- une par appel LLM. Cette granularité nous permet d'analyser le comportement par itération.

Le tableau de bord admin

Le tableau de bord admin à /admin-7f3a9c2d/ fournit une vue en temps réel de la santé de la plateforme : nouveaux utilisateurs et utilisateurs actifs, répartition élève/professionnel, conversations et messages totaux, revenus, répartition par classe et matière, sessions vocales. Le hash dans l'URL (7f3a9c2d) rend l'URL admin indevinable.

Configuration dynamique : SystemSetting

Un store clé-valeur simple avec des valeurs encodées en JSON qui nous permet de changer le comportement de la plateforme sans déployer de code :

  • root_prompt : le prompt système pour le mode élève
  • llm_model : le nom du modèle pour les conversations texte
  • credit_costs : les coûts en crédits par action
  • maintenance_mode : un booléen qui retourne une page de maintenance

ExerciseResult : analytique d'apprentissage

Pour une plateforme éducative, la métrique la plus importante n'est pas la latence ou le coût -- c'est si les élèves apprennent. Le modèle ExerciseResult suit les résultats individuels de quiz : matière, classe, difficulté, sujet et si la réponse était correcte.

Le CreditLedger comme piste d'audit

Chaque mouvement de crédit est journalisé dans le CreditLedger. Ce n'est pas juste du suivi financier -- c'est une piste d'audit complète de l'économie de la plateforme.

Suivi des coûts

La métrique d'observabilité la plus critique pour un produit IA est le coût. La table AILog nous permet de calculer les coûts exacts par modèle, par jour, et de repérer les anomalies immédiatement.

Nous n'utilisons pas d'outil de suivi de coûts dédié comme Helicone ou Langfuse. À notre échelle actuelle, la table AILog et de simples agrégations SQL nous donnent tout ce dont nous avons besoin.

Ce que nous surveillons quotidiennement

Chaque matin : nouveaux utilisateurs, conversations actives, revenus, coûts LLM, taux d'erreur et latence. L'observabilité pour les produits IA est fondamentalement différente de celle des logiciels traditionnels : le comportement est stochastique, donc il faut une journalisation plus granulaire et plus de revue humaine.

Nous avons construit cette observabilité dès le premier jour. La table AILog était l'un des premiers modèles créés, avant même d'avoir une interface de chat fonctionnelle. Parce que sans observabilité, construire avec des LLM signifie brûler de l'argent et dégrader la qualité sans même le savoir.


Ceci est l'article 20 de 20 dans la série « Comment nous avons construit Deblo.ai ». Merci de nous avoir suivis.

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles