Docling: Document Parsing Cerdas untuk Pipeline AI dan RAG

# Docling: Document Parsing Cerdas untuk Pipeline AI dan RAG Dalam era AI generatif, kemampuan untuk mengekstrak informasi dari dokumen secara otomatis menjadi sangat krusial. Baik itu PDF laporan ta...

By Ruby Abdullah · · tutorial
DoclingDocument ParsingPDFRAGPython

Docling: Document Parsing Cerdas untuk Pipeline AI dan RAG

Dalam era AI generatif, kemampuan untuk mengekstrak informasi dari dokumen secara otomatis menjadi sangat krusial. Baik itu PDF laporan tahunan, presentasi PowerPoint, dokumen Word, atau halaman web HTML, kita membutuhkan alat yang mampu mengubah format-format tersebut menjadi data terstruktur yang siap dikonsumsi oleh model AI. Di sinilah Docling hadir sebagai solusi.

Docling adalah library open-source dari IBM Research yang dirancang untuk melakukan parsing dokumen secara cerdas. Library ini mendukung berbagai format input dan mampu menghasilkan output dalam format Markdown atau JSON yang bersih, siap untuk digunakan dalam pipeline AI, khususnya Retrieval-Augmented Generation (RAG).

Dalam tutorial ini, kita akan mempelajari cara menggunakan Docling mulai dari instalasi, konversi dokumen dasar, hingga membangun pipeline ingestion dokumen yang lengkap untuk RAG.

Prasyarat

Sebelum memulai, pastikan Anda memiliki:

  • Python 3.10 atau lebih baru
  • pip package manager
  • Pemahaman dasar tentang Python
  • (Opsional) GPU untuk OCR yang lebih cepat

Instalasi

Instalasi Docling cukup mudah menggunakan pip. Ada beberapa opsi instalasi tergantung kebutuhan Anda.

Instalasi Dasar

pip install docling

Instalasi dengan Dukungan OCR

pip install "docling[ocr]"

Instalasi Lengkap (Semua Fitur)

pip install "docling[all]"

Verifikasi Instalasi

import docling

print(f"Docling version: {docling.version}")

Format yang Didukung

Docling mendukung berbagai format dokumen sebagai input:

| Format | Ekstensi | Keterangan |

|--------|----------|------------|

| PDF | .pdf | Termasuk PDF dengan scan/gambar |

| Microsoft Word | .docx | Format Open XML |

| Microsoft PowerPoint | .pptx | Format Open XML |

| HTML | .html, .htm | Halaman web |

| Gambar | .png, .jpg, .tiff | Melalui OCR |

| AsciiDoc | .adoc | Format dokumentasi |

| Markdown | .md | Format markdown |

Konversi Dokumen Dasar

Mari mulai dengan konversi dokumen sederhana. Docling menyediakan API yang intuitif melalui class DocumentConverter.

Konversi PDF ke Markdown

from docling.documentconverter import DocumentConverter

Inisialisasi converter

converter = DocumentConverter()

Konversi dokumen PDF

result = converter.convert("laporantahunan.pdf")

Dapatkan output dalam format Markdown

markdownoutput = result.document.exporttomarkdown()

print(markdownoutput)

Konversi dari URL

Docling juga mendukung konversi langsung dari URL:

from docling.documentconverter import DocumentConverter

converter = DocumentConverter()

Konversi dari URL

result = converter.convert("https://example.com/dokumen.pdf")

markdownoutput = result.document.exporttomarkdown()

print(markdownoutput)

Konversi DOCX

from docling.documentconverter import DocumentConverter

converter = DocumentConverter()

result = converter.convert("proposalproyek.docx")

markdownoutput = result.document.exporttomarkdown()

Simpan ke file

with open("proposalproyek.md", "w", encoding="utf-8") as f:

f.write(markdownoutput)

print("Konversi selesai!")

Format Output

Docling mendukung beberapa format output yang dapat Anda pilih sesuai kebutuhan.

Export ke Markdown

from docling.documentconverter import DocumentConverter

converter = DocumentConverter()

result = converter.convert("dokumen.pdf")

Export ke Markdown

mdcontent = result.document.exporttomarkdown()

Simpan ke file

with open("output.md", "w", encoding="utf-8") as f:

f.write(mdcontent)

Export ke JSON (Document Format)

import json

from docling.documentconverter import DocumentConverter

converter = DocumentConverter()

result = converter.convert("dokumen.pdf")

Artikel Terkait

Tutorial ColBERT & RAGatouille: Late-Interaction Retrieval untuk RAG

ColBERT & RAGatouille: Retrieval Late-Interaction untuk RAG yang Lebih Baik Sebagian besar sistem RAG mengandalkan dense...

Firecrawl: Web Scraping API untuk Aplikasi AI dan LLM

Firecrawl: Web Scraping API untuk Aplikasi AI dan LLM Firecrawl adalah managed web scraping API yang dirancang khusus un...

RAGAS: Framework Evaluasi untuk Pipeline RAG

RAGAS: Framework Evaluasi untuk Pipeline RAG Pendahuluan Retrieval-Augmented Generation (RAG) telah menjadi arsitektur s...

Tutorial Lengkap Qdrant: Vector Database untuk Aplikasi AI

Tutorial Lengkap Qdrant: Vector Database untuk Aplikasi AI Qdrant adalah vector database performa tinggi yang dirancang ...