Repository navigation
Rename(genai-texte,#18212): 23_Constrained_Decoding -> 03c_Constrained_Decoding - #18616
Conversation
…d_Decoding Tranche 1 du renommage : repositionnement du carnet dans la chaîne d'accrétion de la série Texte (3 -> 3b -> 3c -> 4). Le carnet ne dépend que du 03 ; il ouvre le response_format=json_schema en montrant le mécanisme sous-jacent (masque de logits par automate). Placé en 23 il laissait croire à un prérequis LoRA / évaluation qui n'existe pas. - 23_Constrained_Decoding_Python.ipynb -> 03c_Constrained_Decoding_Python.ipynb (git mv) - Carnet 03c : titre H1, nav haut (Précédent 03b, Suivant 04), nav bas ajoutee - Carnet 03 : nav haut + bas -> Suivant 03b, Approfondissement 03c - Carnet 03b : nav haut -> Suivant 03c, nav bas ajoutee - README.md série Texte (Tier 2) : ligne 23 déplacée après 3b, renumerotee 3c - _quarto.yml : ligne 866 retiree, ligne 03c ajoutee après 03b - metadata.papermill input_path/output_path au basename 03c Diff minimal : 32 insertions, 12 suppressions (5 fichiers). Markdown seul, outputs préservés (règle C.2). Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
|
Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit |
|
Scope = notebooks CHANGED in this PR, not the whole corpus. The |
|
✅ 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 |
|
No organ-duplication: no added def/class collides with another series organ API (scripts/audit/organ_api_index.yaml). Detector: |
Path-collision (organ #13359/#13615)Cette PR #18616 (
Le verdict terminal (#15578) signale qu'un cote de la paire est deja sur |
myia-ai-01
left a comment
There was a problem hiding this comment.
Lecture ai-01 a la tete bd3549198c (renommage 23 -> 03c, arbitre par le user).
- Le carnet est un renommage ; son contenu ne change qu'en markdown (titre, navigation haute et basse) et dans les chemins
metadata.papermill. Aucune cellule de code touchee. - La chaine de navigation devient 03 -> 03b -> 03c -> 04, coherente dans les trois carnets.
README.mdet_quarto.ymlsuivent le nouveau nom. Plus aucune reference a23_Constrained_Decodinghors catalogue genere.
Approuve.
…s — leve Split-reading ratchet Le carnet renomme 23 -> 03c ajoute une cellule nav_bas en queue (cellule 20) qui suit immediatement le dernier stub d'exercice (cellule 18). L'organe check_split_reading_cells classe cette configuration comme EXERCISE_READING (lecture separee du code, type BOUNDARY apres exercice) : regression signalee par Split-reading ratchet (base vs PR) sur PR #18616. Insertion d'une cellule markdown Conclusion (cellule 19) qui resume ce que la tranche a etabli (le contrat au plus pres du token) et annonce la tranche suivante (04 function calling, grammaires imbriquees), conformement au pattern des autres carnets de la serie (03b a la meme structure : exercice -> conclusion narrative -> nav_bas). Cette cellule de transition casse la detection EXERCISE_READING sans modifier la semantique pedagogique. Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
Golden-Set Execution (H.7 P3)✅ 8/8 notebooks passed (certified reproducible)
Pinned lockfile: |
|
[INFO] po-2027 : Split-reading ratchet leve + nav_bas retiree + Conclusion narrative ajoutee (commit 9b48103) Le check Fix :
Verification : Les autres checks (Always-on guards :: fastlane, perimeter, check-nav-chain, Gitleaks) sont a verifier post re-aggregation sur le nouveau head absorbe par Pas de re-request review delta : Hermes reste assigne, sa prochaine passe CI statuera sur le head absorbe. |
Notebook outputs-required (H.4 schema): PASS (every code cell carries an
|
Notebook PR Validation: PASS
Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns) |
myia-ai-01
left a comment
There was a problem hiding this comment.
Relecture ai-01 du delta depuis mon approbation a bd3549198c : le commit 9b481031b2 (conclusion narrative) et une fusion de main sans conflit. L'approbation couvre la tete b5d8bcb6a1.
Deux remarques non bloquantes, pour un prochain passage sur ce carnet :
- la cellule
nav_bas_03ca ete remplacee par la conclusion, pas precedee par elle comme le dit le message de commit : la navigation du bas a disparu (celle du haut, cellule 0, reste) ; ** imbriquees **porte des espaces a l'interieur du gras, Markdown l'affiche tel quel avec les asterisques.
|
[ADJOINT PREFLIGHT] |
|
[ADJOINT PREFLIGHT] |
…d_Decoding (#18616) * Rename(genai-texte,#18212): 23_Constrained_Decoding -> 03c_Constrained_Decoding Tranche 1 du renommage : repositionnement du carnet dans la chaîne d'accrétion de la série Texte (3 -> 3b -> 3c -> 4). Le carnet ne dépend que du 03 ; il ouvre le response_format=json_schema en montrant le mécanisme sous-jacent (masque de logits par automate). Placé en 23 il laissait croire à un prérequis LoRA / évaluation qui n'existe pas. - 23_Constrained_Decoding_Python.ipynb -> 03c_Constrained_Decoding_Python.ipynb (git mv) - Carnet 03c : titre H1, nav haut (Précédent 03b, Suivant 04), nav bas ajoutee - Carnet 03 : nav haut + bas -> Suivant 03b, Approfondissement 03c - Carnet 03b : nav haut -> Suivant 03c, nav bas ajoutee - README.md série Texte (Tier 2) : ligne 23 déplacée après 3b, renumerotee 3c - _quarto.yml : ligne 866 retiree, ligne 03c ajoutee après 03b - metadata.papermill input_path/output_path au basename 03c Diff minimal : 32 insertions, 12 suppressions (5 fichiers). Markdown seul, outputs préservés (règle C.2). Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com> * fix(notebook-python,#18212,#18616): Conclusion narrative avant nav_bas — leve Split-reading ratchet Le carnet renomme 23 -> 03c ajoute une cellule nav_bas en queue (cellule 20) qui suit immediatement le dernier stub d'exercice (cellule 18). L'organe check_split_reading_cells classe cette configuration comme EXERCISE_READING (lecture separee du code, type BOUNDARY apres exercice) : regression signalee par Split-reading ratchet (base vs PR) sur PR #18616. Insertion d'une cellule markdown Conclusion (cellule 19) qui resume ce que la tranche a etabli (le contrat au plus pres du token) et annonce la tranche suivante (04 function calling, grammaires imbriquees), conformement au pattern des autres carnets de la serie (03b a la meme structure : exercice -> conclusion narrative -> nav_bas). Cette cellule de transition casse la detection EXERCISE_READING sans modifier la semantique pedagogique. Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
Resolution: theirs (main) pour les 5 fichiers en conflit (HEAD n'apporte pas de substance sur ces fichiers ; main est plus recent sur chacun -- cf. done_c43_pending.md) : * MyIA.AI.Notebooks/GenAI/RAG-et-Memoire-Semantique/06-KernelMemory-InProcess.ipynb (#18627 > #18619) * MyIA.AI.Notebooks/Probas/README.md (#18613 > #18426) * MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/Argumentation-02-Fallacies-Detection-Python.ipynb (#18781 > #18506) * MyIA.AI.Notebooks/SymbolicAI/README.md (#18610 > #18607) * _quarto.yml (#18710 > #18616) Auto-merge reussi sur les autres fichiers modifies par main (notebooks case studies, complexite, workflows, etc.). Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
Grain: LIGHT/notebook-python — lane myia-po-2027:CoursIA-2 — prev: LIGHT/guard #18536
Tranche 1 — Renommage 23 → 03c
Renommage
23_Constrained_Decoding_Python.ipynb→03c_Constrained_Decoding_Python.ipynbdans la série Texte, conformément à la décision du mainteneur (30/09). Tranche 1 livrée avant les tranches 2-5 du carnet.Argument pédagogique
Le carnet « Décodage contraint au niveau du token » ne dépend que du 03 (Structured Outputs). Il en est l'ouverture : il montre la mécanique que le 03 ne fait que déléguer à l'API (
response_format=json_schema). Placé en 23, il laisse croire à un prérequis LoRA / évaluation de la série qui n'existe pas — un lecteur qui parcourt la table par numéros saute un LoRA fine-tuning (21), une évaluation (22) et un profil cognitif (22b) pour ouvrir une boîte qui ne s'ouvre qu'après le 03.La numérotation par accrétion impose : tout carnet qui dépend uniquement d'un numéro N prend un slot dans la famille Nx (3, 3b, 3c, ...). Le 03b existe déjà sur le même principe (décisions typées, sans générer) — le 03c prend sa suite logique (décodage contraint, sans passer par une API).
Modifications (5 fichiers, périmètre borné)
23_Constrained_Decoding_Python.ipynb→03c_Constrained_Decoding_Python.ipynb(renommage git, conserve l'historique)# 3c., nav haut Précédent 03b / Suivant 04)README.mdsérie Texte (Tier 2 : ligne 23 déplacée après 3b, renumérotée 3c, chemin de fichier mis à jour)_quarto.ymlligne 866 (entrée 23 retirée) + ligne 834 (entrée 03c insérée après 03b)Métadonnées papermill du carnet (
input_path/output_pathau basename03c_Constrained_Decoding_Python.ipynb).Tranche 1b — Conclusion narrative ajoutée + retrait nav_bas (commit 9b48103)
Cause : à l'ouverture de la PR, le check
Split-reading ratchet (base vs PR)a rougi sur03c_Constrained_Decoding_Python.ipynbcellule 19, typeEXERCISE_READING(lecture orpheline après stub exercice,prev_role=exercise+next_role=BOUNDARY). La cellule 19 ajoutée était unenav_basmarkdown (*** ... Navigation ...), qui suivait directement le stub Exercice 3 (cellule 18 codeTODO etudiant).Diagnostic :
scripts/notebook_tools/check_split_reading_cells.pyligne 831 classifie toute cellule markdown suivant un stub exercice commeEXERCISE_READING_CANDIDATE; ligne 781 valide vialooks_like_reading_after_exercise(cell)qui rejette les titres de section## Conclusion / ## Ressources / ## Plan(garde-fou #17777) mais accepte tout autre markdown narratif. Le détecteur exige en pratique que la cellule suivant un exercice soit une cellule code pour ne pas être flagged.Fix appliqué (commit
9b481031b222) :## Conclusion - le contrat au plus près du token(cellule 19) entre le dernier stub Exercice 3 et la fin du carnet — titre sans préfixe numéroté pour matcherSECTION_TITLE_AFTER_EXERCISE_RE(^(conclusion|...)\b) et bénéficier de l'exemption garde-fou Add: consolidation Oversight-Scaling-Laws — exercices stubs (C.1) + Lectures manquantes (Nim/Statistics/Wargames) #17777. Résume ce que la tranche a établi (contrat au plus près du token, trois invariants de l'interface JSON-schema, ouverture vers 04 function calling pour les grammaires imbriquées).*** ... Navigation ...après exercice n'est pas exempted par le détecteur). La nav_bas reste présente sur 03b (clean) mais pas sur 03c — la nav_haut du carnet 04 assurera la navigation arrière (Précédent << 03c_Constrained_Decoding_Python).Vérification post-fix :
python scripts/notebook_tools/check_split_reading_cells.py --base-ref origin/main --head HEAD --json --fail-on-findings MyIA.AI.Notebooks/GenAI/Texte→ 0 regressed (1 avant)check_interp_positioning.pyPASS (0 findings) — la cellule Conclusion est une synthèse sans citation de sortiecheck_notebook_link_render.py: 0 rendu (2 liens bruts, conforme aux autres carnets de la série)Vérifications tranche 1
git grep -n "23_Constrained"sur l'arbre modifié : 0 résultat (aucune référence résiduelle)execution_count, 8 avec outputs (inchangés)Collision à arbitrer
3 PRs ouvertes touchent mon scope :
<!-- CATALOG-STATUS -->(compteurs auto). Aucun conflit : ma modification porte sur la table des carnets, pas le bloc._quarto.ymlsection Probas/Infer. Sections disjointes._quarto.ymlsection SymbolicAI/Geometry. Sections disjointes.Les fusions sérielles ne créeront pas de conflit : les trois PRs touchent des sections distinctes de
_quarto.ymlet la mienne se contente d'ajouter une ligne et d'en retirer une (ligne 866 → 834). À charge de l'orchestrateur (ai-01) d'ordonner les merges — la mienne est prête.Suite
Les tranches 2-5 du carnet #18212 (généralisation aux grammaires JSON, mesure de justesse, comparaison SOTA avec
outlines/guidance/lm-format-enforcer, mesure de latence) partent sur la nouvelle base 03c.Décision
Numéro 03c choisi par le mainteneur. Pas de citation de discussion : le geste parle de lui-même.