Yang akan Anda dapatkan dari artikel ini
- Tentukan kriteria penyelesaian tugas dan batas kegagalan terlebih dahulu, lalu pilih arsitektur deployment.
- Deployment runtime aplikasi dan inferensi model adalah dua keputusan berbeda; tidak harus menghosting model sendiri.
- Pemulihan tugas berdurasi panjang memerlukan pemeriksaan status eksekusi sekaligus dampaknya pada sistem bisnis eksternal.
- Lakukan validasi penerimaan dengan menggabungkan hasil bisnis, jejak eksekusi, sampel anomali, dan simulasi pemulihan.
- Peluncuran bertahap dan rollback harus mencakup tugas yang sedang berjalan, kompatibilitas status, dan penulisan data bisnis yang sudah terjadi.
Peta jalan peluncuran: tetapkan batasan terlebih dahulu, lalu validasi satu per satu
Kunci men-deploy agen AI ke lingkungan produksi bukanlah menambah model atau kompleksitas orkestrasi, melainkan memastikan kegagalan tugas dapat didiagnosis dan dipulihkan, serta perubahan dapat diverifikasi dan dibatalkan. Urutan yang disarankan: tentukan tugas dan kriteria penyelesaiannya, pilih bentuk deployment, siapkan runtime dan penyimpanan status, terapkan batasan keamanan, evaluasi tugas yang representatif, lalu lakukan peluncuran bertahap dengan porsi trafik kecil serta siapkan petugas siaga dan rollback.
Tentukan terlebih dahulu kondisi pemicu, input, alat yang boleh dipanggil, hasil akhir bisnis, penanganan timeout, dan titik konfirmasi manusia. Jika alur tetap sudah memenuhi kebutuhan, tidak perlu menerapkan banyak agen hanya demi menjadikannya berbasis agen. Untuk pertimbangan antara alur kerja dan agen, lihat pembahasan Anthropic tentang cara membangun agen. Untuk detail integrasi antarmuka sistem dan izin alat, lihat Cara mengintegrasikan agen AI dengan sistem perusahaan yang sudah ada.
Memilih bentuk deployment: sesuaikan dengan batasan
Tabel berikut digunakan untuk membandingkan batasan arsitektur, bukan untuk menyimpulkan kinerja atau harga. Kemampuan, kuota, dan tanggung jawab operasional setiap platform kandidat harus diperiksa berdasarkan dokumentasi terkininya.
| Bentuk | Kondisi yang lebih sesuai | Hal yang perlu dipastikan |
|---|---|---|
| Runtime terkelola | Ingin mengurangi pemeliharaan infrastruktur dasar, dan pola tugas sesuai dengan batasan platform | Durasi eksekusi, batas jaringan, persistensi status, ekspor log, dan kuota |
| Layanan kontainer biasa | Sudah memiliki kemampuan deployment dan operasional kontainer | Pemulihan setelah restart, antrean atau penjadwalan, penskalaan elastis, dan pemeriksaan kesehatan |
| Kubernetes | Tim sudah memiliki tata kelola klaster dan memerlukan kontrol deployment, penskalaan, serta rilis yang lebih terperinci | Operasional klaster, isolasi sumber daya, probe, strategi rilis, dan kompatibilitas status |
Saat menggunakan inferensi melalui API model, komponen yang di-deploy biasanya mencakup runtime aplikasi, alat dengan kontrol akses, dan layanan status; keputusan untuk membangun lingkungan inferensi sendiri perlu dievaluasi secara terpisah berdasarkan latensi, batas data, ketersediaan model, dan kebutuhan operasional. Dokumentasi Deployment Kubernetes dapat dijadikan referensi untuk mekanisme pembaruan bergulir dan pengembalian ke revisi sebelumnya, tetapi ini tidak berarti Agent harus di-deploy di Kubernetes.
Arsitektur produksi minimal: menghubungkan permintaan, eksekusi, status, dan observabilitas
调用方 → 鉴权入口/请求校验 → 任务执行器(同步短任务或异步任务 ID)
→ Agent 运行逻辑 → 模型端点/受控工具 → 状态存储与结果核验
→ 日志、指标、追踪与告警
Untuk tugas singkat, pemanggil dapat menunggu hasilnya; jika durasi tugas melampaui batas waktu tunggu pemanggil atau memerlukan pemulihan lintas proses, sistem dapat mengembalikan ID tugas agar klien dapat memeriksa status atau menerima notifikasi penyelesaian. Tetapkan status tugas, semantik pembatalan, batas waktu tunggu, dan izin untuk membaca hasil.
Integrasi sistem tidak dibahas ulang di sini; lihat pembahasan sebelumnya dalam Cara mengintegrasikan AI Agent dengan sistem perusahaan yang sudah ada. Untuk tanggung jawab siaga operasional dan kolaborasi rekayasa, lihat Tanggung jawab delivery rekayasa dan batas kolaborasi FDE. Tanggung jawab spesifik perlu ditetapkan dalam proyek.
Persiapan artefak rilis: memastikan perubahan dapat direproduksi
Sertakan kode, berkas pengunci dependensi, image runtime, konfigurasi lingkungan, templat prompt, serta versi konfigurasi model dan alat dalam catatan perubahan. Validasi dependensi selama proses build; pisahkan lingkungan pengembangan, pengujian, dan produksi; injeksikan kredensial melalui mekanisme konfigurasi terkontrol, bukan dengan menuliskannya ke repositori kode atau log biasa. Kelola kunci API model, kredensial layanan alat, dan identitas bisnis secara terpisah.
Daftar periksa rilis setidaknya harus memastikan bahwa:
- Titik masuk aplikasi, pemeriksaan kesehatan, batas sumber daya, dan penanganan sinyal penghentian telah diverifikasi;
- Versi dependensi, digest image, dan perubahan konfigurasi dapat ditelusuri;
- Prompt, kontrak alat, pengenal model, dan parameter utama memiliki catatan versi;
- Sampel pengujian regresi dan hasil evaluasi dapat dikaitkan dengan versi rilis;
- Versi tujuan rollback dapat dijalankan dan mampu membaca format status saat ini atau secara tegas menolak pemrosesannya.
Pemulihan tugas berdurasi panjang: checkpoint tidak menjamin operasi bisnis dieksekusi tepat satu kali
Kemampuan pemulihan mencakup tiga lapisan: catatan tugas, status eksekusi, dan efek samping operasi bisnis—apakah tugas berada dalam antrean, sedang berjalan, atau menunggu intervensi manusia; langkah mana yang telah dijalankan; serta apakah penulisan ke sistem eksternal berhasil. Menyimpan teks percakapan saja belum tentu cukup untuk memulihkan konteks eksekusi, dan checkpoint saja juga tidak dapat membuktikan hasil operasi penulisan ke sistem eksternal.
Dengan LangGraph sebagai contoh, dokumentasinya membedakan checkpointer yang menyimpan status eksekusi per thread dengan store yang berbagi data lintas thread. Pemulihan setelah proses dimulai ulang memerlukan backend persistensi yang sesuai, serta verifikasi penulisan, pembacaan, isolasi, retensi, dan pemulihan dari kegagalan; penyimpan berbasis memori tidak dapat dijadikan dasar persistensi lintas mulai ulang. Lihat Dokumentasi Persistensi LangGraph.
Strategi percobaan ulang harus membedakan batas waktu untuk setiap percobaan, kesalahan yang dapat dicoba ulang, dan penanganan setelah batas percobaan ulang tercapai. Alat yang menimbulkan efek samping harus dirancang dengan kunci idempotensi atau mekanisme deduplikasi, serta memeriksa hasil bisnis sebelum mencoba ulang: panggilan yang melewati batas waktu tidak berarti penulisan belum terjadi. Jika hasilnya tidak dapat dipastikan, alihkan ke pemeriksaan manual atau jalankan alur kompensasi; checkpoint, antrean, dan percobaan ulang saja tidak memberikan jaminan pemrosesan tepat satu kali secara menyeluruh. Lihat Dokumentasi Penanganan Kegagalan LangGraph.
Kontrol keamanan: tetapkan kondisi pemblokiran untuk tindakan berisiko tinggi
Sebelum rilis, setidaknya verifikasi hal-hal berikut:
- Dokumen eksternal, halaman web, dan masukan pengguna tidak dapat memperluas izin alat dengan sendirinya;
- Layanan alat memvalidasi identitas, cakupan sumber daya, dan parameter pada setiap panggilan; tindakan berdampak tinggi memerlukan konfirmasi manusia secara eksplisit;
- Kredensial dipisahkan berdasarkan lingkungan dan dapat dirotasi; pencatatan log diminimalkan sesuai tingkat sensitivitas, data sensitif disamarkan, dan periode retensi ditetapkan;
- Catatan persetujuan dikaitkan dengan permintaan, pelaksana, tindakan yang akan dijalankan, dan hasil bisnis akhir;
- Pengujian akses tanpa izin, injeksi prompt, pengiriman berulang, dan kebocoran data sensitif semuanya memiliki hasil penolakan yang diharapkan.
Materi OWASP tentang Ancaman dan Mitigasi AI Agentik dapat membantu menyusun daftar ancaman, tetapi bukan merupakan bukti keamanan atau kepatuhan sistem ini.
Gerbang evaluasi: tinjau hasil sekaligus proses
Jangan menganggap pernyataan Agen bahwa tugas “telah selesai” sebagai bukti penerimaan. Untuk setiap jenis tugas, tentukan kondisi keberhasilan yang dapat diverifikasi di lingkungan, seperti status rekaman yang dituju, format keluaran, dan tindakan yang dilarang; simpan jejak eksekusi untuk mengidentifikasi kegagalan dalam perencanaan, pemanggilan alat, atau validasi hasil. Lihat Penjelasan Anthropic tentang Metode Evaluasi Agen.
Sampel harus mencakup masukan normal, kolom yang tidak diisi, informasi yang bertentangan, panggilan alat yang melewati batas waktu, penolakan izin, permintaan berulang, dan upaya pengarahan oleh konten eksternal. Sampel penting dapat dijalankan beberapa kali dengan mencatat variasi hasilnya. Gerbang rilis dapat mencakup hasil tugas, tindakan yang dilarang, penanganan pengecualian, latihan pemulihan, dan jalur pengambilalihan oleh manusia; ambang batas ditentukan berdasarkan risiko bisnis, tolok ukur awal yang ada, dan hasil pengujian.
Pemantauan: kualitas, latensi, pemulihan, dan biaya
Untuk setiap metrik, tentukan definisi pengukuran, lokasi pengumpulan data, kondisi pemicu peringatan, dan penanggung jawab:
| Dimensi | Aspek yang dipantau | Metode verifikasi |
|---|---|---|
| Hasil bisnis | Jumlah tugas yang selesai, jumlah tugas yang valid, status akhir | Rekonsiliasi dengan status di sistem bisnis, bukan hanya menghitung respons model |
| Intervensi manusia | Tingkat pengambilalihan, waktu tunggu persetujuan, alasan koreksi manual | Bedakan persetujuan yang diperlukan dari kegagalan sistem |
| Stabilitas | P95 menyeluruh, kesalahan alat, jumlah percobaan ulang, batas waktu dan hasil pemulihan | Rinci berdasarkan jenis tugas dan dependensi, serta tentukan periode pengukuran dengan jelas |
| Biaya | Penggunaan token, pemanggilan model dan alat, biaya per tugas yang berhasil | Gunakan jumlah tugas yang berhasil sebagai penyebut dan tentukan cakupan biaya |
Jejak eksekusi digunakan untuk menemukan penyimpangan dalam eksekusi multilangkah, sedangkan status akhir bisnis digunakan untuk memastikan tugas telah selesai. Kolom log yang perlu disamarkan, cakupan akses, dan masa retensi harus ditentukan sesuai proyek; amati kondisi acuan pada tahap awal peluncuran, lalu sesuaikan ambang peringatan berdasarkan risiko bisnis.
Peluncuran bertahap, rollback, dan penanganan tugas yang sedang diproses
Sebelum rilis, lakukan pengujian regresi terhadap kombinasi kode, prompt, konfigurasi model, dan kontrak alat; validasi terlebih dahulu dengan trafik terbatas atau tugas berisiko rendah, lalu tingkatkan trafik secara bertahap. Tetapkan kondisi penghentian, misalnya hasil bisnis yang tidak normal, kegagalan pengujian akses di luar kewenangan, atau tingkat kesalahan dan latensi yang melampaui batas yang ditentukan tim.
Saat terjadi gangguan, hentikan sementara penerimaan tugas baru atau nonaktifkan alat berisiko tinggi, inventarisasi tugas yang sedang berjalan, menunggu, dan sudah selesai, verifikasi efek samping pada sistem eksternal, lalu kembalikan aplikasi ke versi yang telah divalidasi. Pastikan versi lama kompatibel dengan format status yang ada; alihkan tugas yang tidak dapat dipulihkan secara otomatis ke penanganan manual atau jalankan tindakan kompensasi yang telah disetujui. Kubernetes Deployment dapat dijadikan referensi rilis jika menggunakan Kubernetes; rollback aplikasi tidak secara otomatis membatalkan penulisan data bisnis yang sudah terjadi.
Latihan pembelajaran: memvalidasi jalur pemulihan melalui injeksi gangguan
Berikut adalah rancangan latihan pembelajaran, bukan studi kasus pelanggan atau hasil pengukuran aktual. Tetapkan tugas berupa “membuat laporan, lalu menuliskan hasilnya setelah konfirmasi manusia”, dan catat ekspektasi, hasil aktual, serta bukti pada setiap percobaan:
| Skenario injeksi gangguan | Fokus penerimaan |
|---|---|
| Dependensi model atau alat mengalami batas waktu | Bedakan batas waktu satu percobaan dari batas waktu total tugas; periksa hasil bisnis sebelum mencoba ulang |
| Proses eksekusi dimulai ulang | Apakah status tugas disimpan secara persisten; apakah eksekusi dilanjutkan dari titik yang dapat diverifikasi |
| Permintaan atau pengiriman berulang | Apakah idempotensi atau deduplikasi mencegah penulisan berulang |
| Rollback ke versi aplikasi lama | Apakah kompatibilitas format status dikenali; apakah proses dihentikan dengan aman dan dialihkan ke penanganan manual jika tidak kompatibel |
Latihan harus memeriksa apakah status bisnis dan catatan eksekusi sesuai dengan ekspektasi, serta menetapkan penanggung jawab dan alur penanganan untuk tugas yang bermasalah.
Daftar periksa penerimaan peluncuran
- Cakupan tugas, definisi penyelesaian, tindakan yang dilarang, dan titik konfirmasi manusia telah didokumentasikan.
- Bentuk deployment sesuai dengan durasi tugas, kebutuhan pemulihan, dan kemampuan operasional tim.
- Dependensi, image, prompt, konfigurasi model, dan kontrak alat dapat ditelusuri.
- Status tugas, persistensi, dan efek samping bisnis masing-masing dapat diverifikasi, serta percobaan ulang dilindungi oleh mekanisme idempotensi.
- Pengujian izin akses, injeksi prompt, log sensitif, dan persetujuan manusia telah lulus.
- Evaluasi mencakup tugas yang representatif, sampel kasus abnormal, verifikasi hasil, dan skenario pemulihan.
- Definisi metrik, penanggung jawab peringatan, kondisi penghentian peluncuran bertahap, dan prosedur piket telah dikonfirmasi.
- Versi rollback, penanganan tugas yang sedang diproses, kompatibilitas status, dan alur kompensasi bisnis telah diuji melalui latihan.
Pertanyaan umum tentang deployment
Tanya: Apakah harus menggunakan Kubernetes? Jawab: Tidak selalu. Jika tim sudah memiliki platform yang memenuhi kebutuhan durasi tugas, pemulihan status, isolasi jaringan, dan operasional, tidak perlu menambah kompleksitas klaster hanya demi agen.
Tanya: Apakah deployment agen memerlukan model yang dihosting sendiri? Jawab: Tidak selalu. Jika inferensi dilakukan melalui API model, biasanya cukup men-deploy runtime aplikasi, alat yang dikendalikan, dan komponen penyimpanan status; untuk inferensi yang dihosting sendiri, evaluasi secara terpisah batas data, latensi, ketersediaan, dan kebutuhan operasional.
Tanya: Apakah tugas akan hilang setelah layanan dimulai ulang? Jawab: Tergantung pada pencatatan tugas, persistensi status eksekusi, dan validasi proses pemulihan. Mengandalkan memori proses saja tidak cukup untuk mendukung pemulihan setelah restart. Keberhasilan operasi penulisan ke sistem eksternal juga harus diperiksa agar tidak dieksekusi ulang.
Tanya: Bagaimana mencegah penulisan ganda akibat percobaan ulang? Jawab: Rancang kunci idempotensi atau catatan deduplikasi untuk operasi bisnis, lalu periksa status sistem eksternal sebelum mencoba ulang. Jika status tidak dapat dipastikan, hentikan sementara percobaan ulang otomatis dan alihkan ke pemeriksaan manual atau proses kompensasi.
Tanya: Berapa ambang tingkat keberhasilan untuk peluncuran? Jawab: Tidak ada angka yang berlaku universal. Tetapkan kriteria kelulusan dan peringatan berdasarkan risiko tugas, tolok ukur bisnis, dan hasil pengujian. Validasi juga pencegahan tindakan terlarang, pengambilalihan oleh manusia, pemulihan, dan hasil bisnis.
Pertanyaan umum
Referensi dan sumber praktik
Periksa dokumen aslinya, atau unduh materi pendamping untuk diskusi proyek Anda. Informasi dari sumber eksternal mengikuti keterangan terkini di situs sumbernya.
- Anthropic: Membangun agen yang efektif (terbuka di tab baru)
- Kubernetes: Deployment (terbuka di tab baru)
- LangGraph: Persistensi (terbuka di tab baru)
- LangGraph: Toleransi kegagalan (terbuka di tab baru)
- OWASP: Ancaman AI berbasis agen dan mitigasinya (terbuka di tab baru)
- Anthropic: Memahami evaluasi untuk agen AI (terbuka di tab baru)
- Pengumuman Menlo Ventures (belum diverifikasi; tidak digunakan sebagai bukti) (terbuka di tab baru)