← Все статьи

Firecrawl sumber terbuka pdf-inspektor: PDF ke Markdown dalam milisaat, tiada OCR

Firecrawl sumber terbuka pdf-inspektor: PDF ke Markdown dalam milisaat, tiada OCR

Firecrawl, permulaan Y Combinator yang terkenal dengan alat pengikis webnya, mempunyai pdf-inspektor sumber terbuka — perpustakaan Rust yang mengetahui dalam milisaat sama ada PDF adalah berasaskan teks atau imbasan, dan menukar dokumen berasaskan teks menjadi Markdown bersih tanpa sebarang OCR. Mengikut anggaran pasukan, kira-kira 54% daripada PDF dalam beban kerja sebenar adalah berasaskan teks, jadi menjalankannya melalui OCR yang perlahan dan mahal adalah sia-sia.

Jika anda pernah memberi PDF kepada model — kontrak, laporan, buku — anda tahu perasaannya: fail dibuka dengan baik, tetapi teks tidak akan disalin atau disalin sebagai sampah. Penghurai klasik sama ada tercekik pada jadual atau menolak setiap halaman melalui OCR, membakar saat dan wang. pdf-inspector tepat pada titik kesakitan itu: ia menyemak dengan cepat apakah fail itu, dan hanya mencapai OCR apabila ia benar-benar imbasan.

Kelaskan dahulu, ekstrak kedua

Dalam satu pas, perpustakaan mengisih PDF kepada salah satu daripada empat jenis — TextBased, Scanned, ImageBased atau Mixed — dan mengembalikan skor keyakinan daripada 0 hingga 1 serta laluan setiap halaman: halaman yang hendak dibaca sebagai teks, yang akan dihantar ke OCR. Pengelasan mengambil masa 10–50 milisaat. Untuk halaman teks ia kemudian mengekstrak dengan koordinat, fon dan susunan bacaan, dan mengeluarkan Markdown dengan tajuk, senarai, jadual dan pautan.

Nombor yang menonjol

Pada korpus bangku opendataloader sebanyak 200 PDF, pdf-inspektor memproses keseluruhan set dalam 0.47 saat. Sebagai perbandingan: pymupdf4llm mengambil masa 17 saat, markitdown 16 saat. Dan ia masih mendapat markah tertinggi pada kualiti — 0.875 keseluruhan berbanding 0.735 untuk pymupdf4llm dan 0.589 untuk penurunan harga. Jadual adalah di mana ia benar-benar menarik ke hadapan: 0.814 berbanding 0.401 dan 0.273.

Apa lagi yang dilakukannya

Susun atur akhbar berbilang lajur, teks kanan ke kiri, fon CID, pengesanan pengekodan rosak. Dan OCR terpilih: jika PDF mempunyai beberapa halaman yang diimbas bercampur, anda boleh menjalankan hanya yang melalui OCR secara setempat melalui PP-OCRv6 Small, bukannya keseluruhan dokumen.

Di mana ia jatuh pendek

Sejujurnya: imbasan sebenar dan foto dokumen masih memerlukan OCR, dan pdf-inspektor tidaklah ajaib di sana — ia tidak membazirkan OCR pada fail yang tidak memerlukannya. Reka letak yang kompleks di mana formula dan tetapan taip bercampur dengan teks juga boleh merosakkannya. Dan ia adalah perpustakaan, bukan perkhidmatan sedia: anda perlu menulis sedikit kod untuk menggunakannya.

Glowing lines and table folding from a paper document into a hologram

Terdapat pengikatan untuk Python, Node.js dan penyemak imbas WebAssembly — penghurai Rust yang sama berjalan terus dalam penyemak imbas tanpa pelayan. Repo GitHub telah melepasi 17,000 bintang. Jika anda kerap menyuap PDF kepada model, ia patut dilihat.