Spaces:
Sleeping
Sleeping
File size: 1,849 Bytes
53f68d5 f3772fd 2e9e564 f3772fd 2e9e564 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 | """Cercle 2 — Evaluation.
Vues d'évaluation, projecteurs et calculs de métriques.
Le cœur de la valeur ajoutée Picarones : **comparer librement des
pipelines hétérogènes en projetant leurs sorties vers une vue
d'évaluation explicite**. L'utilisateur ne compare jamais directement
un OCR brut et une sortie ALTO reconstruite — il compare leur
projection dans une vue commune (texte, ALTO, recherchabilité, etc.)
et le rapport explicite ce que la vue ignore.
Sous-packages :
- ``views/`` — ``TextView``, ``AltoView``, ``SearchView``, ...
- ``projectors/`` — ``AltoToText``, ``PageToText``, ``CanonicalToText``,
qui transforment un type d'artefact vers un autre avec un
``ProjectionReport`` listant les pertes (lossiness explicite).
- ``metrics/`` — calculs purs : CER/WER, MUFI, philological,
statistics, NER, etc. Une métrique = ``(input_types, output_types,
callable)``.
- ``registry/`` — registre typé construit explicitement par un
service au démarrage (pas par effet de bord d'import).
Règles d'import : ce cercle dépend de ``domain/`` uniquement. Pas
de fastapi, pas de jinja, pas de moteur OCR. Il peut utiliser
``numpy`` et ``scipy`` pour les calculs statistiques.
Voir ``docs/roadmap/rewrite-2026.md`` pour le rôle des vues dans le
rewrite ciblé (Sprints S13-S18).
"""
from __future__ import annotations
from picarones.evaluation._diff_utils import (
compute_char_diff,
compute_word_diff,
diff_stats,
)
from picarones.evaluation.evaluation_engine import (
EvaluationEngine,
EvaluationResult,
)
from picarones.evaluation.projection_engine import (
ProjectionEngine,
ProjectionResult,
)
__all__ = [
"EvaluationEngine",
"EvaluationResult",
"ProjectionEngine",
"ProjectionResult",
"compute_char_diff",
"compute_word_diff",
"diff_stats",
]
|