Surveillance du modele local : le brouillon avait un angle mort
Le paquet propose par la session Airtria portait trois entites — interrupteur d alertes, RAM disponible, libelle d etat. Il lui manquait celle sans laquelle les trois autres mentent : un horodatage ecrit a chaque passage. Sans lui, un moniteur mort est indiscernable d un systeme sain. Les trois entites gardent leur derniere valeur, qui dit « tout va bien », indefiniment. C est exactement l incident du 08/09 sur la prevision solaire, ou 4 h 45 de panne n ont laisse aucune trace. Et on ne peut PAS deduire la fraicheur du last_updated des autres entites : Home Assistant ne rafraichit pas l horodatage d un helper reecrit a l identique — une RAM stable une heure produirait la meme illusion. Ajoutes : l horodatage, le modele charge, un capteur d age, et deux alarmes — moniteur muet, RAM sous le seuil ou earlyoom tue le plus gourmand. Defaut trouve et corrige apres creation : l alarme RAM se declenchait avant que le moniteur ait tourne une seule fois, une valeur jamais ecrite valant zero. Une mesure qu on n a pas recue n est pas une mesure basse. Elle est desormais conditionnee a la fraicheur. Tableau separe des tableaux energie : ce qu il montre n a aucun rapport avec le photovoltaique. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GwpFpy2aQ2rJok6tNQSbVj
This commit is contained in:
90
dashboards/llm_monitor.yaml
Executable file
90
dashboards/llm_monitor.yaml
Executable file
@@ -0,0 +1,90 @@
|
||||
# Surveillance du modele local sur la Spark.
|
||||
#
|
||||
# Tableau volontairement SEPARE des tableaux energie : ce qu'il montre n'a aucun
|
||||
# rapport avec le photovoltaique, et les melanger rendrait les deux moins
|
||||
# lisibles.
|
||||
#
|
||||
# Rempli par un moniteur externe (cron toutes les 2 min sur 10.10.10.17). Tant
|
||||
# qu'il n'a pas tourne, la carte le DIT au lieu d'afficher des zeros rassurants.
|
||||
|
||||
title: Modèle local
|
||||
views:
|
||||
- title: Spark
|
||||
path: spark
|
||||
icon: mdi:robot-outline
|
||||
cards:
|
||||
|
||||
- type: conditional
|
||||
conditions:
|
||||
- entity: binary_sensor.llm_monitor_muet
|
||||
state: "on"
|
||||
card:
|
||||
type: markdown
|
||||
content: >
|
||||
## ⚠️ Le moniteur ne parle plus
|
||||
|
||||
|
||||
Aucune nouvelle depuis
|
||||
{{ states('sensor.llm_monitor_age_du_dernier_passage') }} minutes,
|
||||
alors qu'il devrait passer toutes les 2 minutes.
|
||||
|
||||
|
||||
**Les valeurs ci-dessous sont donc périmées** — elles montrent le
|
||||
dernier état connu, pas l'état actuel. Un moniteur mort affiche les
|
||||
mêmes chiffres rassurants qu'un système sain : c'est cette carte,
|
||||
et elle seule, qui fait la différence.
|
||||
|
||||
- type: entities
|
||||
title: Le modèle
|
||||
state_color: true
|
||||
entities:
|
||||
- entity: input_text.llm_monitor_status
|
||||
name: État
|
||||
- entity: input_text.llm_monitor_model
|
||||
name: Modèle chargé
|
||||
- entity: input_datetime.llm_monitor_last_seen
|
||||
name: Dernière vérification
|
||||
- entity: sensor.llm_monitor_age_du_dernier_passage
|
||||
name: Âge de cette vérification
|
||||
- type: divider
|
||||
- entity: binary_sensor.llm_monitor_muet
|
||||
name: Moniteur muet
|
||||
|
||||
- type: entities
|
||||
title: Mémoire de la Spark
|
||||
state_color: true
|
||||
entities:
|
||||
- entity: input_number.llm_mem_avail_pct
|
||||
name: RAM disponible
|
||||
- entity: binary_sensor.spark_ram_critique
|
||||
name: RAM critique
|
||||
footer:
|
||||
type: graph
|
||||
entity: input_number.llm_mem_avail_pct
|
||||
hours_to_show: 24
|
||||
detail: 2
|
||||
|
||||
- type: entities
|
||||
title: Alertes
|
||||
entities:
|
||||
- entity: input_boolean.llm_monitor_enabled
|
||||
name: Alertes WhatsApp
|
||||
|
||||
- type: markdown
|
||||
content: >
|
||||
**Comment lire cette carte**
|
||||
|
||||
|
||||
`RAM critique` ne se déclenche que si le moniteur a donné de ses
|
||||
nouvelles récemment. Une valeur jamais reçue vaut zéro, et zéro n'est
|
||||
pas une mesure basse — c'est une absence de mesure. C'est
|
||||
`Moniteur muet` qui le dit, et lui seul.
|
||||
|
||||
|
||||
Le seuil de RAM est à 8 %. En dessous, `earlyoom` tue le processus le
|
||||
plus gourmand de la machine, et sur la Spark le plus gourmand est le
|
||||
modèle lui-même.
|
||||
|
||||
|
||||
L'interrupteur ne coupe que les **alertes WhatsApp**. Le moniteur
|
||||
continue de mesurer et cette carte reste à jour.
|
||||
Reference in New Issue
Block a user