Type something to search...
Mesin Penghitung Harga Saya Tidak Bisa Menjawab, Jadi Saya Buatkan Otak

Mesin Penghitung Harga Saya Tidak Bisa Menjawab, Jadi Saya Buatkan Otak

AI Agent RAG Python Cerita
Daftar isi

Beberapa waktu lalu saya mengajari mesin menentukan harga dokumen seperti cara saya waktu kuliah, dengan memilah halaman ke dalam kategori (kisah lengkapnya ada di sini). Berhasil. Lalu seseorang bertanya soal jilid spiral, dan ia tidak bisa menjawab apa-apa. Mesin penghitung harga bukan asisten toko. Asisten toko menjawab pertanyaan.

Hal itu mengganjal saya berbulan-bulan. Jadi saya membangun agen Dokuprint: chat yang menghitung harga PDF Anda sekaligus menjawab pertanyaan soal layanan toko. Harga laminating, pilihan jilid, apakah file Anda siap cetak. Kalau Anda baru kenal agen AI, ini contoh yang ramah buat pemula, karena seluruh proyek berdiri di atas satu aturan sederhana yang gampang diingat.

Satu aturan

Setiap harga di jawaban harus berasal dari tool, di percakapan yang sama. Bukan dari ingatan model. Bukan dari tebakan. Dari tool.

Kenapa seketat itu? Karena model bahasa itu jago mengarang angka dan kelihatan yakin. Tanya harga laminating dan ia akan memberi angka dengan santai, padahal sumbernya tidak ada. Isi katalog hari Senin bisa beda dengan yang diingat model. Jadi desainnya dibuat supaya model tidak punya celah untuk mengarang. Model cuma menyusun kalimat di sekitar angka yang sudah dihitung Python. Dia tidak ikut menghitung.

Ada dua tool dan dua jenis harga. Satu menjalankan mesin harga pada PDF yang Anda unggah dan memberi harga pasti. Satunya lagi mencari di katalog toko dan menghasilkan kisaran pasar, selalu dilabeli estimasi. Saat jawaban menyebut laminating Rp 4.500, angka itu datang dari baris katalog, lewat kode, lalu masuk ke kalimat. Jalurnya bisa dilacak.

Penjaga gerbang

Di antara model dan Anda ada bagian yang paling saya percaya, dan bagian ini justru yang paling “bodoh”. Ia memindai draft jawaban mencari apa pun yang terlihat seperti harga, lalu mencocokkannya dengan daftar yang dihasilkan tool. Jawaban yang lolos ditulis ulang sekali. Gagal dua kali, template tetap yang mengambil alih, dibangun hanya dari output tool.

Tidak ada kecerdasan yang terlibat. Cuma regex dan pencocokan ke daftar angka. Model paling canggih di pipeline menulis prosa, dan skrip paling murah di pipeline yang memutuskan apa yang dikirim. Saya suka susunan itu. Artinya keamanan sistem tidak pernah bergantung pada mood model.

Yang diketahui toko

Asisten juga butuh pengetahuan: jenis jilid, berat kertas, paket hemat, fakta-fakta membosankan yang dihafal penjaga toko sungguhan di luar kepala. Punya saya tersimpan di katalog kecil berisi 145 potongan teks, yang dicari dengan dua cara sekaligus. Satu pencarian paham makna, satunya lagi mencocokkan kata persis. Nama yang sama persis sering kalah dari hasil yang mirip tapi tidak relevan, jadi saya memadukan kedua ranking. Saat tidak ada yang cukup cocok di katalog, asisten bilang ia tidak tahu. Satu kalimat itu butuh kerja keras untuk diwujudkan. Model lebih suka mengarang daripada mengaku tidak tahu, jadi kejujuran itu dipaksakan dari luar sistem.

Catatan jujur

Katalognya karangan. Saya menulisnya sebagai data pengganti, setiap baris ditandai low confidence, dan asisten melabeli jawabannya sebagai estimasi. Bagian teknisnya sudah teruji: 362 automated tests, retrieval yang menemukan baris yang tepat pada 94,7% kasus, nol harga karangan di seluruh eval set. Tapi bagian teknis itu belum jadi toko. Sampai daftar harga asli menggantikan baris fiksi saya, ini demonstrasi cara menjaga AI tetap jujur, bukan asisten toko.

Itu juga alasan saya suka proyek ini. Kebanyakan demo AI menunjukkan jawabannya. Yang ini menunjukkan kendalinya.

Related Posts