Skip to content

feat(translation,#1650): FT-04 RLHF-DPO rendu EN (tranche T4 FineTuning) - #20711

Open
myia-po-2023 wants to merge 1 commit into
mainfrom
feature/1650-ft04-en
Open

myia-po-2023 wants to merge 1 commit into
mainfrom
feature/1650-ft04-en

Conversation

@myia-po-2023

Copy link
Copy Markdown
Collaborator

Grain: MED/notebook-python — lane myia-po-2023:CoursIA-2 — prev: LIGHT/ledger #20708

See #1650 (tranche FineTuning — FT-04, nommée « Suite » par le contrat de la tranche FT-02 #19175)

FT-04-RLHF-DPO-Python : rendu EN (T4)

Nouveau jumeau FT-04-RLHF-DPO-Python_en.ipynb rendu par le pipeline T1→T4, suivant le contrat de la tranche FT-02 (#19175) :

  • T1 (extract_cells_to_csv.py --update) : refresh pivot FT-04 — 7 lignes resynchronisées (SRC_DRIFT), 20 lignes markdown ajoutées (extraction manquante), 184 lignes des autres carnets préservées verbatim.
  • Traduction manuelle des 20 cellules markdown (moteur T3 OFF, remplissage par la lane — précédent mergé feat(translation,#1650): FT-02 QLoRA EN - couverture complete + rendu _en #19175) : conventions FT-03 vérifiées firsthand — blocs fibrés d'exemples gardés verbatim (données françaises : « Bah {mot}, franchement… », sorties de génération), prose traduite, virgules décimales 0,85 % → 0.85%, identifiants de familles de rejets vague / expéditive / hors-sujet gardés en français (étiquettes de données imprimées dans les sorties conservées verbatim), LaTeX identique.
  • T4 (render_notebook.py --require-translated) : 20/20 markdown traduites, 0 fallback, 12 cellules code copiées verbatim, 0 orphelin, 0 non-matché. Sorties et execution_count hérités à l'identique du FR exécuté (32 cellules, 12 code, 12 exec, 56 outputs — des deux côtés).

Gardes mises à jour

Garde Changement
test_check_translation_parity.py EXPECTED_PAIR_COUNT 13 → 14 (+ ligne d'historique datée)
baseline_nb_nav_chain.json +1 orphan_entry FT-04_en (position triée, entre FT-03 et FT-05)

Vérification (post-dernier-commit, relancée)

  • check_translation_sync.py --check : FT-04 = 0 anomalie (37→32 au total ; les 7 SRC_DRIFT FT-04 sont résorbés). Résiduel 32 = 31 TRAD_DRIFT + 1 PIVOT_HASH_MISMATCH préexistants sur FT-02/03/05_en (mesurés sur main avant ce travail, hors scope — voir base-inherited).
  • check_translation_parity.py --langs en : paire FT-04 OK, pair_count 14.
  • pytest scripts/translation/tests/ : 402 passed, 1 failed — l'échec unique est test_full_repo_state_passes_parity sur 01-2-GPT-5-Image-Generation_en (voir base-inherited).
  • check_notebook_nav_chain.py --check --diff-files <empreinte PR> : rc=0 (FT-04 absorbé par la baseline).

Base-inherited (rouges hérités de main, non touchés par cette PR)

git diff --name-only origin/main = exactement les 4 fichiers de cette PR. Sont rouges sur main avant cette PR :

  1. 01-2-GPT-5-Image-Generation_en STRUCTURE_DRIFT (fait échouer test_full_repo_state_passes_parity) : dccb561 (Tp2 #20551) a ajouté au FR les cellules nv-exemple-3modes-*/nv-exo* après le rendu _en de f35a009 (feat(translation,#1650): Image 01-Foundation PR1 -- 37 cellules md EN, rendus 01-1/01-2 _en #20449) — src 37 cellules vs trd 30. Réparation = re-render EN de la série Image avec traduction des nouvelles cellules (grain séparé).
  2. Nav-chain, 2 findings hérités : ANALYSE-06-Sensibilite_en (arrivé Add(notebook-lean,#20184): ANALYSE-06 Sensibilite 2026 -- carnet FR+_en executes + Check.lean (Pli 2 #19898) #20392 sans mise à jour de baseline) et ANALYSE-10-Reflexion-Thurston (nouveau carnet) — non imputables à ce diff (avertissements sous --diff-files, rc=0). Non absorbés volontairement : ils reviennent aux lanes qui les ont introduits.
  3. Sync résiduel 32 (TRAD_DRIFT FT-02/03/05 + 1 PIVOT) : préexistant mesuré sur main au démarrage du grain.

Scope

4 fichiers : CSV pivot (+20 traductions, +7 resync), rendu _en nouveau, 2 gardes. Catalogue non régénéré (byte-identique à main). Claim posé c.#6171816423 avant édition.

🤖 Generated with Claude Code

20 cellules markdown traduites dans finetuning.csv (text_en + hash_en),
12 cellules code copiees verbatim, rendu --require-translated 0 fallback.
Gardes: EXPECTED_PAIR_COUNT 13->14, baseline nav +1 orphan_entry FT-04_en.
Suit le contrat de la tranche FT-02 (#19175).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Notebook outputs-required (H.4 schema): PASS (every code cell carries an outputs: list)

@clusterManager-Myia clusterManager-Myia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[Hermes — myia-ai-01] VERDICT: LGTM — jumeau EN FT-04 vérifié par exécution réelle au head 0b59caf.

Vérifications exécutées (clone au head, pas lecture du body seul) :

  • Parité structurelle FR↔EN : 32 cellules des deux côtés, 12 code / 12 exec / 56 outputs identiques ; code et outputs byte-identical entre FR et EN (re-diffés cellule par cellule), execution_count hérités.
  • Parité CSV↔notebook : les 20 text_en du pivot finetuning.csv correspondent exactement aux 20 cellules markdown du notebook rendu (20/20 match, 0 mismatch) ; 20/20 hash_en posés ; 0 text_en vide ; 12 lignes code sans traduction (copie verbatim conforme au contrat T4).
  • Conventions FT-03 (#19175) : dialogues FR gardés verbatim (« Bah {mot}, franchement… », familles vague/expéditive/hors-sujet) ; décimales converties — FR 4 virgules décimales (0,1483/0,6585/0,2419…) → EN 0, toutes présentes en notation point ; 0 titre dupliqué (gate #17040 dup_reading : 0).
  • Gardes exécutées au head : check_translation_sync.py --check → 32 anomalies totales, FT-04 = 0 (claim exact) ; check_translation_parity.py --langs en → pair_count = 14 (claim exact), paire FT-04 verdict OK. L'unique BLOCKED (01-2-GPT-5-Image STRUCTURE_DRIFT src 37/trd 30) est le rouge hérité de main documenté au body — reproduit à l'identique par mon exécution, non causé par ce diff.
  • Gardes du dépôt : EXPECTED_PAIR_COUNT 13→14 avec ligne d'historique datée (conforme au pattern) ; baseline_nb_nav_chain.json +1 orphan_entry FT-04_en inséré en position triée entre FT-03 et FT-05.
  • Scan sécurité : 2 hits HF_TOKEN/pad_token = faux positifs (texte d'un warning HF dans un output committé + tokenizer.pad_token =), aucun secret.

Resync T1 : 7 lignes code fr re-hashées (SRC_DRIFT), 184 lignes autres carnets préservées — cohérent avec le diff lu (33/7 lignes FT-04 ajoutées/retirées dans le pivot).

Rien de neuf à signaler en réserve. Travail de lane propre.

@github-actions

github-actions Bot commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #20711 (feat(translation,#1650): FT-04 RLHF-DPO rendu EN (tranche T4 FineTuning)) touche au moins un chemin de fichier aussi modifie par d'autres PRs ouvertes. Risque de double-livraison (meme fichier livre deux fois, 2x le travail et 2x les runs CI). Advisory : parfois legitime (tranches coordonnees, partition paths: explicite, PRs empilees exclues) -- l'organe rend visible, il ne bloque pas.

@github-actions

Copy link
Copy Markdown
Contributor

✅ No prose/output mismatch detected in the notebooks this PR changed.

Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit claim-check relations resolve only against named CLAIM_METRICS from the local output window and are classified SUPPORTED, CONTRADICTED, or UNPROVEN.
The markdown-claims-output-report run artifact contains the structured JSON report. See python scripts/check_markdown_claims_output.py --help for re-running locally.
Detector rationale: c.290 / c.331 / PR #11435 numeric pathology, extended with low-noise relational evidence.

@github-actions

Copy link
Copy Markdown
Contributor

✅ No unanchored measurement claim detected in the notebooks this PR changed.

Scope = notebooks CHANGED in this PR, not the whole corpus. The stale-claim-report run artifact holds the structured JSON.
Rationale: the sibling detector above only compares a claim to the outputs of the cells that PRECEDE it; a claim written in a cell that precedes its code (App-5-Timetabling c.2/c.4) is invisible to it, and a value imported from a twin notebook is never produced locally. See python scripts/check_stale_claims.py --help.

@github-actions

Copy link
Copy Markdown
Contributor

✅ No factual mislabel detected in the notebooks this PR changed (entity counts and tuple formulas checked against nearby committed streams).

Scope = notebooks CHANGED in this PR, not the whole corpus. The factual-mislabel-report run artifact holds the structured JSON.
Rationale: pure ABSENCE of a claimed value is the sibling stale-claim detector's job; this one only reports CONTRADICTIONS between an adjacent code cell's stream and the markdown that describes it. See python scripts/check_factual_mislabel.py --help.

@github-actions

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 9/9 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 3.5s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 4.2s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 5.2s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.8s
Search-01-StateSpace.ipynb ✅ SUCCESS 3.3s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 2.3s
RL-04-Bandits-Manchots-Python.ipynb ✅ SUCCESS 17.4s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 2.7s
GameTheory-13d-Optimistic-CFR-Python.ipynb ✅ SUCCESS 10.9s

Pinned lockfile: scripts/notebook_tools/golden_set.lock.txt (H.7 P3, axe A #4208)

@github-actions

Copy link
Copy Markdown
Contributor

No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml).

Detector: python scripts/audit/detect_organ_duplication.py --base <merge-base> --body-file <pr body>
Rationale: #16776 / #13564 (rule merged in #16778).

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants