Cara Membuat Agen AI Sendiri di VPS
Pelajari loop agen AI, tools, MCP, dan memory untuk membangun agen sendiri di VPS. Pahami cara model memilih tindakan, menjalankan command, dan membaca hasilnya.
Apa sebenarnya agen AI
Agen AI adalah loop yang membungkus language model. Model membaca situasi, menentukan satu tindakan, kode Anda menjalankan tindakan tersebut, lalu hasilnya dikirim kembali ke model. Loop ini berjalan lagi sampai tugas selesai. Itulah keseluruhan konsepnya. Chatbot biasa menjawab sekali lalu berhenti. Agen terus berjalan dan melakukan tindakan nyata di antara giliran prosesnya sendiri sampai mencapai tujuan yang Anda berikan. Loop ini cukup sederhana untuk ditulis sendiri dalam satu sore. Dari sinilah jalur pembelajaran agen secara bertahap dari awal dimulai, sebelum menambahkan tools, memory, dan safety.
Tindakan adalah bagian yang penting. Tanpa bantuan lain, language model hanya menghasilkan teks. Model tidak dapat membaca file, memanggil API, atau menjalankan command. Agen memberi model sekumpulan tools yang boleh digunakan serta cara untuk memintanya. Saat model ingin mencari di web atau menulis file, model tidak melakukan pekerjaan tersebut secara langsung. Model menghasilkan request terstruktur, kode Anda menjalankan tool, lalu hasilnya dikirim kembali sebagai hal berikutnya yang dibaca model. Model menyediakan penilaian; server Anda menyediakan kemampuan untuk menjalankan tindakan.
Tidak semua tugas memerlukan agen, dan menjadikan agen sebagai pilihan default adalah kesalahan umum. Jika langkah-langkahnya sudah diketahui sebelumnya, plain script lebih sederhana, lebih cepat, dan lebih andal. "Ambil halaman ini setiap jam lalu kirimkan harganya kepada saya melalui email" adalah scheduled job, bukan agen. Buat agen jika alurnya belum dapat ditentukan sebelumnya, yaitu saat model harus memeriksa hasil yang ditemukan dan menentukan tindakan berikutnya. Biaya penggunaan agen adalah ketidakpastian. Karena itu, gunakan agen hanya jika fleksibilitasnya sepadan.
Alat: cara agen bertindak
Alat adalah kemampuan apa pun yang Anda berikan kepada model dan Anda jelaskan dengan cukup baik agar model mengetahui kapan harus menggunakannya. Membaca file, menjalankan perintah shell, mengkueri database, dan mengirim pesan adalah contoh alat. Setiap alat memiliki nama, deskripsi singkat, dan daftar input. Anda menentukan alatnya; model memutuskan kapan harus memanggilnya. Pencarian web biasanya merupakan alat pertama yang layak ditambahkan. Jika Anda sudah menjalankan instance SearXNG sendiri, Anda dapat mengubahnya menjadi backend pencarian agen alih-alih membayar API pencarian komersial.
Mekanismenya sama di mana pun, apa pun model yang Anda gunakan. Model mengembalikan permintaan terstruktur yang mencantumkan nama alat dan mengisi inputnya. Kode Anda menerima permintaan tersebut, menjalankan fungsi yang sesuai, lalu mengirimkan hasilnya pada giliran berikutnya. Model membaca hasil tersebut, kemudian memanggil alat lain atau menulis jawaban akhirnya. Function calling adalah mekanisme dasar di balik setiap agen, dan loop yang menjalankannya hanya memerlukan beberapa baris kode biasa.
Di sinilah kendali Anda juga berada. Model dapat meminta untuk menjalankan suatu perintah, tetapi tidak ada yang berjalan sampai kode Anda memilih untuk menjalankannya. Jeda inilah yang dapat Anda gunakan untuk menampilkan permintaan persetujuan atas tindakan berbahaya, membatasi hal-hal yang boleh diakses alat, dan mencatat semua tindakan agen. Keamanan agen hanya sebaik alat yang Anda berikan dan pemeriksaan yang Anda terapkan sebelum alat tersebut dijalankan.
MCP: cara standar untuk menghubungkan alat
Menulis integrasi baru secara manual untuk setiap service akan cepat merepotkan. Model Context Protocol, atau MCP, adalah open standard yang mengatasi masalah ini. Anda tidak perlu menulis kode tool baru untuk file, database, dan issue tracker. Arahkan agent ke MCP server yang sudah menyediakan semua itu sebagai tool. Agent menggunakan satu protokol, sedangkan server menangani komunikasi dengan sistem yang sebenarnya.
Manfaat utamanya adalah penggunaan ulang. MCP server yang ditulis orang lain untuk service yang Anda gunakan dapat langsung tersedia bagi agent tanpa kode integrasi baru. Server yang Anda tulis juga dapat digunakan oleh agent apa pun yang mendukung protokol tersebut. Beberapa aplikasi self-hosted kini menyediakan MCP server sendiri: openGym, pelacak latihan menyediakan MCP server read-only, sehingga agent dapat menjawab pertanyaan tentang riwayat latihan Anda tanpa dapat mengubahnya. Pada VPS, hal ini penting karena Anda dapat menjalankan MCP server sebagai service kecil tersendiri di samping agent, masing-masing hanya dengan akses yang diperlukan. Jika sistem di balik server tersebut berada pada jaringan yang tidak dapat dilihat oleh VPS, seperti database di rumah atau kantor, mengiklankan jaringan tersebut ke tailnet dengan subnet router memungkinkan agent mengaksesnya melalui alamat privat tanpa mengekspos apa pun ke Internet publik. Saya menjelaskan konfigurasinya dalam menjalankan MCP server pada VPS.
Memori dan pengambilan
Language model tidak memiliki memori sendiri di antara pemanggilan. Semua informasi yang diperlukan untuk tugas saat ini harus diberikan pada setiap giliran. Untuk tugas singkat, hal ini tidak menjadi masalah karena seluruh percakapan dapat dimuat dalam satu request. Jumlah yang dapat dimuat bergantung pada context window. Model yang di-host sendiri dan disajikan melalui Ollama menggunakan context window default yang kecil, lalu secara diam-diam membuang giliran paling lama. Karena itu, menetapkan num_ctx agar sesuai dengan trafik yang dihasilkan loop Anda layak dilakukan sebelum Anda menyalahkan agent karena lupa. Untuk tugas yang lebih panjang, Anda harus mengelola memori sendiri. Ada dua pola yang perlu diketahui.
Pola pertama adalah scratchpad. Anda memberikan file yang dapat dibaca dan ditulis oleh agent, lalu memintanya mencatat hal-hal yang dipelajari selama proses berlangsung. Pada giliran atau sesi berikutnya, agent membaca kembali file tersebut dan melanjutkan dari posisi terakhir. Ini adalah memori dalam bentuk dokumen biasa. Pola ini berfungsi karena agent memperlakukan file tersebut seperti tool lainnya.
Pola kedua adalah retrieval. Jika agent memerlukan pengetahuan dari kumpulan dokumen besar yang tidak mungkin dimuat dalam satu request, Anda menyimpan dokumen tersebut dalam bentuk yang dapat dicari. Kemudian, saat diperlukan, Anda memasukkan hanya bagian yang relevan ke dalam konteks model. Pola ini disebut retrieval-augmented generation, atau RAG. Agent mengajukan pertanyaan, kode Anda menemukan beberapa bagian yang cocok, lalu hanya bagian tersebut yang dikirim ke model. Penyimpanan berada di server Anda, sehingga dokumen privat tidak pernah meninggalkan server.
Banyak agent, satu koordinator
Satu agent dengan banyak tool dapat menangani sebagian besar tugas. Jika pekerjaan berukuran besar atau secara alami terbagi menjadi beberapa bagian, pola yang berbeda dapat membantu: agent koordinator yang mendelegasikan tugas kepada sub-agent khusus. Koordinator memecah tujuan menjadi beberapa bagian, menyerahkan setiap bagian kepada sub-agent yang dirancang untuk jenis pekerjaan tersebut, lalu menggabungkan hasilnya. Delegasi memerlukan saluran komunikasi antarbagian. Versi paling sederhana sudah tersedia di server Anda: dua sesi Claude Code pada VPS yang sama dapat saling mengirim pesan. Cara ini murah untuk menguji cara kerja serah terima sebelum Anda membangun mekanisme koordinasi sendiri.
Keuntungannya adalah fokus. Sub-agent dengan tugas yang spesifik dan kumpulan tool yang kecil dapat mengambil keputusan lebih baik daripada satu agent generalis yang menangani semuanya. Bagian-bagian yang independen juga dapat dijalankan secara bersamaan. Biayanya adalah koordinasi, dan biaya ini nyata. Karena itu, gunakan satu agent sampai tugas benar-benar memerlukan lebih banyak agent. Mulailah dengan sederhana, lalu tambahkan agent hanya ketika satu agent jelas kewalahan.
Self-hosted atau hosted: model mana yang menjalankan agent Anda
Model adalah satu-satunya bagian dari agent yang tidak harus Anda jalankan sendiri, dan memilih tempat model tersebut dijalankan merupakan keputusan terbesar yang akan Anda ambil. Model hosted, yang diakses melalui API, memberi kemampuan penalaran terkuat tanpa perlu mengoperasikan apa pun: Anda mengirim teks, lalu menerima teks. Model self-hosted berjalan di server Anda sendiri. Dengan demikian, setiap permintaan tetap privat, biayanya berupa tarif tetap alih-alih biaya per token, dan model tidak pernah bergantung pada pihak lain agar tetap aktif. Imbalannya adalah kemampuan dan upaya operasional. Model hosted terbaik lebih unggul daripada model yang dapat Anda jalankan sendiri, sedangkan menjalankan model sendiri berarti menyediakan memori yang cukup agar model dapat dimuat.
Poin terakhir tersebut merupakan kendala praktisnya. Model harus muat di memori server Anda, dan jika Anda menggunakan GPU, model juga harus muat di video memory GPU tersebut. Model yang terlalu besar untuk hardware tidak akan dapat dimuat. Sebelum merencanakan agent self-hosted, periksa apakah model yang Anda inginkan muat di mesin yang tersedia:
Jika angkanya tidak sesuai, Anda memiliki tiga pilihan: pilih model yang lebih kecil, gunakan quantization yang lebih agresif untuk memperkecil ukurannya, atau gunakan hosted API untuk penalaran dan simpan hanya tools serta data Anda di server. Banyak agent self-hosted memulai dengan model lokal melalui Ollama pada VPS lalu beralih ke hosted API untuk langkah-langkah yang paling sulit.
Bagian server adalah bagian yang berbahaya
Agent yang dapat menjalankan perintah shell dan menulis file memiliki kemampuan besar. Karena itu, agent juga berbahaya. Penilaian model biasanya baik, tetapi tidak sempurna. Instruksi yang keliru, bug, atau input berbahaya dapat mengubah agent yang membantu menjadi agent yang menghapus data yang salah atau membocorkan rahasia. Keamanan bukan pilihan. Pada server, keamanan adalah bagian yang paling penting.
Beberapa kebiasaan memberikan perlindungan terbesar. Jalankan agent sebagai pengguna khusus tanpa hak istimewa, jangan pernah sebagai root, sehingga dampak kesalahan tetap terbatas; alasan yang sama berlaku pada menjalankan service sebagai pengguna tanpa hak istimewa. Simpan rahasianya, seperti API key, di luar kode dan pastikan hanya pengguna tersebut yang dapat membacanya. Gunakan sandbox untuk tool yang berinteraksi dengan sistem, sehingga agent hanya dapat mengakses hal yang benar-benar diperlukan. Jika Anda tidak ingin menulis semua pemeriksaan secara manual, plugin DeepSeek Harness yang layak diinstal menyediakan komponen siap pakai untuk kebutuhan yang sama: aturan izin tool, pemindaian prompt injection, dan batas pengeluaran agent sebelum agent dihentikan. Untuk contoh penerapan hardening pada agent self-hosted nyata, lihat menjalankan OpenClaw dengan aman pada VPS. Jika Anda lebih memilih model hosted untuk kemampuan AI-nya, panduan pendamping tentang membangun agent dengan Claude pada VPS menerapkan gagasan yang sama dengan model tertentu di belakangnya.
Sebagai contoh penerapan, membangun agent pribadi bergaya OpenClaw menggabungkan komponen-komponen ini. Jika Anda lebih memilih menjalankan agent yang sudah jadi, mulai dengan self-hosting Hermes Agent pada VPS atau menjalankan Agent Zero pada server sendiri. agent AI self-hosted terbaik pada 2026 membandingkan semua opsi siap pakai yang kami bahas secara berdampingan.
FAQ
Apa perbedaan antara agen AI dan chatbot?
Chatbot menjawab sebuah pesan lalu berhenti. Agen menjalankan loop: model menentukan tindakan, kode Anda menjalankannya, hasilnya dikirim kembali ke model, lalu proses ini berulang sampai tugas selesai. Perbedaannya, agen melakukan tindakan nyata di antara setiap giliran dengan memanggil tool untuk membaca file, menjalankan perintah, atau melakukan query ke service, bukan hanya menghasilkan teks.
Apakah saya memerlukan GPU untuk menjalankan agen AI pada VPS?
Hanya jika Anda meng-host model itu sendiri. Loop agen, tool, dan memorinya adalah kode biasa yang dapat berjalan dengan baik pada VPS normal tanpa GPU. GPU diperlukan jika Anda ingin menjalankan language model pada hardware sendiri karena model tersebut harus muat di memori. Jika Anda menggunakan model ter-host melalui API, komputasi berat berlangsung di tempat lain sehingga VPS dengan spesifikasi sederhana sudah cukup.
Apa itu MCP dan apakah saya memerlukannya untuk membuat agen?
MCP, yaitu Model Context Protocol, adalah standar terbuka untuk menghubungkan agen dengan tool dan sumber data. Anda tidak wajib menggunakannya karena setiap tool dapat ditulis secara manual. MCP menghemat pekerjaan tersebut dengan memungkinkan Anda menggunakan kembali server yang sudah tersedia untuk service umum dan mengekspos sistem Anda sendiri satu kali agar dapat digunakan oleh agen mana pun. MCP merupakan kemudahan yang semakin bermanfaat seiring bertambahnya jumlah integrasi.
Apakah aman memberikan akses ke server saya kepada agen AI?
Hal itu dapat aman jika aksesnya dibatasi. Keamanan agen yang menjalankan perintah bergantung pada account yang digunakannya dan tool yang Anda izinkan. Jalankan agen sebagai user tanpa hak istimewa, jauhkan secret dari jangkauannya, lakukan sandbox pada tool yang mengakses filesystem, dan minta persetujuan untuk tindakan yang sulit dibatalkan. Perlakukan agen sebagai kode yang tidak tepercaya tetapi kebetulan cerdas, dan berikan hanya akses yang diperlukan untuk tugas tersebut.