Vai al contenuto principale

Perché le note rimandano al punto sbagliato dopo la conversione in EPUB?

Dal controllo di ogni pagina con un LLM alla selezione delle pagine sospette tramite JEV: un'evoluzione del trattamento delle note nei libri scansionati.

Linee sottili collegano i richiami di una vecchia pagina alle note, accanto a una pagina riformattata
Illustrazione concettuale: la conversione deve conservare il legame tra i richiami e le note.

Ho sviluppato PDF Craft per trasformare i PDF di libri scansionati in Markdown o EPUB davvero facili da leggere, cercare e organizzare. Riconoscere le parole è solo una parte del lavoro. Un numero, un simbolo cerchiato o un asterisco nel testo deve continuare a indicare la nota giusta in fondo alla pagina originale. Altrimenti il testo si adatta allo schermo, ma perde un legame essenziale.

Questo conta quando si lavora con libri fuori catalogo, fonti accademiche o una raccolta personale. Il risultato dovrebbe essere ricercabile e leggibile su uno schermo piccolo, mantenendo intatti i rimandi. Per controllare un campione, consulta la guida dal PDF scansionato all'EPUB e la lista di controllo per formule e note.

L'OCR riconosce i caratteri, non il loro ruolo

L'OCR trova il testo sulla pagina, ma non sempre sa quale funzione abbia nel libro. Una riga in piccolo in fondo può essere una nota o la fine del testo principale. Un numero cerchiato può richiamare una nota oppure far parte di un elenco. Una nota può essere divisa in due blocchi o proseguire nella pagina successiva.

Basta sbagliare un collegamento per ottenere un EPUB singolare: un richiamo senza destinazione, due note fuse, un numero di pagina nel mezzo di una frase o il finale di una pagina unito all'intestazione della successiva. Le note sono da tempo uno dei problemi più difficili di PDF Craft.

Il primo tentativo: far leggere ogni pagina all'LLM

Circa un anno fa la soluzione sembrava semplice: se un programma tradizionale fatica a capire il significato, si può affidare ogni pagina a un modello linguistico. Spesso riconosceva che il testo piccolo spiegava quello principale, interpretava stelle o numeri romani come richiami e valutava la continuità di una frase tra pagine.

Il risultato sulla singola pagina era promettente, ma un libro lungo richiedeva centinaia di chiamate, attese e possibili tentativi ripetuti. Per decidere sui passaggi di pagina occorreva aggiungere il contesto vicino, aumentando l'input. La maggior parte delle pagine era già corretta: il modello costoso le rileggeva solo per confermare che non servivano modifiche. Per chi aspettava, era difficile capire se l'elaborazione avanzasse o si fosse bloccata.

Prima, un flusso deterministico completo

Le versioni successive hanno riportato il lavoro principale all'OCR e alle regole deterministiche. Il flusso distingue testo e note, riunisce i paragrafi, separa le singole note e abbina ogni richiamo alla sua spiegazione. È rapido, stabile e ripetibile, e funziona bene per la maggior parte delle pagine.

Le impaginazioni però variano molto: note a fondo pagina o tra colonne, richiami numerici o simbolici, intestazioni e numeri di pagina che finiscono nel testo riconosciuto. Alcune scelte richiedono di capire il senso di una frase. Le sole regole lasciano casi difficili; usare un LLM per tutto il libro è troppo lento e costoso.

La svolta: JEV controlla invece di rifare

Il flusso esistente non andava sostituito. Serviva un controllo rapido che individuasse le pagine sospette. A JEV pongo una domanda ristretta: L'analisi di questa pagina può passare senza modifiche? Non riscrive il testo né spiega ogni nota. Restituisce una probabilità usata per decidere se la pagina prosegue o passa all'LLM.

Si controlla l'intera pagina. Se l'algoritmo ha omesso del tutto una nota, verificare solo le note già trovate non la farà comparire. Un giudizio sulla pagina può invece segnalare richiami mancanti, attribuzioni errate, collegamenti anomali tra pagine o numeri di pagina nel corpo. Preferisco far controllare qualche pagina in più piuttosto che lasciar arrivare un errore nell'EPUB: un falso allarme costa una verifica, un errore non visto danneggia il risultato. La soglia richiede ancora una calibrazione più ampia.

flowchart TB
  accTitle: Dal controllo della pagina alla correzione vincolata
  accDescr: OCR e regole elaborano la pagina. JEV decide se può passare invariata. Le pagine sospette vanno all'LLM e poi al controllo di integrità. Le correzioni non valide vengono ripetute.
  A[OCR e regole] --> B{JEV: pagina affidabile?}
  B -- Sì --> F[Capitoli e output]
  B -- No --> C[LLM corregge solo questa pagina]
  C --> D{Controllo di integrità}
  D -- Superato --> F
  D -- Ripetere --> C
Dal controllo della pagina alla correzione vincolata

L'LLM corregge entro limiti precisi

Per una pagina segnalata, l'LLM vede la struttura testuale della pagina precedente, di quella corrente e della successiva, ma può modificare solo quella centrale. Le vicine servono a capire le frasi che attraversano il salto. Non invio le immagini: l'OCR conserva già parole, posizioni e impaginazione; qui occorre una correzione semantica, non un secondo riconoscimento.

Il modello può rietichettare testo, note e numeri di pagina, sistemare la continuità dei paragrafi e riabbinare richiami e note. Non può riscrivere liberamente l'originale o cambiare la struttura della pagina. Il programma verifica poi l'ordine degli indici, la corrispondenza tra richiami e note, la coerenza dei collegamenti fra pagine e la posizione non ambigua di ogni marcatore nel testo. Se qualcosa non torna, restituisce errori specifici e richiede un risultato completo. Ridurre i tentativi non giustifica controlli più deboli.

Cosa ha mostrato un campione di 26 pagine

In un PDF di prova di 26 pagine con molte note, JEV ha selezionato 6 pagine per l'LLM. Tutte e sei le prime risposte hanno superato i controlli di integrità; sono rimaste intatte le 22 relazioni tra richiami e note che erano già corrette.

Le correzioni erano semplici ma importanti: alcuni numeri di pagina erano diventati testo principale; uno collegava falsamente due paragrafi; una frase introduttiva era stata fusa con la citazione rientrata successiva. Il modello ha usato il significato e il rientro per separarle.

È un'osservazione su un solo campione, non una misura generale di precisione o costo. Un buon sistema di correzione conserva ciò che funziona e interviene solo dove ci sono prove del problema.

Usare il giudizio costoso dove serve

Le regole completano gran parte del lavoro, JEV seleziona rapidamente le pagine sospette, l'LLM affronta i pochi casi che richiedono comprensione semantica e i controlli proteggono la struttura finale. Le pagine corrette rientrano nello stesso flusso che assembla capitoli, Markdown ed EPUB.

Restano da provare più lingue, impaginazioni e libri lunghi, soprattutto per misurare gli errori non individuati da JEV e regolare la soglia. Ma non occorre più far leggere ogni pagina a un LLM per trovare pochi difetti ai margini. Se converti un libro tuo, inizia con un breve campione con note nell'area di PDF Craft e controlla richiami, contenuto delle note e paragrafi tra pagine.

Applica la guida ai tuoi documenti

Prova un file rappresentativo, controlla il risultato e scegli il flusso adatto alla tua raccolta.

Apri l’area di lavoro