Lanjut ke konten
Samkarsa Logbook

Jualan v1.5.0-061: Universal Adaptive OCR Intelligence & Dynamic Rule Distillation Engine

Implementasi Continuous Learning Engine OCR adaptif: Universal Deep JSON Delta, LLM Rule Distillation Agent, model database SupplierParsingRule, Dynamic Supplier Rule Injection, dan Strict Mathematical Guardrail anti-halusinasi.

Engineering Log2mnt baca

Pada pembaruan v1.5.0-061, sistem OCR dan parsing transaksi pada ekosistem BLONJO & SAJEN ditingkatkan dengan kemampuan pembelajaran mandiri adaptif (Continuous Learning Engine). Sistem kini mampu menyimpulkan aturan bisnis nota per supplier dari hasil koreksi pengguna dan menerapkannya pada nota-nota berikutnya secara deterministik dan bebas dari halusinasi.


Sebelumnya, pencatatan koreksi hanya membandingkan beberapa properti string sederhana. Sekarang, modul compute_deep_json_delta menganalisis perbedaan mendalam antara ekstraksi mentah awal AI dengan data validasi akhir pengguna:

  • Perubahan Formula Kalkulasi: Mendeteksi jika pengguna menyesuaikan harga satuan dari Subtotal / Qty atau memindahkan diskon ke per-baris item.
  • Perubahan Global & Struktural: Mendeteksi perubahan total, pajak, tanggal jatuh tempo, dan metode pembayaran.
  • Item Delta: Menangkap penghapusan baris fiktif, penambahan item bonus, dan varian multi-baris.

Ketika transaksi nota disimpan, agen distilasi berjalan di background thread (non-blocking) untuk menyimpulkan aturan interpretasi nota:

  1. Sintesis Aturan Deterministik: AI menyimpulkan 1–3 aturan instruksi bisnis (misal: “Pada nota CV X, kolom paling kanan adalah Total Neto setelah diskon, unit price dihitung dari Neto / Qty”).
  2. Model Database SupplierParsingRule:
    • Disimpan di tabel supplier_parsing_rules pada database PostgreSQL dengan indeks per-tenant dan per-supplier.
    • Dilengkapi confidence count yang bertambah setiap kali ada konfirmasi aturan serupa.
  3. Migrasi Database: Didaftarkan via migrasi Alembic a2b3c4d5e6f7_add_supplier_parsing_rules.py.

Saat pengguna mengunggah nota baru:

  1. Deteksi Profil Supplier: Sistem mengenali nama supplier dari pembacaan awal kop nota.
  2. Injeksi Aturan Otomatis: Seluruh aturan aktif dari supplier_parsing_rules otomatis disuntikkan ke prompt Vision AI (process_receipt_ocr dan mcp_client.ocr_receipt).
  3. Hasil Bebas Pengulangan: AI Vision langsung mengekstrak data dengan benar sejak pembacaan pertama tanpa mengulang kesalahan penafsiran lama.

Untuk mencegah halusinasi angka:

  • Fungsi validate_and_reconcile_math memastikan konsistensi (Qty×Price)−Discount=Subtotal(Qty \times Price) - Discount = Subtotal.
  • Grand Total direkonsiliasi secara matematis terhadap jumlah subtotal item, pajak, dan diskon global.

  • Project Jualan (/Users/user/kerjaan/jualan): Menampung frontend Blonjo dan backend Sajen API/Worker.
  • MCP Server Hub (/Users/user/kerjaan/mcp-server): Menampung Knowledge Vectors RAG dan Vector Search terpusat.
  • Logbook Hub (/Users/user/kerjaan/logbook): Repositori pusat pencatatan changelog & engineering logbook Astro.