À propos du projet

PageLedger est une bibliothèque et un outil CLI Python open-source qui offre un suivi auditable au niveau de chaque page pour les traitements OCR et d'extraction de documents. Il s'intercale entre les moteurs d'extraction de texte et d'OCR, enregistrant la provenance, les signaux de qualité, les coûts et l'état de révision pour chaque page traitée. Les fonctionnalités principales incluent : - **Livrets page par page** : Chaque extraction est stockée sous forme de répertoire contenant des fichiers JSON, YAML, Markdown et bruts — inspectables sans base de données ni service actif. - **Adaptateurs intégrés** : Prend en charge nativement les fichiers texte brut, les couches de texte PDF et le moteur Tesseract OCR. D'autres moteurs peuvent être ajoutés via le protocole adaptateur. - **Suivi budgétaire** : Enregistre les comptes de pages, l'usage de jetons, le temps écoulé et les estimations de coût, en distinguant les frais signalés des limites configurées. - **Signaux de qualité** : Attribue des notes de qualité par page et des avertissements pour aider à identifier les pages nécessitant un examen. Il ne s'agit pas de scores de précision, mais d'indicateurs fondés sur des preuves. - **Files de révision et de renvoi** : Les pages signalées peuvent être renvoyées ou conservées pour examen humain. `review-job` enregistre les décisions du réviseur liées au document source. - **Reprises de traitement** : Les exécutions et travaux interrompus conservent les preuves de point de contrôle. Utilisez `pageledger resume` pour vérifier les réponses enregistrées et les réutiliser sans nouvelle extraction. - **Comparaison de runs** : `pageledger compare-runs` permet une analyse côte à côte de différentes tentatives d'extraction sur une même source. - **Enregistrements normalisés** : `align` peut réviser les enregistrements structurés (tableaux, JSON, CSV) par rapport aux colonnes déclarées et aux vérifications arithmétiques sans nouvelle extraction. L'installation nécessite Python 3.10+ et est disponible sur PyPI. L'option facultative `pageledger[pdf]` ajoute le support PDF ; les PDF numérisés nécessitent également Poppler et Tesseract, dont la disponibilité peut être vérifiée avec `pageledger doctor`. L'outil est né d'un projet de numérisation du recensement soviétique et est conçu pour les archives, les historiens et les équipes de recherche ayant besoin de retracer la sortie extraite vers les pages sources et de reconstituer la manière dont les résultats ont été produits. Un rapport de validation de 60 pages documente ce que les vérifications automatisées capturent et où l'examen humain reste nécessaire.