𝗗𝗲-𝗺𝘆𝘀𝘁𝗶𝗳𝘆𝗶𝗻𝗴 𝘁𝗵𝗲 𝗚𝗲𝗻𝗔𝗜 𝗦𝘁𝗮𝗰𝗸

Desain perangkat lunak tradisional mengandalkan determinisme. Anda mengirimkan input, memvalidasinya terhadap skema, dan mengharapkan output yang dapat diprediksi.

Generative AI mengubah hal ini. Large Language Models (LLM) adalah mesin probabilistik. Mereka memprediksi teks berdasarkan probabilitas.

Jika Anda memperlakukan LLM seperti kotak ajaib, aplikasi produksi Anda akan gagal. Jika Anda memperlakukannya sebagai API pihak ketiga yang volatil dan non-deterministik, Anda dapat membangun sistem yang andal.

LLM memiliki batasan spesifik yang harus Anda kelola:

  • Ukuran Payload: Model memiliki batasan kaku yang disebut context windows. Anda tidak dapat mengirimkan data tanpa batas.
  • Latensi: Pembacaan database memakan waktu milidetik. Inferensi LLM memakan waktu detik. Anda memerlukan antrean asinkron atau streaming untuk menangani hal ini.
  • Halusinasi: Jika sebuah model kekurangan data spesifik, ia akan mengarang jawaban yang terdengar masuk akal tetapi salah.

Untuk menyelesaikan masalah data tanpa pelatihan ulang (retraining) yang mahal, kita menggunakan Retrieval-Augmented Generation (RAG).

RAG setara dengan membawa database Anda sendiri ke API. Alih-alih mengharapkan model mengetahui data Anda, backend Anda mengambil konteks yang relevan dan menyuntikkannya ke dalam prompt.

Alur kerja RAG:

  1. Pengguna mengirimkan prompt.
  2. Sistem Anda melakukan query ke Vector Database.
  3. Sistem menemukan potongan teks yang serupa secara semantik.
  4. Sistem menyuntikkan potongan-potongan ini ke dalam prompt.
  5. LLM memproses konteks yang tergroundasi (grounded context).

Ini mengubah LLM dari generator pengetahuan menjadi pemroses konteks. Hal ini mengurangi kesalahan secara signifikan.

Agar output LLM berguna untuk layanan otomatis, Anda memerlukan Structured Outputs. Anda tidak dapat menggunakan regex untuk memparsing teks percakapan bagi sebuah microservice. Anda harus menyertakan definisi skema yang tepat seperti JSON. Ini memastikan model mengikuti tata letak ketat yang dapat dibaca oleh kode Anda.

Membangun AI untuk produksi memerlukan transisi dari prompt linear ke desain sistem yang kuat.

Sumber: https://dev.to/ingit_bhatnagar/de-mystifying-the-genai-stack-from-llms-to-rag-a-systems-perspective-4jp8

Komunitas pembelajaran opsional: https://t.me/GyaanSetuAi