02. PDF

PDF

Portable Document Format (PDF), sebuah format file yang distandarisasi oleh ISO 32000, dikembangkan oleh Adobe pada tahun 1992 untuk menyajikan dokumen yang menyertakan format teks dan gambar dengan cara yang tidak bergantung pada perangkat lunak aplikasi, perangkat keras, dan sistem operasi.

Panduan ini mencakup cara memuat dokumen PDF ke dalam format Dokumen LangChain. Format ini digunakan di bagian hilir.

LangChain terintegrasi dengan berbagai pengurai PDF. Beberapa di antaranya sederhana dan relatif tingkat rendah, sementara yang lain mendukung OCR dan pemrosesan gambar atau melakukan analisis tata letak dokumen tingkat lanjut.

Pilihan yang tepat tergantung pada aplikasi Anda.

Catatan

Dokumentasi LangChain

Eksperimen PDF tim AutoRAG


Papan peringkat berdasarkan eksperimen yang dilakukan di AutoRAG

Angka-angka di bawah ini menunjukkan kesetaraan (Semakin rendah, semakin baik)

PDFMiner
PDFPlumber
PyPDFium2
PyMuPDF
PyPDF2

Medical

1

2

3

4

5

Law

3

1

1

3

5

Finance

1

2

2

4

5

Public

1

1

1

4

5

Sum

5

5

7

15

20

Sumber: Blog Medium AutoRAG

Dokumentasi praktis


Lembaga Penelitian Kebijakan Perangkat Lunak (SPRi) - Desember 2023

  • Penulis : Jaeheung Yoo (Peneliti Utama, Pusat Penelitian Kebijakan AI), Jisoo Lee (Peneliti, Pusat Penelitian Kebijakan AI)

  • Nama file : SPRI_AI_Brief_2023ë…„12월호_F.pdf

Catatan : Silakan unduh file di atas di folder data

PyPDF


Di sini kita menggunakan pypdf untuk memuat PDF sebagai sebuah larik dokumen, yang masing-masing berisi konten halaman dan metadata beserta nomor halaman.

PyPDF (OCR)

Beberapa PDF berisi gambar teks dalam dokumen atau gambar yang dipindai. Anda juga dapat menggunakan paket rapidocr-onnxruntime untuk mengekstrak teks dari gambar.

PyMuPDF

PyMuPDF dioptimalkan untuk kecepatan dan menyertakan metadata yang mendetail tentang PDF dan halaman-halamannya. Ini mengembalikan satu dokumen per halaman:

Tidak terstruktur


Unstructured mendukung antarmuka umum untuk menangani format file yang tidak terstruktur atau semi-terstruktur seperti Markdown atau PDF.

UnstructuredPDFLoader dari LangChain terintegrasi dengan Unstructured untuk mengurai dokumen PDF menjadi objek Dokumen LangChain.

Secara internal, unstructured menciptakan "elemen" yang berbeda untuk setiap potongan teks. Secara default, semua ini digabungkan, tetapi dapat dengan mudah dipisahkan dengan menentukan mode="elements".

Lihat rangkaian lengkap jenis elemen untuk dokumentasi khusus ini

PyPDFium2


PDFMiner


Menggunakan PDFMiner untuk menghasilkan teks HTML

Metode ini memungkinkan Anda untuk mengurai konten HTML keluaran melalui BeautifulSoup untuk mendapatkan informasi yang lebih terstruktur dan lebih kaya tentang ukuran font, nomor halaman, header/footer PDF, dll. yang dapat membantu Anda membagi teks secara semantik menjadi beberapa bagian.

Direktori PyPDF


Memuat PDF dari direktori

PDFPlumber


Seperti PyMuPDF, dokumen keluaran berisi metadata terperinci tentang PDF dan halamannya, dan mengembalikan satu dokumen per halaman.

Last updated