Kepingan yang Hilang dalam Perbualan AI
Semua orang sedang bercakap tentang ejen AI. Skrol mana-mana suapan teknologi dan anda akan menemui berpuluh-puluh demo yang menunjukkan model bahasa besar (LLM) menempah penerbangan, menulis kod, atau menjawab tiket sokongan dalam satu perbualan yang memukau. Mesej tersiratnya kelihatan jelas: jika anda menyambungkan pengguna kepada LLM, keajaiban akan berlaku.
Ilusi itu berfungsi dengan cantik untuk demo selama lima minit. Ia akan runtuh sebaik sahaja pengguna sebenar, data sebenar, dan wang sebenar mula terlibat. Dalam persekitaran produksi, hubungannya tidak pernah sekadar Pengguna ↔ LLM. Ia adalah Pengguna ↔ satu sistem kompleks yang kebetulan mengandungi LLM. Bahagian sistem tersebut yang tidak diperkatakan oleh sesiapa ialah harness—kerangka yang memilih, menyalurkan, melindungi, dan menyelaraskan segala-galanya di sekeliling model tersebut. Tanpanya, anda tidak mempunyai produk. Anda hanya mempunyai prototaip.
Mengapa Gelung Mudah Terputus
Demo adalah persekitaran yang terkawal. Pertanyaan adalah pendek, konteks adalah terhad, dan risikonya adalah rendah. Pembangun membuat satu panggilan API, mendapat maklum balas yang lancar, dan penonton bertepuk tangan. Tetapi produksi adalah kucar-kacir. Pengguna bertanya soalan susulan yang kabur. API pihak ketiga mengalami masa tamat (timeout). Model yang menjana JSON yang sempurna semalam tiba-tiba mengeluarkan markdown pula. Tetingkap konteks (context windows) penuh. Had kadar (rate limits) bermula pada saat yang paling tidak sesuai.
Gelung respons-prompt mentah tidak mempunyai jawapan untuk semua ini. Ia tidak tahu varian model mana yang harus mengendalikan tugasan tertentu. Ia tidak ingat apa yang berlaku tiga pusingan yang lalu. Ia tidak boleh mencuba semula panggilan yang gagal, mengehadkan (throttle) permintaan apabila kos melonjak, atau menyucikan (sanitize) output sebelum ia masuk ke pangkalan data anda. Ini bukan kes terpencil (edge cases). Ini adalah ciri-ciri utama perisian dunia sebenar. Mengendalikan perkara ini adalah tugas harness tersebut.
Apa yang Sebenarnya Dilakukan oleh Harness
Anggaplah harness sebagai lapisan kejuruteraan yang mengubah model bahasa daripada penjana teks yang bijak kepada komponen perkhidmatan yang boleh dipercayai. Tanggungjawabnya adalah konkrit dan tidak glamor, itulah sebabnya ia sering terlepas pandang.
Pemilihan model untuk tugasan semasa. Bukan setiap interaksi memerlukan model asas yang paling berkuasa. Sesetengah tugasan memerlukan kuasa penaakulan mentah; yang lain hanya memerlukan kelajuan dan kos rendah. Harness yang dibina dengan baik menyalurkan permintaan secara bijak. Sebagai contoh, ejen sokongan pelanggan mungkin menggunakan model yang pantas dan murah untuk mengelaskan niat mesej yang masuk—permintaan bayaran balik berbanding soalan penghantaran. Jika niat tersebut menunjukkan pertikaian polisi yang kompleks, harness akan meningkatkan tugasan tersebut kepada model penaakulan yang lebih berat. Jika pengguna hanya mahukan pautan penjejakan, model ringan akan menjawab dengan segera dan kadar penggunaan (burn rate) anda kekal terkawal.
Mengendalikan aliran data. Aplikasi sebenar tidak wujud dalam vakum. Ejen AI sering perlu menarik dokumen daripada stor vektor, membuat pertanyaan pada CRM, membaca aktiviti pengguna baru-baru ini, dan kemudian mensintesiskan semua itu menjadi respons yang koheren. Harness menguruskan pengambilan (ingestion) tersebut. Ia mengambil cebisan konteks yang betul, memastikan ia muat dalam had token tanpa hilang relevansi, menyusunnya untuk model, dan menghantar output yang terhasil kepada sistem seterusnya dalam rantaian. Tanpa penyelarasan (orchestration) ini, model tersebut sama ada kekurangan konteks atau tenggelam dalam gangguan (noise).
Menguruskan ralat. LLM gagal dengan cara yang tidak dilakukan oleh perkhidmatan tradisional. Ia menghasilkan halusinasi output berstruktur. Ia mengembalikan pelengkapan (completions) yang kosong. Ia melanggar arahan format sebaik sahaja versi model asas berubah sedikit. Harness menganggap kegagalan ini sebagai tingkah laku yang dijangka dan bukannya kejutan. Ia mengesahkan skema, menangkap respons yang salah format, melaksanakan logik cubaan semula dengan exponential backoff, dan beralih kepada penyedia sekunder atau hasil yang disimpan dalam cache apabila titik akhir (endpoint) utama tersangkut. Apabila semua cara gagal, ia akan menyerahkan kepada operator manusia dan bukannya memberikan maklumat tidak masuk akal secara senyap kepada pelanggan yang membayar.
Memastikan kebolehpercayaan sistem. Produksi bermaksud pengguna serentak, had kos, dan kependaman (latency) yang tidak menentu. Harness menguatkuasakan had kadar, menguruskan pengumpulan sambungan (connection pooling), dan melaksanakan pemutus litar (circuit breakers) supaya satu penyedia model yang lembap tidak boleh membekukan keseluruhan aplikasi anda. Ia merekodkan setiap interaksi supaya anda boleh menjejaki mengapa sesi tertentu terganggu, dan ia menguruskan versi prom anda supaya penggunaan (deployment) tidak secara tidak sengaja menulis semula personaliti ejen anda tanpa jejak audit.
Model yang Sama, Hasil yang Berbeza Sama Sekali
Ini menjelaskan satu fenomena yang mengelirukan banyak pasukan produk. Dua syarikat boleh bermula dengan model asas yang sama—pemberat yang sama, tetingkap konteks yang sama, tarikh akhir latihan yang sama—tetapi melancarkan pengalaman yang terasa sangat berbeza. Satu terasa rapuh, perlahan, dan pelupa secara aneh. Yang satu lagi terasa pantas, konsisten, dan boleh dipercayai.
Perbezaannya bukan pada model itu sendiri. Ia adalah sistem yang membungkusnya. Satu pasukan menganggap model sebagai keseluruhan produk. Pasukan yang lain menganggapnya sebagai satu komponen di dalam seni bina yang berdisiplin. Harness (kerangka kawalan) adalah tempat di mana disiplin itu wujud.
Peralihan daripada Prompt kepada Seni Bina
Pembangunan AI pada peringkat awal meletakkan kejuruteraan prompt sebagai fokus utama. Mengubah suai ayat, menambah contoh, dan menyusun arahan lakon peranan boleh meningkatkan kualiti output secara drastik. Kemahiran itu masih penting, tetapi ia telah mencapai tahap pulangan yang semakin berkurangan sebagai benteng persaingan. Anda tidak boleh menyelesaikan masalah polisi cubaan semula (retry policy) yang hilang atau saluran data yang berselirat yang membocorkan konteks peribadi ke dalam respons yang menghadap awam hanya dengan teknik prompting.
Peralihan sebenar yang sedang berlaku sekarang adalah ke arah seni bina perisian. Jurutera sedang mereka bentuk mesin keadaan (state machines), menentukan antara muka yang ketat antara lapisan model dan logik aplikasi, serta menganggap bukan-penentuan (non-determinism) sebagai satu kebimbangan kejuruteraan yang utama. Mereka mengajukan soalan-soalan sistem teragih: Bagaimanakah keadaan (state) kekal merentasi perbualan berbilang pusingan? Apa yang berlaku apabila alatan hiliran tidak tersedia? Bagaimanakah kita menguji sistem yang komponen terasnya bersifat probabilistik? Inilah soalan-soalan yang membezakan antara sebuah mainan dengan sebuah alat.
Membina untuk Produksi: Kebolehlihatan dan Kawalan
Jika anda serius tentang pelancaran produk, harness menuntut dua kualiti melebihi segala-galanya: kebolehlihatan (observability) dan orkestrasi (orchestration).
Kebolehlihatan bermaksud anda boleh melihat apa yang diterima oleh model, apa yang dikembalikannya, dan berapa lama setiap langkah mengambil masa. Ia bermaksud menjejaki gelung keputusan ejen merentasi empat belas panggilan alatan dan mengenal pasti dengan tepat di mana ia mula berpusing dalam gelung atau terpesong daripada misi. Tanpa keterlihatan tersebut, menyahpepijat sistem AI adalah seperti membaiki enjin kereta dalam kegelapan.
Orkestrasi bermaksud logik perniagaan anda kekal berasingan daripada lapisan interaksi model anda. Ia bermaksud mengurus versi prompt sama seperti anda mengurus versi kod, supaya penggunaan (deployment) baharu tidak mengubah tingkah laku secara senyap. Ia bermaksud menguji mod kegagalan secara sengaja—menghentikan API di tengah-tengah permintaan, memasukkan hasil alatan yang salah format, mensimulasikan limpahan tetingkap konteks—untuk melihat sama ada harness tersebut dapat mengekalkan sistem agar tetap stabil. Rangka kerja (framework) datang dan pergi, dan sama ada anda menggunakan perpustakaan orkestrasi sedia ada atau membina sendiri, disiplin adalah lebih penting daripada nama jenama.
Intipati Sebenar
Model asas akan terus bertambah baik. Ia akan menjadi lebih pantas, lebih murah, dan lebih berkemampuan. Namun, enjin yang lebih berkuasa tidak dapat membaiki casis yang rosak. Pasukan yang akan menang dalam beberapa tahun akan datang bukanlah mereka yang mempunyai akses model yang paling canggih. Mereka adalah mereka yang membina harness yang boleh dipercayai, boleh diperhatikan, dan diorkestrasi dengan baik. Mereka akan menukar model tanpa perlu menulis semula aplikasi mereka. Mereka akan mengawal kos kerana harness tersebut mengawal setiap token. Mereka akan tidur nyenyak pada waktu malam kerana sistem mereka gagal secara teratur (fail gracefully).
Berhenti taksub dengan model secara berasingan. Mula taksub dengan sistem yang menjalankannya. Masa depan milik jurutera yang membina sistem yang lebih pintar di sekeliling model yang pintar.
Artikel ini berdasarkan idea yang dibincangkan oleh Abdulaziz Zos dalam "Beyond The Model".
Untuk perbincangan lanjut mengenai kejuruteraan AI dan reka bentuk sistem, layari GyaanSetu learning community.
