Proyek ini membangun pipeline end-to-end untuk asisten pajak berbasis Retrieval-Augmented Generation (RAG) menggunakan dokumen perpajakan Indonesia. Sistem ini mengonversi PDF ke Markdown, melakukan preprocessing, chunking, embedding, dan menyimpan hasilnya ke vector database untuk mendukung pencarian cerdas dan jawaban berbasis LLM.
- Konversi PDF ke Markdown dengan
marker-pdfuntuk ekstraksi dokumen hukum perpajakan. - Preprocessing & normalisasi istilah serta struktur dokumen.
- Chunking adaptif: header-based, hybrid, dan semantic.
- Embedding multibahasa menggunakan model
intfloat/multilingual-e5-large. - Penyimpanan dan pencarian chunk menggunakan ChromaDB.
- Evaluasi kualitas chunk dan retrieval otomatis.
- Integrasi RAG siap pakai dengan LLM (HuggingFace, Azure AI, dsb).
PDF → Markdown → Preprocessing → Chunking → Embedding → Vector DB → RAG/LLM
- PDF Converter: marker-pdf
- Preprocessing: Regex, normalisasi istilah pajak
- Chunking: MarkdownHeaderTextSplitter, RecursiveCharacterTextSplitter
- Embedding: SentenceTransformers
- Vector DB: ChromaDB
- RAG Framework: LangChain, Transformers, Azure AI Inference (opsional)
- Evaluasi: Ragas
- Konversi PDF ke Markdown
- Ekstrak isi dokumen hukum ke format Markdown terstruktur.
- Preprocessing
- Normalisasi istilah, penandaan pasal/ayat, dan pembersihan teks.
- Chunking
- Bagi dokumen menjadi chunk berdasarkan struktur hukum (BAB, Pasal, Ayat, dst).
- Mendukung strategi hybrid (header + recursive).
- Ekstraksi Metadata
- Ambil metadata penting: nomor UU, tahun, judul, daftar BAB.
- Embedding
- Ubah setiap chunk menjadi vektor embedding multibahasa.
- Penyimpanan ke Vector DB
- Simpan chunk, metadata, dan embedding ke ChromaDB.
- Evaluasi Kualitas
- Validasi chunk (ukuran, coverage, context preservation).
- Uji retrieval dengan query pajak umum.
- Integrasi RAG
- Siap dihubungkan ke pipeline LLM untuk Q&A berbasis dokumen.
-
Buat virtual environment (sangat disarankan):
python -m venv venv source venv/bin/activate # Linux/Mac # atau venv\Scripts\activate # Windows
-
Install dependensi:
pip install -r requirements.txt
- Siapkan file PDF dokumen perpajakan.
- Jalankan notebook
tax-assistant-preprocessing.ipynb:- Konversi PDF ke Markdown.
- Lakukan preprocessing, chunking, dan simpan ke vector DB.
- Jalankan notebook
tax-rag-architecture.ipynb:- Tambahkan github marketplace api key, berikut template jika menggunakan kaggle notebook
user_secrets = UserSecretsClient() github_key = user_secrets.get_secret("GITHUB_KEY")- Lakukan retrieval, evaluasi, dan integrasi dengan LLM.