𝗠𝗼𝗱𝗲𝗹 𝗧𝗶𝗱𝗮𝗸 𝗠𝗲𝗻𝗴𝗶𝗻𝗴𝗮𝘁. 𝗔𝗻𝗱𝗮 𝗬𝗮𝗻𝗴 𝗠𝗲𝗻𝗴𝗶𝗻𝗴𝗮𝘁.

Large Language Models (LLM) tidak mempunyai memori.

Dahulu saya fikir setiap sesi sembang menyimpan konteksnya sendiri. Saya silap. Apabila anda bercakap dengan LLM, ia tidak mengingati soalan terakhir anda melainkan anda menghantarnya semula.

Model ini bersifat stateless. Ini bermakna setiap permintaan adalah permulaan yang baharu.

Untuk mencipta perbualan, anda mesti menguruskan sejarah itu sendiri. Anda melakukannya dengan menghantar satu tatasusunan (array) semua mesej terdahulu bersama setiap permintaan baharu.

"Memori" hanyalah satu senarai mesej:

  • Pengguna: Hello.
  • Pembantu: Hai!
  • Pengguna: Apa khabar?

Jika anda tidak menyertakan dua baris pertama dalam permintaan seterusnya, model tersebut tidak akan tahu bahawa anda sudah pun mengucapkan hello.

Saya mempelajari perkara ini dengan mengelakkan penggunaan SDK. Kebanyakan pembangun menggunakan alatan seperti Anthropic SDK untuk menyembunyikan kerumitan ini. SDK mengendalikan sejarah mesej dan pengepala (headers) untuk anda.

Jika anda ingin mempelajari cara LLM berfungsi, gunakan raw fetch sebagai ganti. Jangan gunakan abstraksi. Apabila anda menguruskan kitaran permintaan dan respons secara manual, anda dapat melihat setiap keputusan yang dibuat.

Kawalan manual ini membolehkan anda membina strategi lanjutan kemudian, seperti:

  • Tetingkap gelongsor (sliding windows) untuk menguruskan sembang yang panjang.
  • Retrieval Augmented Generation (RAG).
  • Carian semantik.

Memahami tatasusunan ini adalah asas kepada pembangunan AI. Andalah yang menyediakan konteks tersebut. Model hanya tahu apa yang anda hantar.

Sumber: https://dev.to/marcochavezco/the-model-doesnt-remember-you-do-3mmk