Ispettore pdf open source Firecrawl: da PDF a Markdown in millisecondi, senza OCR
Firecrawl, la startup Y Combinator nota per i suoi strumenti di web-scraping, ha un pdf-inspector open source, una libreria Rust che capisce in millisecondi se un PDF è basato su testo o su una scansione e trasforma i documenti basati su testo in Markdown pulito senza alcun OCR. Secondo le stime del team, circa il 54% dei PDF nei carichi di lavoro reali sono basati su testo, quindi eseguirli tramite un OCR lento e costoso è inutile.
Se hai mai inserito un PDF in un modello (un contratto, un rapporto, un libro) conosci la sensazione: il file si apre bene, ma il testo non viene copiato o viene copiato come spazzatura. I parser classici soffocano sulle tabelle o spingono ogni pagina attraverso l'OCR, bruciando secondi e denaro. pdf-inspector colpisce esattamente questo punto dolente: controlla rapidamente quale sia il file e ricorre all'OCR solo quando si tratta veramente di una scansione.
Prima classifica, poi estrai
In un unico passaggio la libreria ordina un PDF in uno dei quattro tipi - TextBased, Scanned, ImageBased o Mixed - e restituisce un punteggio di confidenza da 0 a 1 più un percorso per pagina: quali pagine leggere come testo, quali inviare all'OCR. La classificazione richiede 10–50 millisecondi. Per le pagine di testo quindi estrae con coordinate, caratteri e ordine di lettura e genera Markdown con intestazioni, elenchi, tabelle e collegamenti.
Numeri che si distinguono
Sul corpus di 200 PDF di opendataloader-bench, pdf-inspector ha elaborato l'intero set in 0,47 secondi. Per fare un confronto: pymupdf4llm ha impiegato 17 secondi, markitdown 16 secondi. E ha comunque ottenuto il punteggio più alto in termini di qualità: 0,875 in totale contro 0,735 per pymupdf4llm e 0,589 per markitdown. Le tabelle mostrano dove va davvero avanti: 0,814 contro 0,401 e 0,273.
Cos'altro fa
Layout di giornale a più colonne, testo da destra a sinistra, caratteri CID, rilevamento di codifica errata. E OCR selettivo: se un PDF contiene alcune pagine scansionate mescolate, puoi eseguire solo quelle tramite OCR localmente tramite PP-OCRv6 Small, anziché l'intero documento.
Dove non è all'altezza
Onestamente: le scansioni reali e le foto dei documenti necessitano ancora dell'OCR, e pdf-inspector non è magico in questo caso: semplicemente non spreca l'OCR su file che non ne hanno bisogno. Anche layout complessi in cui formule e impaginazione sono mescolati con il testo possono intralciare il tutto. Ed è una libreria, non un servizio già pronto: dovrai scrivere un po' di codice per usarlo.

Esistono collegamenti per Python, Node.js e WebAssembly del browser: lo stesso parser Rust viene eseguito direttamente nel browser senza server. Il repository GitHub ha già superato le 17.000 stelle. Se fornisci regolarmente PDF ai modelli, vale la pena dare un'occhiata.