𝗠𝘆 𝗔𝗜 𝗔𝘀𝘀𝗶𝘀𝘁𝗮𝗻𝘁 𝗦𝗮𝗶𝗱 𝗗𝗼𝗻𝗲, 𝗕𝘂𝘁 𝗗𝗶𝗱 𝗜𝘁 𝗔𝗰𝘁𝘂𝗮𝗹𝗹𝘆 𝗗𝗼 𝗜𝘁?

Saya menjalankan agen otonom selama 1.000 siklus.

Pada siklus 696, agen tersebut menulis sebuah catatan. Ia mengatakan perlu menulis skrip untuk menghentikan penumpukan data. Ini terdengar seperti rencana yang bagus.

Agen tersebut terus mengulang catatan ini selama 494 siklus. Ia mengatakan:

  • Saya berencana menulis skrip tersebut.
  • Saya harus melakukan query ke database.
  • Saya akan memperbaikinya pada siklus berikutnya.

Ia tidak melakukan apa pun selama 494 siklus. Ketika akhirnya ia memeriksa database pada siklus 1.190, ia menemukan 61 baris duplikat.

Ini adalah kegagalan struktural dalam LLM. Ini disebut intention loop.

Agen tersebut keliru menganggap deskripsi tindakan sebagai pelaksanaan tindakan. Jika Anda menulis baris-baris ini, Anda terjebak dalam perangkap:

  • Saya harus melakukan query ke Y untuk konfirmasi.
  • Saya berencana melakukan X minggu depan.
  • Perlu memverifikasi W terlebih dahulu.

Masalahnya bukan kurangnya rencana. Masalahnya adalah kurangnya tindakan selanjutnya.

Jika langkah Anda selanjutnya adalah refleksi, daftar tugas, atau catatan, Anda tidak melakukan apa pun. "Saya berencana untuk" ditambah lebih banyak refleksi sama dengan intention loop.

Bagaimana cara memutus loop ini?

Jangan menunggu siklus berikutnya. Dalam siklus yang sama, segera panggil sebuah tool.

Gunakan aturan ini: Saat Anda menulis kalimat dengan sebuah niat, baris Anda berikutnya harus berupa pemanggilan tool.

Pola yang salah: Thought: I need to check the duplicate count. Next line: Let me think about why this happens.

Pola yang benar: Thought: I need to check the duplicate count. Action: pg_query("SELECT url, COUNT(*) FROM platform_audit GROUP BY url")

Perubahan kecil ini mengubah 494 siklus menjadi 1 siklus.

Agen terjebak dalam loop karena mengatakan "Saya berencana melakukan X" menciptakan rasa kemajuan yang palsu. Anda merasa seperti sedang bergerak maju, padahal Anda hanya berputar-putar di tempat.

Berhenti bertanya "apa yang harus saya lakukan?" Mulailah bertanya "data apa yang saya miliki saat ini?"

Contoh:

  • Alih-alih "Saya perlu memperbaiki bug," jalankan: pg_query("SELECT * FROM errors LIMIT 10")
  • Alih-alih "Saya ingin memahami pengguna," jalankan: pg_query("SELECT * FROM platform_agents LIMIT 5")
  • Alih-alih "Lain kali saya akan memeriksa kode," jalankan: grep("TODO", "./src/")

Periksa 10 output terakhir Anda. Hitung berapa kali Anda menggunakan "Saya berencana untuk" atau "Saya harus."

Pilih satu. Panggil sebuah tool sekarang juga. Lihat apa yang dikatakan data kepada Anda.

Sumber: https://dev.to/chunxiaoxx/my-ai-assistant-said-done-but-did-it-actually-do-it-a-494-cycle-lesson-from-an-agent-developer-4eoj

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