Moteur : encart « version recommandée », retour à la version précédente, garde du rendu du raisonnement

Le lot 1 savait dire qu'un moteur officiel antérieur à b10864 évince trop tôt
les points de reprise des hybrides, mais laissait l'utilisateur chercher seul
quelle version prendre. Le panneau Moteur propose maintenant la version
recommandée, sur clic seulement, et garde un chemin de retour sans réseau.

La mise à jour elle-même n'est pas neutre pour le prompt : depuis b10763,
llama-server active preserve_reasoning par défaut, et un gabarit qui retirait
la réflexion des tours passés (Qwen3.6, clear_thinking) la rend alors — vide,
puisque Loki ne la renvoie pas sans REASONING_ECHO. Avant la bascule, Loki lit
le gabarit chargé et le verdict de la sonde ; si le rendu va changer, la
confirmation le dit et propose REASONING_PRESERVE=off (case cochée seulement
quand c'est établi : sur Qwen3.8, off changerait à son tour le rendu).
L'utilisateur choisit. Après la bascule, le rendu de conversations
synthétiques est comparé via /apply-template entre l'ancien et le nouveau
moteur, et le premier écart est signalé.

- encart sans réseau (build de confiance < b10864) : gains cités (points de
  reprise, MTP rapide b11009, MTP qwen4exp b11331), SPEC reste off
- POST /api/engine/plan, sur clic : dernier build publié, vérifié ≥ b10864 et
  tag figé existant ; sans réseau, une erreur et rien d'installé
- POST /api/engine/rollback + fichier engine/previous-bin : la version quittée
  (gardée par le ménage du lot 1) ; le retour la rend « précédente » à son tour
- REASONING_PRESERVE=off posée dans le preset actif, seulement si le nouveau
  moteur connaît --no-reasoning-preserve et que la clé est vide
- comparaison du rendu en tâche de fond, après chargement et changement de
  build_info (un ancien moteur survivant ne fausse pas le verdict)
- aucune clé nouvelle ; rien au démarrage ; aucune mise à jour sans clic

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
MichaelandClaude Opus 5.5 committed 2026-10-04 15:12:19 +02:00
1 parent 911ffbfeaf
commit c24472b91f
12 files changed
+1343 -34

No files matched your search

+34
View File
@@ -927,6 +927,40 @@ courant n'est pas touché. Le moteur livré par l'image reste par ailleurs intac
Quand cette limite est atteinte pour de bon (CUDA majeur trop ancien), la
solution reste le rebuild avec un `LLAMACPP_IMAGE` récent, ci-dessus.
**Version recommandée.** Quand le moteur officiel qui tourne est antérieur à
`b10864`, le panneau affiche un encart qui dit ce que la mise à jour apporte :
les points de reprise des modèles hybrides (Qwen3.5/3.6, Qwen3-Next) ne sont plus
évincés trop tôt — jusqu'à ~8 k jetons recalculés à chaque reprise —, le MTP
rapide (graphes CUDA) arrive à `b11009` et le MTP de qwen4exp à `b11331`. Le
décodage spéculatif reste coupé tant que `SPEC` n'est pas posé. L'encart se
décide sans réseau, sur le build du moteur (jamais pour un llama.cpp compilé ou
un fork, dont le numéro ne prouve rien). Le bouton **Mettre à jour vers la
version recommandée** n'interroge le registre qu'au clic : il prend le dernier
build publié, vérifie qu'il atteint `b10864` et que son tag figé
(`server-cuda-bNNNNN`) existe bien, puis demande confirmation. Sans réseau, il
le dit et n'installe rien. Rien n'est jamais mis à jour d'office, ni au
démarrage.
**Revenir à la version précédente.** Après une mise à jour, la version
téléchargée qui tournait juste avant est gardée (les plus anciennes partent,
~450 Mo chacune) ; le bouton **Revenir à la version précédente** y ramène sans
réseau, et la version quittée devient à son tour « la précédente ».
**Le rendu du raisonnement.** Depuis `b10763`, llama-server garde par défaut la
réflexion des tours passés dans le gabarit (`preserve_reasoning`). Un gabarit
qui la retirait de lui-même (Qwen3.6, gabarits à `clear_thinking`) la rend alors
— vide, puisque Loki ne la renvoie pas sans `REASONING_ECHO` : le modèle
relirait un historique où il n'a jamais réfléchi. Avant de basculer vers un tel
moteur, Loki lit le gabarit chargé et le verdict de la sonde de gabarit ; si le
prompt rendu va changer et que `REASONING_PRESERVE` n'est pas posé, la
confirmation l'explique et propose de poser `REASONING_PRESERVE=off` dans le
preset actif (case cochée seulement quand le changement est établi :
sur un gabarit qui garde déjà la réflexion, comme Qwen3.8, `off` changerait à
son tour le rendu). L'utilisateur choisit. Après la bascule, le rendu de
quelques conversations synthétiques est comparé, via `/apply-template`, entre
l'ancien et le nouveau moteur une fois le modèle chargé : le panneau dit s'il
est identique, ou montre le premier écart.
Derrière un miroir de registre ou un réseau qui n'atteint pas ghcr.io :
`LOKI_OCI_REGISTRY=https://mon-miroir.interne` dans l'environnement du conteneur.