Chargement du modèle : pourcentage visible ; interface allégée

La pastille « chargement… » restait identique de longues minutes sur un
gros GGUF — indiscernable d'un plantage. llama-server n'expose aucun
progrès, mais charger c'est LIRE le fichier : on rapporte les octets lus
par le process (/proc/<pid>/io, shards compris) à la taille du modèle et
la pastille affiche « chargement 43 % » (rafraîchie toutes les 5 s,
plafonnée à 99 — c'est /health qui dit prêt).

Carte Moteur : bouton « vérifier la version » retiré — « mettre à jour »
fait sa propre vérification et dit s'il n'y a rien de neuf.

Éditeur de preset : en conteneur, l'option de moteur « Personnalisé »
disparaît (rien à compiler dans l'image, la mise à jour passe par la
carte Moteur) ; un BIN non reconnu retombe sur le moteur de l'image.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
MichaelandClaude Opus 5 committed 2026-08-18 23:19:21 +02:00
1 parent 34218fae52
commit 7ef2c956c5
7 files changed
+125 -8

No files matched your search

+8
View File
@@ -41,8 +41,15 @@ func handleStatus(w http.ResponseWriter, r *http.Request) {
// doit être signalée clairement plutôt que de laisser un « chargement… »
// perpétuel / un crash-loop muet.
loadErr := ""
loadPct := -1
if !health {
loadErr = modelLoadError()
// Modèle en cours de chargement (service actif, pas d'échec relevé) :
// pourcentage estimé par les octets lus du .gguf (sys_loadpct_linux.go),
// pour que « chargement… » bouge au lieu de laisser croire à un plantage.
if active && loadErr == "" {
loadPct = engineLoadPct()
}
}
// Alerte de persistance : /data non monté en conteneur = données perdues à
// la prochaine recréation. Même bandeau que les autres avertissements.
@@ -63,6 +70,7 @@ func handleStatus(w http.ResponseWriter, r *http.Request) {
"version": Version,
"warn": warn, // App Translocation macOS, /data non monté… — vide si tout va bien
"load_error": loadErr, // modèle qui ne charge pas (incompat moteur…) — vide sinon
"load_pct": loadPct, // % estimé du chargement en cours (-1 = non mesurable)
})
}