N'importe qui peut lancer un script d'entrainement. La difference entre un dragon dresse et un dragon chanceux, c'est l'evaluation — mesurer, diagnostiquer et iterer comme un ingenieur. C'est la lecon qui transforme ta v1 mediocre en une v3 en laquelle tu as vraiment confiance, et c'est la discipline que la plupart des amateurs sautent.
Les trois niveaux d'evaluation
Niveau 1 — Les courbes de loss (gratuit, automatique). Tu les as deja grace a l'entrainement. Elles te parlent du processus : le modele a-t-il appris, a-t-il surappris ? Elles ne disent rien sur la qualite reelle des reponses.
Niveau 2 — Ton jeu de test (le vrai examen). Tu te souviens de test.jsonl — la tranche que le modele n'a jamais vue ? Passe chaque prompt de test dans le modele entraine et note les sorties par rapport a ta fiche d'objectif de la lecon 2. C'est ta verite terrain.
Niveau 3 — Le modele-juge (le niveau 2 a l'echelle). Fais noter chaque reponse par un modele puissant (Claude, ou ton plus gros modele local) selon une grille. Parfait pour re-noter 30+ reponses a chaque iteration sans y perdre une soiree.
Concept
Note par rapport a ta fiche d'objectif, pas au feeling. La fiche d'Ember dit : structure (reponse → explication → prochaine etape), voix, zero fait invente. La grille, c'est donc trois questions oui/non par reponse. Le score = des comptes, pas des impressions. "Ca a l'air mieux" n'est pas une mesure.Lire les courbes : trois formes classiques
Saine : les deux courbes descendent, la validation legerement au-dessus du train, les deux s'aplatissent. Envoie au jeu de test.
Surapprentissage : la val loss touche le fond puis grimpe pendant que la train continue de baisser. Le dragon memorise. Corrections, par ordre de puissance : plus/de meilleures donnees, moins d'epochs (arrete-toi la ou la val loss etait au plus bas), rank plus bas, LoRA dropout plus eleve.
Sous-entraine : les deux baissent encore quand l'entrainement s'arrete. La correction la plus facile du manuel : entraine plus longtemps, ou monte le learning rate d'un cran.
Le tableau de diagnostic
Les chiffres pointent vers le probleme ; lire les vraies sorties l'identifie. Apres chaque run, lis 10 sorties de test et associe les symptomes :
| Symptome dans les sorties | Cause probable | Correction |
|---|---|---|
| Ignore parfois ton format | Exemples incoherents, ou trop peu | Nettoie les donnees ; ajoute des exemples axes format |
| Recite mot pour mot les reponses d'entrainement | Surapprentissage | Moins d'epochs ; plus de variete de donnees |
| Format superbe, fond faible | Rank trop bas, ou base trop petite | r=16→32 ; envisage une base 8B |
| Invente des faits avec assurance | Pas d'exemples de refus dans les donnees | Ajoute 20–30 demonstrations de refus explicites |
| Pire que la base en discussion generale | Surentraine / oubli catastrophique | Moins d'etapes ; melange 10–20% d'exemples de chat general |
| Change de langue au hasard | Donnees multilingues sans pattern | Rends l'appariement de langue explicite par exemple |
Note honnete
L'oubli catastrophique est reel : martele un modele avec 2 000 tickets de support et il peut devenir pire partout ailleurs. La base gelee de LoRA limite les degats (supprime les adaptateurs et la base est intacte), mais les adaptateurs peuvent quand meme dominer le comportement. Le vaccin standard : garde une petite part de donnees de conversation generale dans le melange.La boucle d'iteration
Ton workflow a partir d'ici est une boucle, et chaque passe prend une soiree, pas une semaine :
- Evalue v_N sur le jeu de test → des scores sur la grille de ta fiche d'objectif
- Lis les 10 pires sorties → choisis le plus gros probleme
- Corrige les donnees d'abord (c'est la cause ~80% du temps), les hyperparametres ensuite
- Re-entraine → v_N+1, re-evalue sur le meme jeu de test → compare les chiffres
- Arrete-toi quand tu atteins le test de succes de ta fiche d'objectif — celui d'Ember etait ≥25/30 structures, 0 fait invente