Si vous affinez un modèle plusieurs fois de suite, une question finit toujours par arriver : est-ce que je viens de casser quelque chose ? Le réflexe est de poser la même question avant et après, de lire les deux réponses, et de conclure. Nous avons mesuré ce que vaut ce réflexe. Il ne vaut rien, et nous pouvons dire de combien.
Sur notre banc, deux réponses du même modèle, au même prompt, avec deux graines différentes, peuvent être quasi orthogonales : cosinus de similarité descendant à 0,079. Un observateur qui comparerait ces deux sorties conclurait à une dérive majeure. Il n'y en a aucune : c'est le même modèle, les mêmes poids, la même machine.
Ce billet documente le protocole que nous avons construit pour distinguer le signal du bruit, dans le cadre de Verdandi, notre chantier de recherche sur un modèle qui réécrit ses propres poids. Le problème dépasse largement ce cas : il se pose à quiconque enchaîne des fine-tunes et veut savoir ce qu'il a perdu en chemin.
Verdandi explore une idée simple à énoncer et désagréable à valider : un modèle qui consolide ses poids pendant la nuit, à partir de ce qu'il a vécu dans la journée. La thèse est publique, l'architecture reste à l'atelier. Mais la question de validation, elle, est universelle.
Si les poids bougent tout seuls, comment savoir que c'est encore la même entité au réveil ? Il faut un test qui échoue quand l'identité se perd, et qui ne se déclenche pas quand rien d'anormal ne s'est produit. Un test qui crie au loup une nuit sur trois ne serait pas un garde-fou, juste un bruit qu'on finirait par ignorer.
Nous avons donc construit une batterie d'identité de 250 items, découpée en trois familles :
Avant de mesurer une dérive, il faut prouver que la mesure elle-même ne dérive pas. Deux exécutions complètes de la batterie en décodage glouton, 250 items chacune, ont produit des sorties identiques au byte près, zéro divergence.
C'est le prérequis que l'on saute trop souvent. Sans lui, chaque écart observé se discute : est-ce le modèle qui a changé, ou la machine ? Avec lui, les deux familles déterministes deviennent des instruments de précision, et tout écart y est du signal.
Leurs valeurs de départ : 95,00 % en connaissance (190 sur 200) et 90,00 % en normatif (45 sur 50). Ce second chiffre inclut trois vraies complaisances du modèle de base, que nous avons laissées dans le score. Ce n'est pas un point de départ flatteur, c'est le point de départ réel.
Le style, lui, exige un décodage par échantillonnage. Impossible de le figer sans transformer le modèle en machine à répéter. Et c'est là que la mesure naïve s'effondre.
Sur 20 prompts tirés avec 10 graines, le bruit d'un échantillon à l'autre est massif. La longueur moyenne de phrase varie de 38,7 % d'une graine à l'autre. La densité de ponctuation de 17,9 %. Et côté sémantique, le cosinus moyen entre deux sorties d'un même prompt tombe à 0,688, avec ce plancher à 0,079 qui rend la comparaison directe absurde.
Un seuil posé sur des sorties uniques se serait donc déclenché au hasard. C'était le piège dans lequel nous allions tomber.
La solution ne demande pas plus de calcul, seulement de regarder la même donnée autrement. Nous avons coupé les 10 graines en deux moitiés indépendantes de 5, puis comparé les agrégats de chaque moitié. Cela mesure exactement ce qu'un garde-fou verrait entre deux nuits sans aucune dérive réelle.
| Métrique | Bruit par échantillon | Après agrégation 5 contre 5 |
|---|---|---|
| Longueur moyenne de phrase | 38,7 % | 0,67 % |
| Densité de ponctuation | 17,9 % | 1,17 % |
| Nombre de mots | 14,0 % | 2,46 % |
| Nombre de caractères | 12,6 % | 1,75 % |
| Richesse lexicale | 8,3 % | 0,52 % |
Côté sémantique, le même geste transforme tout : le cosinus entre les centroïdes des deux moitiés vaut 0,912 en moyenne, avec un plancher à 0,825. Le plancher est passé de 0,079 à 0,825.
Cinq graines suffisent donc. C'est le résultat qui rend le reste possible : on peut placer un seuil nettement au-dessus de 2,5 % de bruit et savoir qu'un déclenchement signifie quelque chose.
Un détail mérite d'être noté pour qui refera l'exercice : les prompts les moins stables sont les genres ouverts en français, explication, opinion, réflexion, avec un plancher à 0,825. Les plus stables sont des prompts anglais de description, jusqu'à 0,969. Une dérive qui n'apparaîtrait que sur les prompts français ouverts serait donc suspecte avant d'être alarmante.
Mesurer que l'identité est préservée ne suffit pas. Un modèle dont le taux d'apprentissage serait nul passerait ce test à la perfection, chaque nuit, indéfiniment. Il n'aurait rien appris, rien oublié, et le garde-fou afficherait vert.
Le test doit donc être double : identité préservée et acquisition démontrée. Les deux volets, ou aucun.
C'est là que nous en sommes, et c'est la limite honnête de ce billet : le volet identité est calibré, le volet acquisition ne l'est pas. Il exige un corpus d'épisodes de nuit qui n'existe pas encore. Tant qu'il manque, aucun cycle n'a tourné, et nous ne prétendons rien sur ce qu'un modèle autoévolutif produirait. Ce que nous publions ici, c'est l'instrument, pas le résultat.
Un passage complet de batterie prend environ 2 h 20 sur une A40 : 13 minutes pour les deux familles déterministes en double exécution, et 124 minutes pour le style. La raison est que le décodage glouton tourne à 49 tokens par seconde là où l'échantillonnage plafonne autour de 10.
Nous avons cru tenir l'explication : le tri complet du vocabulaire à chaque token. Une version avec un tri borné a été écrite, mesurée, puis rejetée sur deux critères. Le gain était de 1,15×, dérisoire. Et surtout les sorties n'étaient plus identiques, ce qui aurait invalidé le baseline que tout le reste utilise comme référence.
Le vrai goulot était ailleurs : à chaque token, l'échantillonnage rapatrie 65 536 flottants du GPU vers le processeur, là où le décodage glouton fait son calcul sur le GPU. L'hypothèse était donc fausse deux fois. Nous sommes revenus à l'implémentation qui a produit le baseline, avec un commentaire d'avertissement pour que personne ne retente le même nettoyage.
C'est un résultat négatif sans intérêt commercial, et il est ici pour la même raison que les autres : un résultat sans ses échecs est une publicité, pas un résultat.
La batterie, le harnais de mesure et les sorties brutes vivent dans le dépôt de Verdandi, qui n'est pas encore public : la publication suivra la fin de la phase en cours, quand la batterie sera figée. En attendant, nous partageons volontiers le protocole et le rapport de variance sur demande, écrivez-nous.
Le reste de nos travaux est public et vérifiable dès maintenant, à commencer par le banc d'essai du tool-calling et sa suite. Notre méthode de mesure, et la liste de ce qui a raté, sont sur la page Preuves.
Verdandi est un chantier de recherche de Scarlet Wolf, distinct de l'assistant Gungnir qui, lui, tourne en production. La thèse est publique, l'architecture reste à l'atelier.