Dalam pengembangan aplikasi kecerdasan buatan, pemilihan struktur arsitektur menentukan apakah sistem tersebut dapat bertahan di lingkungan produksi atau justru runtuh saat menghadapi beban nyata. Banyak tim pengembang terjebak dalam pendekatan LLM-centric, di mana seluruh beban kerja—mulai dari pemahaman bahasa, manajemen memori, penerapan aturan bisnis, hingga pengambilan keputusan—diserahkan sepenuhnya kepada satu model bahasa besar dalam satu langkah pemanggilan.
Sebagai perbandingan, pendekatan modular memperlakukan model bahasa sebagai salah satu komponen penting di dalam sistem, bukan sebagai keseluruhan lapisan kecerdasan. Memahami perbedaan mendasar antara kedua arsitektur ini adalah kunci utama bagi rekayasa perangkat lunak AI yang andal, terukur, dan aman.
Membedah Pendekatan LLM-Centric
Dalam arsitektur LLM-centric, alur kerjanya sangat sederhana pada tahap awal: masukan pengguna (user input) langsung dikirimkan ke model bersama dengan instruksi sistem (system prompt) yang panjang, dan model langsung menghasilkan keluaran akhir (output).
- Kelebihan: Sangat cepat untuk dibangun, ideal untuk demonstrasi (demo), dan tidak membutuhkan kerangka kode yang rumit di luar pemanggilan API dasar.
- Kekurangan: Seluruh proses bersifat monolitik. Ketika terjadi kesalahan penalaran atau halusinasi kebijakan, pengembang harus memperbaiki prompt alih-alih memperbaiki logika kode. Pendekatan ini mengabaikan fakta bahwa LLM bersifat probabilistik, sehingga tidak cocok untuk menegakkan aturan bisnis yang memerlukan kepastian mutlak.
Pendekatan Modular: Memisahkan Bahasa dan Logika
Arsitektur modular memecah proses penanganan permintaan ke dalam beberapa modul terpisah yang memiliki tanggung jawab spesifik. Berdasarkan prinsip dasar rekayasa sistem AI, tugas harus dibagi berdasarkan sifat dasarnya: apakah tugas tersebut fundamental tentang bahasa, atau fundamental tentang logika dan status?
- Tugas Bahasa: Pemahaman teks dengan input yang kabur (fuzzy inputs), ekstraksi maksud (intent classification), penanganan variasi bahasa, dan perumusan draf respons yang empatik diserahkan kepada model.
- Tugas Logika dan Status: Pengecekan apakah akun pelanggan menunggak, kalkulasi nilai numerik, perutean antrean, dan penerapan aturan kebijakan bisnis dijalankan oleh kode deterministik (seperti Python).
Alur Kerja Modular (Contoh Sistem SupportOps AI)
- Persepsi & Klasifikasi (Model): Pesan pelanggan diterima, dinormalisasi, lalu dikirim ke model ringan untuk mengklasifikasikan kategori masalah (misalnya: penagihan atau teknis) dan tingkat urgensi.
- Mesin Aturan (Kode Python): Hasil klasifikasi berformat terstruktur (structured output) dibaca oleh kode deterministik untuk menerapkan aturan eskalasi secara konsisten tanpa variasi acak.
- Manajemen Status (Kode Python): Status interaksi disimpan dalam objek status terpusat (SessionState), memastikan sistem memiliki sumber kebenaran tunggal (single source of truth) yang tidak bergantung pada ingatan model.
- Perumusan Respons (Model): Model dipanggil kembali untuk menyusun draf respons berdasarkan konteks terbatas yang spesifik, bukan seluruh riwayat percakapan mentah.
Perbandingan Langsung: LLM-Centric vs Modular
Untuk melihat dampak nyata dari kedua pilihan arsitektur ini, perhatikan tabel perbandingan di bawah ini:
| Parameter Perbandingan | Arsitektur LLM-Centric | Arsitektur Modular |
| Unit Pengambilan Keputusan | Diserahkan sepenuhnya pada probabilitas model. | Ditangani oleh kode deterministik berbasis aturan. |
| Auditabilitas Keputusan | Sulit dilacak; tersembunyi di dalam teks keluaran model. | Sangat transparan; setiap perubahan status tercatat dalam log terstruktur. |
| Pengujian (Testing) | Mustahil menulis unit test karena output model bervariasi. | Mudah diuji; aturan bisnis di dalam kode dapat diuji secara terisolasi. |
| Struktur Biaya Jangka Panjang | Cenderung membengkak karena mengirim konteks penuh berulang kali. | Lebih efisien; menggunakan model ringan untuk tugas sederhana dan model canggih hanya bila perlu. |
Mengapa Arsitektur Modular Menang di Produksi
Sistem yang sukses di tingkat produksi harus dapat diukur, dikendalikan, dan aman dioperasikan ketika menerima masukan yang berantakan. Dengan arsitektur modular, jika aturan bisnis perusahaan berubah (misalnya masa retur berubah dari 30 hari menjadi 45 hari), pengembang tidak perlu mengubah prompt dan berharap model mematuhinya secara konsisten. Pengembang cukup memperbarui logika fungsi di dalam kode program, menjalankan unit test, dan merilis pembaruan dengan aman.
Kesimpulan
Peralihan dari pendekatan LLM-centric ke arsitektur modular bukan sekadar pilihan gaya penulisan kode, melainkan sebuah kebutuhan operasional. Dengan membatasi peran model bahasa pada ranah pemahaman dan penghasilan bahasa, serta menyerahkan logika, status, dan kendali kepada kode program yang deterministik, tim pengembang dapat menghindari jebakan biaya, halusinasi kebijakan, dan inkonsistensi sistem yang sering merusak aplikasi AI di masa produksi.

