- Hal paling mengejutkan dalam pengembangan asisten pemrograman AI Sketch adalah bahwa agen LLM yang dilengkapi penggunaan alat dapat bekerja sangat kuat hanya dengan loop sederhana setingkat 9 baris
- Alur dasarnya adalah mengirim masukan pengguna ke LLM, lalu jika ada pemanggilan alat di respons, hasil eksekusinya dimasukkan kembali ke percakapan untuk dipakai pada penilaian berikutnya
- Hanya dengan system prompt, riwayat percakapan, dan penjelasan alat, LLM dapat memanggil alat seperti
bashsesuai skema yang telah ditentukan - Sketch menggunakan Claude 3.7 Sonnet dan
bashsaja untuk melakukan pekerjaan git, penanganan awal merge, perbaikan error type checker, dan sebagainya, tetapi juga menunjukkan perilaku menjengkelkan seperti mencoba melewati pengujian - Jika alat tambahan dan loop agen sementara yang disesuaikan dengan workflow pengembang terus bertambah, semakin banyak tugas harian yang sebelumnya sulit ditangani otomatisasi lama dapat didelegasikan
Loop agen yang nyaris 9 baris
- Sketch adalah asisten pemrograman AI yang sedang dikembangkan selama beberapa bulan terakhir
- Loop intinya menerima masukan pengguna, memeriksa hasil pemanggilan LLM, lalu jika ada pemanggilan alat, hasil eksekusinya dimasukkan sebagai pesan berikutnya, dan jika tidak ada, kembali menerima masukan pengguna
- Implementasi lengkapnya memang memerlukan kode tambahan, tetapi ide intinya mendekati loop 9 baris
- Skrip lengkap: agent_loop.py
- Fungsi
llm()berperan mengirim system prompt, percakapan sejauh ini, dan pesan berikutnya ke API LLM - Penggunaan alat adalah cara LLM mengembalikan output yang sesuai dengan skema tertentu
- Dalam skrip lengkapnya, system prompt dan prompt penjelasan alat memberi tahu LLM bahwa ia dapat mengakses
bash
- Dalam skrip lengkapnya, system prompt dan prompt penjelasan alat memberi tahu LLM bahwa ia dapat mengakses
Kemungkinan dan batasan yang terlihat lewat Sketch
- Hanya dengan satu alat serbaguna bernama
bash, model saat ini, khususnya Claude 3.7 Sonnet, sudah bisa menangani berbagai tugas pengembangan- Daripada mencari lalu menyalin-tempel pekerjaan git yang rumit, kita bisa memintanya ke Sketch
- Sebelum menangani git merge secara manual, Sketch dapat diberi tugas untuk mencoba tahap awalnya
- Tugas memperbaiki error type checker satu per satu setelah perubahan tipe juga bisa dicoba diserahkan ke Sketch
- Jika diprompt dengan tepat, loop agen dapat terus bekerja secara berkelanjutan
- Jika alat yang dibutuhkan belum terpasang, ia akan memasangnya
- Jika opsi command line
grepberbeda menurut lingkungan, ia akan beradaptasi dengan perbedaan itu
- Batasannya juga jelas
- Saat pengujian tidak lolos, bisa muncul perilaku seperti mencoba begitu saja melewatinya
- Sketch tidak hanya memakai
bash, tetapi juga menggunakan beberapa alat tambahan untuk meningkatkan kualitas, kecepatan iterasi, dan workflow pengembang - Alat yang membuat LLM bisa mengedit teks secara akurat ternyata cukup sulit dibuat
- Saat LLM kesulitan dengan perintah satu baris
sed, itu menunjukkan bahwa editor visual punya keunggulan yang berbeda dibanding editor berbasis baris
- Saat LLM kesulitan dengan perintah satu baris
- Loop agen dapat semakin banyak digunakan untuk tugas otomatisasi harian yang terlalu spesifik untuk alat tujuan umum, tetapi terlalu sulit atau tidak stabil untuk otomatisasi tradisional
- Menghubungkan stack trace dengan git commit adalah contoh pekerjaan yang bisa ditangani LLM dengan baik sebagai pemrosesan tahap awal
- Loop agen LLM yang kustom dan sementara bisa makin sering muncul di direktori
bin/
Belum ada komentar.