Το Firecrawl άνοιξε το pdf-inspector: PDF σε Markdown σε χιλιοστά του δευτερολέπτου, χωρίς OCR
Το Firecrawl, μια startup από το Y Combinator που φτιάχνει εργαλεία για την εξαγωγή δεδομένων από ιστότοπους, άνοιξε τις πηγές του pdf-inspector: μια βιβλιοθήκη Rust που σε χιλιοστά του δευτερολέπτου καθορίζει εάν το κείμενο που έχετε μπροστά σας είναι PDF ή σάρωση και μετατρέπει τα έγγραφα κειμένου σε καθαρό Markdown χωρίς καθόλου OCR. Σύμφωνα με τις εκτιμήσεις της ομάδας, περίπου το 54% των PDF σε πραγματικά προβλήματα βασίζεται σε κείμενο και απλά δεν έχει νόημα να τα εκτελέσεις μέσω του αργού και ακριβού OCR.
Εάν έχετε τροφοδοτήσει ποτέ ένα νευρωνικό δίκτυο PDF - ένα συμβόλαιο, μια αναφορά, ένα βιβλίο - γνωρίζετε αυτό το συναίσθημα: το αρχείο φαίνεται να ανοίγει, αλλά το κείμενο από αυτό δεν αντιγράφεται ή αντιγράφεται σε χυλό. Οι κλασικοί αναλυτές είτε πνίγονται σε τραπέζια είτε τρέχουν κάθε σελίδα μέσω OCR, χάνοντας δευτερόλεπτα και χρήματα. Το pdf-inspector χτυπά ακριβώς αυτό τον πόνο: πρώτον, εξετάζει γρήγορα τι είδους αρχείο είναι και συνδέει το OCR μόνο εάν πρόκειται για πραγματική σάρωση.
Πρώτα ταξινόμηση, μετά εξαγωγή
Με ένα πέρασμα, η βιβλιοθήκη εκχωρεί το PDF σε έναν από τους τέσσερις τύπους - TextBased, Scanned, ImageBased ή Mixed - και δίνει μια σιγουριά από το 0 έως το 1 συν μια διαδρομή σελίδας: ποια να διαβαστεί ως κείμενο, η οποία να σταλεί στο OCR. Η ταξινόμηση διαρκεί 10-50 χιλιοστά του δευτερολέπτου. Στη συνέχεια, για τις σελίδες κειμένου, υπάρχει εξαγωγή με συντεταγμένες, γραμματοσειρές και σειρά ανάγνωσης και η έξοδος είναι Markdown με επικεφαλίδες, λίστες, πίνακες και συνδέσμους.
Νούμερα που είναι εντυπωσιακά
Στον πάγκο opendataloader από 200 PDF, ο επιθεωρητής pdf αποσυναρμολόγησε ολόκληρη τη θήκη σε 0,47 δευτερόλεπτα. Για σύγκριση: pymupdf4llm - 17 δευτερόλεπτα, markitdown - 16 δευτερόλεπτα. Ταυτόχρονα, είναι το υψηλότερο σε ποιότητα: η συνολική βαθμολογία είναι 0,875 έναντι 0,735 για το pymupdf4llm και 0,589 για το markitdown. Αναγνωρίζει πολύ καλύτερα τους πίνακες - 0,814 έναντι 0,401 και 0,273.
Τι άλλο μπορεί να κάνει;
Διατάξεις εφημερίδων με πολλές στήλες, κείμενο από δεξιά προς τα αριστερά, γραμματοσειρές CID, εντοπισμός σπασμένων κωδικών. Ξεχωριστά - επιλεκτική OCR: εάν μεμονωμένες σαρωμένες σελίδες έχουν κολλήσει σε PDF, μπορείτε να τις εκτελέσετε μόνο μέσω OCR, τοπικά, μέσω του PP-OCRv6 Small και όχι ολόκληρου του εγγράφου.
Πού είναι το αλιεύμα;
Ειλικρινά: για πραγματικές σαρώσεις και φωτογραφίες εγγράφων, απαιτείται ακόμα OCR και εδώ ο επιθεωρητής pdf δεν είναι μαγικός - απλώς δεν ξοδεύει OCR σε κάτι που δεν το χρειάζεται. Οι σύνθετες διατάξεις, όπου οι τύποι και η διάταξη αναμειγνύονται με κείμενο, μπορούν επίσης να λειτουργήσουν. Και αυτή είναι μια βιβλιοθήκη, όχι μια έτοιμη υπηρεσία: για να τη χρησιμοποιήσετε, πρέπει να γράψετε λίγο κώδικα.

Υπάρχουν δεσμεύσεις για Python, Node.js και WASM που βασίζεται σε πρόγραμμα περιήγησης - ο ίδιος αναλυτής Rust λειτουργεί απευθείας στο πρόγραμμα περιήγησης χωρίς διακομιστή. Το αποθετήριο στο GitHub έχει ήδη κερδίσει σχεδόν 17 χιλιάδες αστέρια. Εάν μεταφέρετε συχνά PDF σε ένα νευρωνικό δίκτυο, αξίζει να το δείτε.