On this page11 sections
Menjalankan LLM (Large Language Model) di server pribadi terdengar berat, tapi dengan model yang tepat, VPS kecil pun bisa dipakai untuk chatbot sederhana, automation, atau eksperimen AI tanpa bergantung API berbayar. Tantangan terbesarnya bukan di cara install, tapi di cara memilih model yang benar-benar muat dan tetap responsif di RAM yang terbatas.
1. Kenapa Spesifikasi Server Sangat Menentukan
Berbeda dengan aplikasi web biasa, LLM menyimpan seluruh bobot model di memori saat berjalan. Server dengan RAM kecil dan tanpa GPU akan langsung terasa dampaknya lewat dua hal: model gagal dimuat karena kehabisan memori, atau model berjalan tapi responnya sangat lambat.
Sebelum install apa pun, cek dulu kapasitas server yang tersedia:
free -h
nproc
df -h
2. Mengenal Parameter dan Quantization
Ukuran model biasanya ditulis dalam jumlah parameter, misalnya 1B, 3B, 7B. Semakin besar parameter, semakin pintar modelnya, tapi juga semakin besar kebutuhan RAM.
Quantization adalah teknik memampatkan bobot model (misalnya dari 16-bit ke 4-bit) agar ukurannya menyusut drastis dengan penurunan kualitas yang relatif kecil. Untuk server kecil, model dengan format quantized seperti Q4_K_M adalah pilihan wajib, bukan opsional.
3. Persiapan Server
Contoh di artikel ini memakai VPS Ubuntu 24.04 tanpa GPU. Pastikan swap tersedia sebagai jaring pengaman jika RAM fisik mepet.
sudo apt update
sudo apt upgrade -y
free -h
Jika RAM di bawah 4 GB, tambahkan swap terlebih dahulu:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
4. Install Ollama
Ollama dipilih karena instalasinya ringkas dan sudah menangani quantization serta manajemen model secara otomatis.
curl -fsSL https://ollama.com/install.sh | sh
ollama --version
Setelah terpasang, Ollama berjalan sebagai service di background dan siap menerima perintah ollama run atau diakses lewat API lokal.
5. Memilih Model Berdasarkan RAM
Ini bagian yang paling sering salah kaprah. Bukan model paling baru atau paling besar yang harus dikejar, tapi model yang seimbang antara kualitas jawaban dan kestabilan di server.
Untuk server 4 GB RAM misalnya, tarik dan jalankan model kecil terlebih dahulu:
ollama pull llama3.2:3b
ollama run llama3.2:3b
Jika model terasa berat saat dijalankan, turunkan ke model yang lebih kecil daripada memaksakan model besar yang membuat server hang.
6. Uji Coba dan Benchmark Sederhana
Sebelum dipakai untuk automation atau production, uji dulu kecepatan responnya. Ukuran yang bisa dipantau adalah waktu hingga token pertama muncul dan kecepatan token per detik.
time ollama run llama3.2:3b "Jelaskan apa itu quantization dalam satu paragraf"
Pantau juga penggunaan memori saat model sedang menjawab:
htop
Jika swap ikut terpakai besar saat inference berjalan, itu tanda model yang dipilih terlalu besar untuk RAM fisik yang tersedia.
7. Menjalankan sebagai Service
Ollama secara default berjalan sebagai systemd service, sehingga tetap aktif setelah SSH ditutup. Cek statusnya dengan:
systemctl status ollama
Untuk melihat log secara realtime:
journalctl -u ollama -f
8. Mengakses Lewat API
Ollama menyediakan API lokal yang bisa dipanggil dari automation seperti n8n atau aplikasi lain di server yang sama.
curl http://127.0.0.1:11434/api/generate -d '{
"model": "llama3.2:3b",
"prompt": "Halo, siapa kamu?"
}'
9. Tips Optimasi Server Kecil
- Gunakan model quantized (Q4) sebagai default, bukan versi full precision.
- Batasi jumlah model yang di-pull sekaligus agar disk tidak penuh.
- Matikan model yang tidak dipakai dengan
ollama stopuntuk membebaskan RAM. - Gunakan context length secukupnya, jangan maksimal jika tidak diperlukan.
- Untuk automation ringan, model kecil yang stabil lebih baik daripada model besar yang sering timeout.
10. Troubleshooting
Model gagal dimuat / proses mati sendiri
Biasanya karena RAM tidak cukup. Tambahkan swap atau turunkan ke model yang lebih kecil.
Respons sangat lambat
htop
free -h
Jika RAM hampir penuh dan swap aktif terus-menerus, ini tanda model terlalu besar untuk server tersebut.
Port API tidak bisa diakses dari server lain
Cek apakah Ollama hanya listen di localhost, dan pertimbangkan reverse proxy jika memang perlu diakses dari luar.