𝗦𝗮𝗹𝗶𝗲𝗻𝘀𝗶 𝗕𝘂𝗸𝗮𝗻𝗹𝗮𝗵 𝗡𝗶𝗹𝗮𝗶 𝗕𝗲𝗿kelanjutan

Kebanyakan orang membangun memori agen dengan cara yang salah.

Mereka fokus pada penyimpanan. Mereka menggunakan vector store atau perangkum yang cerdas. Mereka berpikir jika mereka menyimpan segalanya, agen akan mengetahui segalanya.

Mereka salah.

Ketika Anda memiliki ratusan sesi, Anda tidak bisa membaca semuanya. Jika agen Anda memulai sesi baru dari nol (cold start), ia akan membuang-buang waktu. Jika ia memulai dengan terlalu banyak gangguan (noise), ia akan melakukan kesalahan.

Masalahnya adalah seleksi. Kebanyakan orang menyalahartikan salience dengan carry value.

  • Salience memberi tahu Anda apa yang menonjol di sesi terakhir.
  • Carry value memberi tahu Anda apa yang dibutuhkan sesi berikutnya agar dapat berfungsi.

Argumen keras tentang nama variabel memiliki salience yang tinggi. Namun, jika nama tersebut tidak memengaruhi kode di masa mendatang, ia memiliki carry value nol. Jika Anda membawanya ke depan, Anda hanya menambah gangguan (noise).

Saya menjalankan pipeline memori berdasarkan aturan-aturan ini:

  1. Mechanical salience terlebih dahulu. Gunakan scorer deterministik untuk menemukan momen-momen penting. Berikan bobot lebih tinggi pada koreksi daripada sekadar komentar. Setiap highlight harus terhubung kembali ke transkrip mentah. Jangan biarkan model mengarang fakta tanpa sumber.

  2. Sintesis kedua. Gunakan LLM hanya untuk menambahkan lapisan makna pada highlight. Jika highlight Anda buruk, ringkasannya hanya akan menjadi omong kosong yang terdengar meyakinkan.

  3. Gunakan ringkasan saat pengambilan (retrieval-time brief). Buat file seperti INDEX.md untuk setiap proyek. Agen membaca file ini di awal sesi. Tidak boleh ada model yang mengarang ringkasan ini secara spontan. Ini harus berupa file biasa yang dapat Anda buka dan edit secara manual.

Untuk membangun memori yang lebih baik, Anda membutuhkan lebih dari sekadar daftar hal-hal penting. Anda membutuhkan:

  • Dua skor: Satu untuk seberapa menonjol hal tersebut (salience) dan satu untuk seberapa penting hal tersebut di kemudian hari (carry value).
  • Kelas memori: Pisahkan keputusan aktif, batasan operasional, dan open loops.
  • Tanggal kedaluwarsa: Setiap potongan memori harus memiliki alasan untuk dihapus. Tanpa kedaluwarsa, konteks akan menyumbat sistem Anda.
  • Pemicu (Triggers): Tentukan dengan tepat kapan sebuah potongan memori harus muncul.

Tujuannya adalah untuk meminimalkan recovery cost.

Recovery cost adalah berapa banyak token atau menit yang dibutuhkan agen untuk mengejar ketertinggalan dari titik terakhir ia berhenti. Jika pipeline memori Anda hanya sekadar sandiwara, recovery cost Anda akan tetap tinggi.

Berhenti membangun penyimpanan yang lebih besar. Mulailah membangun seleksi yang lebih baik.

Sumber: https://dev.to/jugeni/salience-is-not-carry-value-notes-from-a-running-session-memory-pipeline-4dda

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