Mengatasi Masalah Biaya dan Keamanan Saat Menyematkan Agen AI ke Aplikasi Next.js Tanpa Staf Infrastruktur
19 juin 2026
0
Computing/SoftwareRelated Video
53:42Ship 26 London - Pidato Utama
Vercel
Comments (0)
Log in to leave a comment
No posts yet
53:42Vercel
Log in to leave a comment
No posts yet
Agen otonom berpikir dan memanggil alat sampai tujuan tercapai. Struktur loop inilah masalahnya. Jika panggilan alat tertentu gagal atau sistem terjebak dalam kondisi pengulangan instruksi sistem, biaya API ribuan dolar bisa terjadi dalam hitungan menit. Menurut data platform Vercel tahun 2026, commit yang dihasilkan oleh agen pengodean melebihi separuh dari total traffic deployment, dan jumlah token yang melewati AI Gateway melonjak 10 kali lipat dibandingkan tahun sebelumnya. Inilah alasan mengapa desain untuk memblokir penyalahgunaan token secara proaktif di lapisan gateway sangat diperlukan. Pembatasan sederhana berbasis IP sulit mendeteksi loop tak terbatas semantik di dalam agen. Anda perlu membangun lapisan pemfilteran yang menghubungkan Next.js Edge Middleware dengan Upstash Redis untuk menghitung kesamaan kosinus antara dua vektor prompt dan secara real-time.
ext{Cosine Similarity} = rac{mathbf{A} cdot mathbf{B}}{|mathbf{A}| |mathbf{B}|}Sistem pertahanan middleware real-time untuk memblokir panggilan loop tak terbatas diimplementasikan dalam tiga tahap. Buat file middleware.ts di root proyek dan manfaatkan @upstash/ratelimit untuk menentukan sliding window rate limiter yang hanya mengizinkan maksimal 5 permintaan eksekusi per sesi dalam waktu 30 detik. Selanjutnya, panggil fungsi embed dari AI SDK dan model text-embedding-3-small untuk mengekstrak embedding vektor dari prompt yang masuk secara real-time, lalu tulis logika untuk menghitung kesamaan kosinus dengan vektor prompt sebelumnya yang tersimpan di Upstash Redis. Jika kesamaan yang dihitung melebihi 0,95, sistem dianggap berada dalam status loop tak terbatas, sehingga pemanggilan backend LLM dihentikan seketika, dan buat pernyataan kondisional untuk memaksa pengembalian agent:response:${sessionId}—yaitu data respons sukses sebelumnya yang tersimpan di Redis. Setelah menyelesaikan tahap ini, konsumsi sumber daya yang tidak normal akan diblokir secara real-time, sehingga biaya operasional API LLM dapat dihemat hingga 40%.
Ketika agen memproses skrip yang dihasilkan pengguna seperti riset web atau analisis data, agen tersebut terpapar pada serangan injeksi prompt. Jika penyerang berhasil membobol sandbox dan menjalankan perintah shell host, kredensial basis data mentah dan variabel lingkungan akan bocor. Untuk mengisolasi lapisan komputasi secara fisik dari serangan jahat, gunakan teknologi Vercel Sandbox, yaitu microVM berbasis AWS Firecracker yang ringan dan memiliki performa booting instan dalam hitungan milidetik. Vercel Sandbox, yang mengisolasi runtime Node.js 26 baru dan secara otomatis mengubah ukuran total 4GB RAM pada rasio 2GB per 2 vCPU, mencegah pencurian kredensial sehingga mengurangi waktu audit keamanan manual lebih dari 5 jam per minggu.
Lingkungan eksekusi kode yang aman dan terisolasi dikendalikan oleh sandbox runner berbasis whitelist. Tulis file sandbox.config.ts di root proyek dan tetapkan atribut networkPolicy ke deny-all untuk memblokir injeksi prompt melalui pembobolan eksternal serta kebocoran variabel lingkungan DB khusus ke luar. Dalam envWhitelist, yang merupakan daftar variabel lingkungan yang boleh disebarkan ke dalam, daftarkan hanya NODE_ENV, TZ, dan AGENT_RUN_MODE. Selanjutnya, buat skrip sandbox-runner.ts, tulis file kode mentah input eksternal runner_entry.js ke direktori isolasi melalui struktur sandbox.writeFiles, lalu panggil sandbox.runCommand untuk menjalankan runtime dalam kondisi di mana informasi sensitif host tidak dapat masuk. Masukkan pernyataan kondisional yang melacak ukuran byte akumulatif di dalam loop for await yang memantau log output sandbox secara streaming, dan jika total stdout dan stderr melebihi 50KB, segera jalankan sandbox.stop() untuk membangun batas kesalahan yang memaksa pembersihan mesin virtual. Dengan menerapkan prosedur isolasi keamanan ini, serangan DoS yang melumpuhkan sistem dapat ditangkis, serta kebocoran sumber daya dan biaya komputasi yang tidak perlu dapat dihindari.
Agen web beroperasi sebagai bisnis jangka panjang yang memakan waktu mulai dari beberapa menit hingga beberapa jam hingga selesai. Jika terjadi kesalahan pengecualian seperti pemutusan jaringan atau timeout, ada risiko bahwa semua hasil dari tahap eksplorasi perantara yang telah selesai akan hilang, menyebabkan biaya yang harus dibayar dua kali lipat karena harus menghabiskan token dari awal lagi. Untuk mengatasi masalah hilangnya status terdistribusi, gunakan SDK Vercel Workflows dan pola eksekusi tahan lama (durable execution) yang disediakan oleh framework Eve. Dengan menggunakan arahan compiler use workflow dan use step, meskipun masa pakai kontainer serverless berakhir, data snapshot dari langkah terakhir yang berhasil sebelum kegagalan akan disimpan di antrean log memori persisten, sehingga bisnis dapat dilanjutkan dari tahap kegagalan tanpa perlu eksekusi duplikat.
Sistem checkpointing tahan lama yang dapat memulihkan kegagalan dibangun dengan menyematkan kode interceptor pelacakan status yang memanggil kueri upsert ke infrastruktur penyimpanan yang terhubung dengan Vercel Connect. Definisikan DurableStateContext, yaitu struktur status inti untuk mengelola siklus hidup tugas agen, dan bagi tahap eksekusi saat ini menjadi Task_Start, API_Called, Data_Parsed, dan Task_Complete. Tulis fungsi interceptor upsertCheckpointState yang segera mencatat status konteks saat ini setiap kali langkah berhasil ke dalam penyimpanan Upstash Redis yang diikat melalui metode OIDC tanpa sertifikat autentikasi terpisah melalui Vercel Connect. Terakhir, implementasikan handler executeOrResumeAgent yang memproses permintaan coba lagi (retry) komunikasi agen untuk mencari status akhir berdasarkan ID sesi di basis data, lalu buat aliran kontrol untuk memaksa pemulihan alur kerja dari titik snapshot terbaru yang tersimpan, alih-alih menjalankan ulang tugas dari awal jika tahap sesi yang sedang berjalan bukan Task_Complete. Dengan menjalankan handler retensi status ini, inefisiensi restart dari awal saat terjadi timeout serverless atau kegagalan dapat dihilangkan, sehingga meningkatkan tingkat keberhasilan pekerjaan agen.
Untuk memigrasikan jalur API monolitik layanan web yang ada ke arsitektur agen berbasis AI SDK tanpa menghentikan lingkungan produksi, diperlukan kontrol bendera fitur (feature flag) dan percabangan routing edge real-time. Migrasi bertahap tanpa gangguan layanan dilakukan dengan cara menerapkan deployment canary secara bertahap ke jalur infrastruktur agen yang baru dirancang, sambil tetap mempertahankan API respons tunggal yang telah berjalan stabil. Jika teknologi Vercel Edge Config yang menjamin pembacaan edge CDN dengan latensi ultra-rendah dikombinasikan dengan lapisan middleware, Anda dapat mengontrol traffic dengan aman melalui pencarian flag rollout secara real-time tanpa overhead akses DB jarak jauh.
Untuk mencapai migrasi codebase lama tanpa gangguan, jalankan prosedur rollout produksi bertahap dalam 3 tahap. Pertahankan jalur bisnis lama yang sedang beroperasi /api/v1/generate dan buka file endpoint baru /api/v1/agent/generate tempat fitur agen AI SDK diintegrasikan. Tanamkan logika untuk membaca indikator ambang batas dinamis Vercel Edge Config, agent_canary_rate, dengan fungsi get di dalam middleware.ts Next.js, lalu bangun lingkungan canary yang melakukan percabangan dinamis melalui NextResponse.rewrite ke endpoint sistem agen baru hanya untuk 10% traffic pengguna di mana nilai hash ID unik browser dialokasikan ke sub-kelompok ambang batas 10%. Di dalam komponen UI frontend, konfigurasikan unifiedAgentRequest, yaitu klien adaptor komunikasi Fetch Wrapper hibrida yang memproses percabangan real-time sesuai nilai header Accept agar dapat menangani cara pemrosesan hasil JSON akhir jangka pendek yang lama dan output token SSE streaming dari agen asinkron yang baru. Dengan menerapkan framework migrasi ini, Anda dapat menyelesaikan perombakan sistem secara keseluruhan tanpa gangguan, sambil membatasi risiko beban sistem yang ada dan pengoperasian abnormal yang tidak terduga di area traffic kurang dari 10%.