Firecrawl je otvorio pdf-inspector: PDF u Markdownu u milisekundama, bez OCR-a
Firecrawl, startup iz Y Combinatora koji izrađuje alate za izvlačenje podataka s web stranica, otvorio je izvore pdf-inspectora: Rust biblioteke koja u milisekundi utvrđuje je li tekst pred vama PDF ili skeniran i pretvara tekstualne dokumente u čisti Markdown bez ikakvog OCR-a. Prema procjenama tima, oko 54% PDF-a u stvarnim problemima temelji se na tekstu i jednostavno nema smisla provlačiti ih kroz spor i skup OCR.
Ako ste ikada hranili neuronsku mrežu PDF - ugovorom, izvješćem, knjigom - znate ovaj osjećaj: datoteka kao da se otvara, ali se tekst iz nje ne kopira ili se kopira u kaši. Klasični parseri se ili guše u tablicama ili provlače svaku stranicu kroz OCR, trošeći sekunde i novac. pdf-inspector pogađa upravo ovu boljku: prvo, brzo gleda o kakvoj se datoteci radi i povezuje OCR samo ako se radi o pravom skeniranju.
Prvo klasifikacija, zatim ekstrakcija
U jednom prolazu, biblioteka dodjeljuje PDF jednom od četiri tipa - Text-Based, Scanned, Image-Based ili Mixed - i daje pouzdanost od 0 do 1 plus rutu stranice: koju čitati kao tekst, koju poslati u OCR. Klasifikacija traje 10–50 milisekundi. Zatim, za tekstualne stranice, postoji izdvajanje s koordinatama, fontovima i redoslijedom čitanja, a izlaz je Markdown s naslovima, popisima, tablicama i poveznicama.
Brojke koje su impresivne
Na opendataloader-bench-u od 200 PDF pdf-inspector je rastavio cijeli slučaj u 0,47 sekundi. Za usporedbu: pymupdf4llm - 17 sekundi, markitdown - 16 sekundi. Ujedno je i najkvalitetniji: ukupna ocjena je 0,875 u odnosu na 0,735 za pymupdf4llm i 0,589 za markitdown. Mnogo bolje prepoznaje tablice - 0,814 naspram 0,401 i 0,273.
Što drugo može učiniti?
Izgledi novina s više stupaca, tekst zdesna nalijevo, CID fontovi, otkrivanje pokvarenog kodiranja. Zasebno - selektivni OCR: ako su pojedinačne skenirane stranice zaglavljene u PDF-u, možete pokrenuti samo njih kroz OCR, lokalno, kroz PP-OCRv6 Small, a ne cijeli dokument.
Gdje je caka?
Iskreno: za stvarna skeniranja i fotografije dokumenata, OCR je i dalje potreban, a ovdje pdf-inspektor nije magija - jednostavno ne troši OCR na nešto što ga ne treba. Složeni izgledi, gdje su formule i izgled pomiješani s tekstom, također mogu funkcionirati. A ovo je biblioteka, a ne gotova usluga: da biste je koristili, morate napisati mali kod.

Postoje vezanja za Python, Node.js i WASM temeljen na pregledniku - isti Rust parser radi izravno u pregledniku bez poslužitelja. Repozitorij na GitHubu već je dobio gotovo 17 tisuća zvjezdica. Ako često nosite PDF u neuronskoj mreži, vrijedi ga pogledati.