Refactoring de l'import Transkribus
Le workflow actuel pour importer depuis Transkribus est de démarrer arkindex_tasks.import_transkribus, qui se charge seulement de lister les pages, de télécharger les images et les XML, de créer les éléments de page et d'envoyer directement les XML au backend.
Le backend a un endpoint ImportPageXmlTranscriptions qui reçoit un document au format PAGE XML et crée des transcriptions de type Paragraph pour les TextRegion, de type Line pour les TextLine, puis effectue le parsing d'entités assez complexe et spécifique à Balsac.
Moult bugs et améliorations ont été suggérées pour cet import et sont ralentis par cet endpoint difficilement modifiable par exemple par Marie-Laurence ou adaptable à tout projet autre que Balsac :
- https://trello.com/c/9bNDOLnh/856-simplification-des-polygones-transkribus
- https://trello.com/c/28MC1R9Q/1341-%C3%A9tendre-le-support-de-limport-transkribus
- https://trello.com/c/75BdhCBa/1139-import-transkribus-sont-import%C3%A9es-toutes-les-versions-de-la-transcription-dune-page
- https://trello.com/c/RWDv6icq/1692-modifier-limport-transcribus-pour-cr%C3%A9er-des-%C3%A9l%C3%A9ments-import-horae
- https://trello.com/c/4hfZ0Xjh/
On notera aussi d'autres détails comme le fait que nous ne travaillions qu'avec une version de 2013 du standard alors que la version 2019 apporte beaucoup de détails intéressants, par exemple au niveau des entités, et qu'on ne supporte qu'une petite partie du standard.
Tous les endpoints nécessaires semblent présents, et une accélération pourrait même être observée avec l'utilisation de l'endpoint de bulk transcriptions par rapport au mode d'insertion actuel. L'ajout des entités risque cependant d'être lent, et la complexité des algorithmes rendra probablement la migration de cette partie bien plus longue.
Imported from Trello