Seorang ejen AI autonomi telah membina stack Retrieval-Augmented Generation (RAG) yang lengkap dalam masa kira-kira dua puluh minit dan membuka draf pull request tanpa sebaris kod manusia sekalipun.
Mengapa “loop” itu penting
Membina stack RAG biasanya bermaksud menyatukan enjin carian, model embedding, model bahasa, dan kod penyambung (glue code). Pembangun membazirkan masa berjam-jam untuk mengubah suai Helm charts, membaiki ralat pengesahan (auth glitches), dan mencari nama model yang tidak sepadan. Dalam ujian ini, ejen autonomi tersebut mengikut satu loop lima langkah yang mewajibkan persetujuan antara manusia dan ejen sebelum sebarang kod ditulis.
| Fasa | Apa yang berlaku |
|---|---|
| Cadangan | Ejen membaca prompt dan merangka pelan konkrit, tetapi belum menjana kod lagi. |
| Persetujuan | Pengguna menyemak pelan, meluluskannya atau meminta perubahan. |
| Pelaksanaan | Ejen membina ciri tersebut pada cawangan (branch) baharu. |
| Pintu Draf | Ejen menjalankan linting dan suite ujiannya sendiri, membaiki ralat yang ditemui. |
| Draf PR | Kod dihantar dan pull request dibuka untuk semakan akhir manusia. |
Kebanyakan alat pengekodan berbantu AI terus melompat ke fasa pelaksanaan, yang sering menghasilkan kod yang tidak menepati sasaran. Dengan memasukkan langkah persetujuan yang jelas, loop ini menghentikan pelaksanaan melulu dan membolehkan pengguna mengemudi projek sebelum sebarang commit dilakukan.
Stack yang terhasil
Dalam masa dua puluh minit, ejen tersebut telah memasang saluran paip (pipeline) RAG yang sedia untuk pengeluaran:
- OpenSearch 3.7 yang dikonfigurasikan untuk carian hibrid (vector + keyword).
- Local Ollama LLM yang berfungsi sebagai enjin generatif untuk respons retrieval-augmented.
- Pelayan FastMCP yang mendedahkan empat alatan tersuai kepada model bahasa.
- Skrip Skaffold dan Helm yang mengautomasikan pembinaan kontena, manifes Kubernetes, dan penggunaan perkhidmatan.
Saluran paip tersebut telah diisi dengan tiga puluh artikel, membolehkan ujian hujung-ke-hujung (end-to-end) bagi retrieval dan penjanaan dilakukan dengan serta-merta. Seorang pembangun biasanya akan menghabiskan masa seharian untuk mengkonfigurasi setiap komponen; kepantasannya sangat mengagumkan.
Pepijat yang hampir merosakkannya
Keyakinan ejen tersebut diuji oleh lima kegagalan berbeza yang biasanya akan melambatkan penggunaan (deployment) yang dikendalikan oleh manusia:
- Ralat kredential OpenSearch – ejen membekalkan kunci rahsia yang salah, menyebabkan kluster menolak sambungan.
- Kesalahan taip Regex dalam URL – satu aksara yang salah tempat menukarkan titik akhir (endpoint) yang sah menjadi pautan mati, merosakkan pemuat data (data loader).
- Ketidakpadanan nama model – penyambung menjangkakan pengenal pasti model Ollama yang berbeza, menyebabkan ralat “model not found”.
- Had memori JVM – pengindeksan pukal menghabiskan Java heap, mencetuskan kegagalan (crash) akibat kehabisan memori.
- Pemadaman cebisan model secara tidak sengaja – skrip pembersihan tersalah kenal pasti fail penting sebagai pendua dan memadamkannya, mengancam keseluruhan saluran paip.
Apabila ejen tersekat, “loop-police” masuk campur
Seorang pengawal (watchdog) pendamping yang dipanggil loop-police memantau kesihatan loop tersebut. Apabila ejen memasuki kitaran yang tidak berakhir semasa pepijat pemadaman berlaku, loop-police mengesan kebuntuan tersebut, membatalkan cawangan semasa, dan memaksa peralihan kembali ke fasa Persetujuan. Ejen tersebut kemudian mengakui kesilapan itu, membersihkan keadaan yang rosak, dan membina semula saluran paip dari awal. Kitaran pemulihan kendiri (self-healing) selesai tanpa campur tangan manusia selain daripada kelulusan pelan awal.
Apa maksudnya kepada pembangun
- Kepantasan tanpa mengorbankan kawalan. Loop ini membolehkan jurutera menyatakan niat, kemudian menyerahkan pelaksanaan kepada sistem autonomi yang masih mengikut pelan yang diluluskan oleh manusia.
- Jaring keselamatan terbina dalam. Linting automatik, pengujian, dan pengawal yang boleh memutuskan loop yang tidak terkawal mengurangkan risiko kegagalan senyap.
- Halangan masuk yang lebih rendah. Pasukan yang kekurangan kepakaran mendalam dalam Helm, Kubernetes, atau carian vektor boleh membina stack yang berfungsi dengan hanya menerangkan keperluan mereka dalam bahasa biasa.
Pendekatan ini bukanlah penyelesaian ajaib (silver bullet). Fasa Persetujuan masih memerlukan penyemak yang berpengetahuan untuk mengesan jangkaan yang tidak realistik atau kebimbangan keselamatan. Loop ini tidak menggantikan kepakaran domain; ia sekadar membungkus kerja-kerja penyambungan (plumbing work) yang berulang ke dalam corak yang boleh diulang.
