eagle3-validate

Par nvidia · model-optimizer

Valide qu'une exécution du pipeline EAGLE3 s'est terminée avec succès de bout en bout. Vérifie que les 4 étapes ont produit les artefacts attendus, s'assure que le taux d'acceptation atteint le seuil requis (>= 2,1) et génère un rapport de synthèse. À utiliser lorsque l'utilisateur souhaite vérifier une exécution du pipeline ou consulter les résultats de benchmark.

npx skills add https://github.com/nvidia/model-optimizer --skill eagle3-validate

Validation du pipeline EAGLE3

Vérifier qu'une exécution du pipeline EAGLE3 s'est déroulée correctement et répond aux critères de qualité.

Step 0 — Identifier l'expérience

Trouver le répertoire d'expérience le plus récent (ou demander le chemin à l'utilisateur) :

ls -td experiments/cicd/cicd_* | head -5

Chaque répertoire d'expérience contient un sous-répertoire par task (numérotés 0–3), chacun contenant un fichier log dont le nom varie selon le mode de lancement (Slurm : sbatch_*.out, Docker local : *.log).

Step 1 — Vérifier les résultats des tasks

Parcourir les fichiers log en général et lire la fin de chacun :

find experiments/<exp_id>/ -type f \( -name '*.out' -o -name '*.log' \) | sort | while read -r f; do
  echo "=== $f ==="; tail -50 "$f"; echo
done

Les 4 tasks doivent se terminer sans erreur. Chercher :

  • exit code: 0 ou pas d'erreur — succès
  • DUE TO TIME LIMIT — timeout
  • FAILED / signal / exception traceback — échec

Si une task a échoué, suggérer d'exécuter /eagle3-triage à la place.

Step 2 — Vérifier l'existence des artefacts

Vérifier que chaque étape a produit la sortie attendue (les artefacts se trouvent sur le cluster à /scratchspace/). Confirmer via les messages de log :

Étape Preuve attendue dans le log Artefact
task_0 « Saved N samples » ou barre de progression complète /scratchspace/data/*.jsonl
task_1 « Successfully processed N conversations » /scratchspace/offline_hidden_states/*.pt
task_2 Perte d'entraînement décroissante, « export complete » /scratchspace/eagle3/model.safetensors, /scratchspace/export/
task_3 Average Acceptance Length ... ratio: X.XX Fichiers résultats JSON

Step 3 — Vérifier le taux d'acceptation

Dans le log de task_3, trouver :

Average Acceptance Length {'accept': X, 'count': Y, 'ratio': Z.ZZ}

Le champ ratio est le taux d'acceptation (AR).

Critère Seuil Statut
AR (MT-Bench) >= 2.1 PASS / FAIL

Si le log affiche AR ... < lower bound, l'exécution a déjà déclenché un échec de seuil (exit code 1).

Step 4 — Vérifier la qualité de l'entraînement

Dans le log de task_2, chercher :

  • Perte d'entraînement finale — doit être décroissante, pas NaN
  • Validation AR pendant l'entraînement (si training.ar_validate_steps était défini)
  • Nombre d'étapes d'entraînement — confirme la durée complète de l'entraînement

Step 5 — Produire un rapport de validation

## Rapport de validation du pipeline EAGLE3

**Expérience :** <exp_dir>
**Modèle :** <model_name>
**Date :** <date>
**Config du pipeline :** <yaml_path>

### Statut des étapes
| Étape | Task | Statut | Notes |
|-------|------|--------|-------|
| 0 | Synthèse de données | PASS/FAIL/TIMEOUT | N samples générés |
| 1 | Dump d'états cachés | PASS/FAIL | N fichiers .pt |
| 2 | Entraînement + export | PASS/FAIL | Perte finale : X.XX |
| 3 | Benchmark | PASS/FAIL | AR : X.XX |

### Taux d'acceptation
- AR MT-Bench : X.XX (seuil : >= 2.1) — PASS/FAIL

### Résumé de l'entraînement
- Perte finale : X.XX
- Étapes d'entraînement : N
- AR pendant l'entraînement : X.XX (si validé)

### Résultat global : PASS / FAIL
<résumé d'une ligne>

Step 6 — Suggérer les prochaines étapes

Si PASS :

  • Enregistrer le résultat vérifié (et le chemin du checkpoint) dans le suivi de triage interne de l'équipe
  • Ce modèle est maintenant candidat pour être ajouté comme exemple de launcher dans une PR dédiée

Si FAIL :

  • Identifier quelle étape ou métrique a échoué
  • Suggérer d'exécuter /eagle3-triage pour diagnostiquer
  • Pour un AR faible, diagnostiquer la cause spécifique à partir de l'exécution (courbe de perte d'entraînement, volume/qualité des données, capacité draft-head, hyperparamètres) et suggérer des corrections ciblées sur ce scénario — un AR faible peut avoir de nombreuses causes, donc éviter une checklist générique.

Skills similaires