Picarones / docs /reference /comparing-views.md
Claude
docs: refonte Diataxis + 8 documents institutionnels (S60)
d0a3fab unverified

Lire les 3 vues canoniques ensemble

Sprint A14-S16 livre la troisième vue canonique du rewrite ciblé : SearchView. Avec TextView (S14) et AltoView (S15), on a maintenant trois lentilles complémentaires pour évaluer un même pipeline.

Le tableau des 3 vues

Vue Question Métriques Direction
TextView (S14) Quel pipeline produit le meilleur texte final ? CER, WER, MER, WIL lower_is_better (erreurs)
AltoView (S15) Quel pipeline produit le meilleur ALTO exploitable ? alto_validity, line_count_ratio, word_box_coverage higher_is_better (qualité)
SearchView (S16) Quel pipeline maximise la recherchabilité plein-texte ? searchability_recall, numerical_sequence_preservation higher_is_better (rappel)

Aucune des trois vues ne dit toute la vérité sur un pipeline. Ensemble, elles racontent l'histoire complète.

Pourquoi les trois vues sont nécessaires

Un même pipeline peut être excellent dans une vue et médiocre dans une autre. C'est précisément ce qui rend la comparaison hétérogène utile pour la BnF — un seul score (CER global) masquerait des informations critiques.

Pattern 1 : CER excellent, recherchabilité numérique catastrophique

Démontré dans le test tests/evaluation/test_sprint_a14_s16_views_consistency.py::TestDivergencePattern::test_year_corruption_invisible_to_cer_visible_to_search :

  • GT : "Charte signée à Paris le 14 juillet 1789 en présence du roi"
  • Hypothèse : "Charte signée à Paris le 14 juillet 1798 en présence du roi"

Le LLM de post-correction a "amélioré" la date (1789 → 1798). Conséquences :

Vue Métrique Valeur Lecture
TextView CER ~0.03 Excellent (3 chars sur 58)
TextView WER ~0.09 Très bon (1 mot sur 11)
SearchView searchability_recall ~0.91 Bon (1798 fuzzy match 1789)
SearchView numerical_sequence_preservation 0.0 Catastrophique

Pour un historien qui veut indexer ses chartes par date, ce pipeline est inutilisable — l'année 1789 est silencieusement réécrite en 1798. Le CER ne le révèle pas. SearchView le révèle.

Pattern 2 : Texte parfait, ALTO inexistant

Un OCR Tesseract qui ne produit que du texte brut :

Vue Statut Lecture
TextView CER = 0.0 Pipeline parfait pour la lecture
SearchView recall = 1.0 Pipeline parfait pour l'indexation
AltoView OMIS Pipeline non éligible

Pour un workflow IIIF / Mirador qui veut surligner les mots dans l'image, ce pipeline est inutilisable — pas de coordonnées. AltoView ne lui attribue pas un score factice à 0 ; le rapport affiche "Tesseract texte brut n'est pas évalué dans AltoView (ne produit pas d'ALTO)".

Pattern 3 : ALTO valide mais texte hallucinant

Un VLM avec module ALTO_reconstruction peut produire un ALTO structurellement parfait (validity=1, lignes correctes, coordonnées présentes) mais avec du texte inventé :

Vue Métrique Valeur Lecture
AltoView tous 1.0 Pipeline parfait structurellement
TextView CER élevé Pipeline mauvais textuellement
SearchView recall bas Pipeline inutile pour la recherche

AltoView seul ferait passer ce VLM pour le meilleur pipeline. Lire les trois vues ensemble révèle le vrai problème.

Recommandation de lecture pour le rapport BnF

Le rapport HTML (S22) présentera les 3 vues côte-à-côte avec cette grille de lecture :

  1. Tableau de synthèse : un tableau par vue, chaque ligne = un pipeline, chaque colonne = une métrique. Les pipelines omis sont indiqués explicitement (pas de valeur factice).

  2. Encart "divergences notables" : signale automatiquement les pipelines dont le rang change fortement entre vues (par exemple "rang 1 en TextView, rang 5 en SearchView"). C'est un signal pour l'utilisateur d'aller regarder en détail ce qui se passe.

  3. Pour chaque vue : warnings explicites de ce qu'elle n'évalue pas (cf. ignored_dimensions dans chaque ViewResult). L'utilisateur ne peut pas conclure "TextView dit que X est le meilleur" sans avoir vu ce que TextView.ignored_dimensions ne dit PAS.

Critères de choix selon l'usage

Usage cible Vue principale Vues secondaires
Lecture humaine (édition critique) TextView AltoView (si édition diplomatique)
Indexation Elastic / Solr / Gallica SearchView TextView
Réinjection IIIF / Mirador (mots cliquables) AltoView TextView
Citation académique TextView + SearchView AltoView
Reproduction d'un fac-similé AltoView TextView

Statut

  • ✅ Sprint S14 — TextView
  • ✅ Sprint S15 — AltoView
  • ✅ Sprint S16 — SearchView + cohérence inter-vues
  • ⏳ Sprint S17 — intégration runner + RunManifest
  • ⏳ Sprint S18 — tests E2E sur le cas BnF central