SSD Nodes Learn Hosting plans →
Panduan Matt ConnorOleh Matt Connor

Spesifikasi Nyata Generator Gambar AI Self-Hosted

Ketahui batas VPS CPU, kebutuhan SDXL 6,94 GB, waktu render 10 hingga 20 menit, perintah instalasi ComfyUI, dan kapasitas disk yang perlu disiapkan.

Kebutuhan sebenarnya untuk generator gambar AI self-hosted

Generator gambar AI self-hosted terdiri dari satu aplikasi web dan satu file model. Aplikasinya adalah ComfyUI, dan dapat berjalan pada server Linux apa pun. Model menentukan kebutuhan perangkat keras Anda. Checkpoint kelas SDXL adalah satu file berukuran 6.94 GB, dan file tersebut perlu ditempatkan di memori GPU. Fakta ini menentukan seluruh anggaran, jadi baca tingkatan perangkat keras di bawah sebelum menyewa server.

Ringkasan apa adanya: VPS yang hanya menggunakan CPU dapat memasang dan menjalankan software tersebut. VPS ini juga dapat menghasilkan gambar berukuran 512x512 menggunakan model Stable Diffusion 1.5 yang lebih lama, dengan waktu sekitar satu atau dua menit per gambar. Mesin yang sama saat menjalankan SDXL pada ukuran 1024x1024 membutuhkan waktu sepuluh hingga dua puluh menit per gambar. Ini bukan akibat konfigurasi yang rusak. Ini adalah konsekuensi perhitungan sumber daya, dan panduan ini menjelaskannya.

Ukuran model menentukan mesin

Pembuatan gambar menjalankan loop denoising. Render 30 langkah menjalankan denoiser, yaitu UNet milik SDXL, pada gambar sebanyak 30 kali, dan setiap iterasi membaca seluruh bobot UNet. Kedua text encoder dijalankan sekali sebelum loop, sedangkan VAE melakukan decoding sekali setelahnya. Karena itu, keduanya tidak termasuk dalam biaya per langkah. UNet SDXL pada half precision memiliki bobot sebesar 5.14 GB. Dalam gambaran yang disederhanakan ini, render 30 langkah memindahkan sekitar 154 GB bobot melalui memori sebelum gambar terlihat, dan tensor perantara menambah beban tersebut.

GPU dengan video memory 24 GB (VRAM, yaitu memori yang terpasang di sebelah chip grafis) membaca data pada kecepatan ratusan gigabyte per detik dan dapat menampung seluruh 6.9 GB sekaligus. VPS berbasis CPU membaca system RAM pada kecepatan puluhan gigabyte per detik dan tidak memiliki perangkat keras matriks untuk operasi konvolusi. Karena itu, loop yang sama berjalan satu hingga dua orde magnitudo lebih lambat. Ini adalah argumen bandwidth memori yang sama seperti pada model teks, dan pembahasannya sebaiknya dibaca bersama kapan VPS dengan GPU benar-benar sepadan dengan biayanya.

Pembuatan gambar berbeda dari pembuatan teks dalam satu hal penting. Chat model mengalirkan token, sehingga mesin yang lambat masih terasa dapat digunakan karena kata-kata muncul saat Anda membacanya. Gambar baru muncul setelah langkah terakhir selesai. Jika prosesnya lambat, Anda hanya akan menunggu sambil melihat progress bar.

Tangga perangkat keras, dengan angka nyata

Blok di bawah ini memuat angka tipikal untuk satu gambar SDXL pada resolusi 1024x1024, 30 langkah, dan sampler Euler, per Juli 2026. Anggap angka tersebut sebagai kisaran orde besaran. Sampler, jumlah langkah, dan resolusi yang Anda gunakan dapat mengubahnya.

GrafikOne SDXL image, 1024x1024, 30 steps (typical, July 2026)
Data di balik grafik ini
[
  {
    "label": "8 vCPU VPS, no GPU",
    "seconds_per_image": 780
  },
  {
    "label": "8GB VRAM GPU",
    "seconds_per_image": 32
  },
  {
    "label": "12GB VRAM GPU",
    "seconds_per_image": 18
  },
  {
    "label": "24GB VRAM GPU",
    "seconds_per_image": 9
  }
]

Baris CPU menunjukkan 780 detik, atau sekitar tiga belas menit. Kartu 24 GB membutuhkan 9 detik. Itulah perbedaan kinerja yang Anda dapatkan.

Baca tangga tersebut sebagai berikut. Di bawah 8 GB VRAM, SDXL masih dapat berjalan karena ComfyUI mengelola VRAM dan RAM sistem secara bersamaan serta secara otomatis melakukan offload bobot model. Per Oktober 2026, README proyek tersebut menetapkan kebutuhan minimum 4 GB VRAM dan 8 GB RAM sistem dengan menggunakan asynchronous weight streaming. Offload menambah waktu pada setiap langkah, sehingga kartu 6 GB menghasilkan waktu yang lebih dekat ke satu menit per gambar daripada tiga puluh detik. Pada 8 GB, model dasar dapat dimuat dan proses render berjalan dengan nyaman. Pada 12 GB, Anda dapat memuat satu atau dua ControlNet bersama checkpoint tanpa offload. Pada 24 GB, Anda dapat menjalankan SDXL, refiner, dan upscaling dalam satu workflow, serta melatih adapter LoRA dengan sisa kapasitas yang memadai. Pelatihan dapat dilakukan dengan kapasitas yang lebih kecil: panduan pelatihan SDXL untuk trainer kohya-ss sd-scripts menyatakan bahwa pelatihan LoRA dapat dilakukan dengan memori GPU 8 GB, dengan rekomendasi 10 GB. Untuk mencapainya, panduan tersebut mengarahkan Anda agar hanya melatih U-Net, mengaktifkan gradient checkpointing, menyimpan output text encoder dan latent dalam cache, menggunakan optimizer 8-bit atau Adafactor, serta menurunkan dimensi LoRA menjadi 4 hingga 8 pada kartu 8 GB. Panduan LoRA untuk kohya_ss GUI, yang membungkus script tersebut, lebih berhati-hati: panduan itu menyarankan penggunaan GPU dengan memori minimal 12 GB untuk pelatihan LoRA.

Kemampuan dan keterbatasan CPU VPS

CPU VPS dapat melakukan lebih banyak hal daripada yang diperkirakan banyak orang, tetapi juga lebih sedikit daripada yang tersirat dalam materi pemasaran. Pahami batasnya secara spesifik.

CPU VPS dapat menginstal ComfyUI, menyajikan antarmuka web, menyimpan pustaka model, menjalankan antrean, dan menghasilkan gambar tanpa GPU sama sekali. Dengan Stable Diffusion 1.5 pada 512x512 dan 20 langkah, perkirakan sekitar 60 hingga 150 detik per gambar pada 8 vCPU modern dengan RAM 16 GB. Untuk tugas batch yang berjalan semalaman atau endpoint gambar bervolume rendah di belakang antrean, kinerja tersebut masih memadai.

CPU VPS tidak dapat memberikan pengalaman kerja interaktif. Iterasi prompt berarti menghasilkan dua puluh render dalam satu jam, tetapi dengan waktu tiga belas menit per render, Anda hanya mendapatkan empat render. CPU VPS juga tidak dapat digunakan untuk pelatihan. Fine-tuning LoRA pada CPU memerlukan waktu dalam hitungan hari, bukan jam, sehingga anggap fitur ini tidak tersedia.

Aturan memori untuk penggunaan CPU-only berbeda dari aturan untuk GPU. Bobot model dimuat ke RAM sistem, sehingga Anda memerlukan ukuran model ditambah ruang kerja: sekitar 16 GB RAM untuk SDXL dan sekitar 8 GB untuk SD 1.5. Server dengan RAM 4 GB akan memulai ComfyUI, lalu prosesnya dihentikan oleh out-of-memory killer di tengah render pertama. Kondisi ini terlihat ketika proses menghilang dengan Killed di dmesg tanpa Python traceback.

Instal ComfyUI pada mesin GPU

Berikut adalah perintah dari upstream. Mulai dari instalasi Ubuntu 24.04 yang bersih dengan driver NVIDIA yang sudah terpasang. Konfirmasikan driver terlebih dahulu, karena tanpa pemeriksaan ini semua kegagalan berikutnya terlihat sama.

nvidia-smi

Perintah tersebut harus menampilkan tabel yang berisi kartu Anda dan versi CUDA. command not found atau NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver berarti driver belum terpasang atau modul kernel tidak dimuat setelah upgrade. Perbaiki masalah tersebut sebelum melanjutkan, karena ComfyUI akan diam-diam beralih ke CPU dan Anda akan menyalahkan perangkat lunaknya.

sudo apt update
sudo apt install -y git python3-venv python3-pip wget
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
python3 -m venv venv
. venv/bin/activate
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
pip install -r requirements.txt

Virtual environment bukan saran opsional. PyTorch menarik banyak dependensi, dan memasangnya secara system-wide pada mesin yang menjalankan hal lain dapat merusak layanan tersebut. Pastikan PyTorch dapat mendeteksi kartu sebelum melanjutkan.

python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"

True ditambah nama kartu Anda berarti stack tersebut berfungsi. False berarti wheel yang Anda pasang tidak cocok dengan driver, biasanya karena wheel torch khusus CPU sudah tersimpan dalam cache. Instal ulang menggunakan index URL di atas.

Dapatkan model dan rencanakan kapasitas disk

ComfyUI tidak menyertakan weights. Checkpoint disimpan di models/checkpoints, file VAE di models/vae, dan adapter LoRA di models/loras.

cd ~/ComfyUI/models/checkpoints
wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors

Selalu pilih .safetensors daripada .ckpt. File .ckpt adalah objek Python yang diserialisasi dengan pickle. Saat dimuat, file tersebut menjalankan kode dari pihak yang membuatnya. Format safetensors hanya menyimpan tensor, sehingga file berbahaya tidak dapat menjalankan apa pun.

Kapasitas penyimpanan adalah biaya yang sering dilupakan. Satu checkpoint dasar SDXL berukuran 6.94 GB. Refiner membutuhkan tambahan 6 GB. Model ControlNet SDXL berukuran mulai dari 320 MB untuk model Canny kecil hingga 2.5 GB untuk model lengkap dengan presisi setengah. Upscaler berukuran kecil: model Real-ESRGAN x4plus standar berukuran 67 MB, model anime berukuran 17.9 MB, dan model video anime berukuran 2.5 MB. Ukuran LoRA berkisar dari puluhan megabyte hingga 787 MB untuk adapter Hyper-SDXL dari ByteDance. Pengguna yang menyukai teknologi ini biasanya mengunduh model dasar kedua dan ketiga dalam waktu satu minggu. Alokasikan 100 GB ruang disk untuk instalasi yang siap digunakan. Pantau juga direktori outputs: file PNG berukuran 1024x1024 berukuran 1 hingga 2 MB per file, dan batch yang berjalan tanpa pengawasan dapat memenuhi disk kecil secara diam-diam. Simpan models/ dan output/ pada volume yang kapasitasnya dapat ditambah. Cadangkan file JSON workflow dengan metode seperti backup inkremental terenkripsi ke object storage. Weights dapat diunduh ulang. Workflow yang telah Anda sesuaikan tidak dapat dipulihkan dengan cara yang sama.

Jalankan dan akses dengan aman

cd ~/ComfyUI
. venv/bin/activate
python main.py --listen 127.0.0.1 --port 8188

ComfyUI berjalan pada port 8188. Pada mesin yang hanya menggunakan CPU, tambahkan --cpu. Opsi ini memaksa penggunaan CPU dan mencegah kegagalan karena perangkat CUDA tidak tersedia.

Bind ke 127.0.0.1, bukan ke 0.0.0.0. ComfyUI kini memiliki fitur akun, tetapi tidak ada akun yang mengunci server Anda. Login pada Settings, di bagian User, digunakan untuk masuk ke akun Comfy dan dapat digunakan dari instalasi lokal. Dokumentasi Comfy mencantumkan login melalui email, Google, GitHub, dan API key. Dokumentasi tersebut menjelaskan bahwa akun itu digunakan untuk mengakses partner nodes dan langganan Comfy Cloud. Tidak ada keterangan bahwa akun tersebut dapat digunakan untuk melindungi server Anda dengan kata sandi. Flag --multi-user hanya mengaktifkan penyimpanan per pengguna. Per Oktober 2026, server mengambil nama pengguna dari header permintaan comfy-user dan tidak memeriksa kata sandi. Siapa pun yang dapat mengakses port tersebut dapat memasukkan job ke antrean, membaca semua image yang telah Anda buat, dan, jika Anda menjalankannya dengan --enable-manager, menginstal custom nodes. Hal ini memungkinkan eksekusi kode arbitrer pada server Anda. Sebagai gantinya, akses melalui SSH tunnel dari laptop Anda.

ssh -N -L 8188:127.0.0.1:8188 you@your-server

Kemudian buka http://127.0.0.1:8188 secara lokal. Jika Anda memerlukan akses multi-pengguna yang sebenarnya, tempatkan reverse proxy dengan autentikasi di depannya dan tetap bind aplikasi ke localhost. Alasan yang sama berlaku untuk layanan self-hosted tanpa autentikasi apa pun. Ini merupakan pola standar dalam deployment Docker Compose pada VPS.

Jalankan terus dengan systemd

Render queue yang berhenti saat sesi SSH Anda ditutup bukanlah service. Jalankan sebagai user comfy tanpa login, bukan sebagai user Anda sendiri: custom node adalah kode, dan kode tersebut tidak boleh berjalan dengan akses ke home directory Anda. Buat user tersebut dan pindahkan instalasi ke home directory-nya:

sudo useradd --system --create-home --home-dir /home/comfy --shell /usr/sbin/nologin comfy
sudo mv ~/ComfyUI /home/comfy/
sudo chown -R comfy:comfy /home/comfy/ComfyUI

Virtual environment tetap berfungsi setelah dipindahkan karena unit memanggil python secara langsung. Selanjutnya, tulis /etc/systemd/system/comfyui.service.

[Unit]
Description=ComfyUI
After=network-online.target

[Service]
User=comfy
WorkingDirectory=/home/comfy/ComfyUI
ExecStart=/home/comfy/ComfyUI/venv/bin/python main.py --listen 127.0.0.1 --port 8188
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now comfyui
systemctl status comfyui

active (running) dan baris log yang berisi To see the GUI go to: http://127.0.0.1:8188 berarti service sudah berjalan. Perhatikan bahwa ExecStart secara langsung menunjuk interpreter di dalam virtual environment karena systemd tidak menjalankan shell profile Anda dan activate tidak pernah terjadi.

Rekomendasi pragmatis berdasarkan anggaran

Jika Anda ingin mencoba pembuatan gambar dan biaya lebih penting daripada kecepatan, gunakan CPU VPS dengan RAM 16 GB, jalankan SD 1.5 pada 512x512, dan terima waktu sekitar satu atau dua menit per gambar. Ini adalah titik awal yang realistis, dan biayanya hanya sebagian kecil dibandingkan solusi dengan GPU. Tempat ini juga sesuai untuk menyimpan pustaka model dan workflow sambil menentukan kebutuhan Anda.

Jika Anda mengulangi eksperimen prompt setiap hari, sewa GPU dengan VRAM minimal 12 GB per jam dari layanan cloud GPU, lalu matikan saat tidak digunakan. Pembuatan gambar biasanya berlangsung secara berkala, dan GPU yang menganggur tetapi tetap ditagihkan secara bulanan adalah penyebab paling umum pemborosan biaya dalam skenario ini. Simpan checkpoint pada block storage yang murah dan mount storage tersebut.

Jika Anda menyediakan layanan untuk pengguna lain atau rutin melatih adapter LoRA, siapkan VRAM 24 GB dan mesin yang selalu tersedia. Panduan SDXL dari sd-scripts menyatakan bahwa pelatihan LoRA dapat dilakukan dengan 8 GB, dengan rekomendasi 10 GB, menggunakan pengaturan penghematan memori. Panduan LoRA dari GUI kohya_ss memerlukan minimal 12 GB. Angka 24 GB dalam panduan sd-scripts ditujukan untuk fine-tuning penuh SDXL dengan batch size 1. Jadi, kartu 24 GB mencukupi untuk pekerjaan LoRA dan tetap memungkinkan fine-tuning. Pada tahap ini, mesin yang sama biasanya juga dapat digunakan untuk menjalankan model bahasa lokal, seperti yang dijelaskan dalam self-hosting LLM dengan Ollama.

Apa pun tingkat yang Anda pilih, ukur kinerja mesin Anda sendiri sebelum mempercayai angka yang dipublikasikan. Masukkan prompt yang sama ke antrean sebanyak 5 kali, lalu baca nilai detik per iterasi yang ditampilkan ComfyUI pada konsolnya. Nilai tersebut menunjukkan posisi Anda yang sebenarnya.

FAQ

Dapatkah saya menjalankan Stable Diffusion tanpa GPU?

Ya. ComfyUI berjalan dengan python main.py --cpu dan dapat menghasilkan gambar nyata tanpa kartu grafis. Untuk Stable Diffusion 1.5 pada 512x512, perkirakan sekitar 60 hingga 150 detik per gambar. Untuk SDXL pada 1024x1024, perkirakan 10 hingga 20 menit dengan 8 vCPU modern. Konfigurasi ini sesuai untuk pemrosesan batch semalaman dan endpoint dengan volume rendah. Konfigurasi ini tidak sesuai untuk iterasi prompt, dan pelatihan sama sekali tidak praktis.

Berapa VRAM yang diperlukan untuk SDXL?

8 GB cukup untuk menjalankan SDXL pada 1024x1024 dengan nyaman. Jika kapasitasnya lebih kecil, ComfyUI secara otomatis memindahkan bobot model ke RAM sistem dan tetap dapat berjalan. Per Oktober 2026, README-nya menyatakan kebutuhan minimum 4 GB VRAM serta 8 GB RAM sistem. Setiap langkah yang dipindahkan ke RAM membutuhkan waktu tambahan. 12 GB memungkinkan Anda memuat ControlNet bersama checkpoint. 24 GB mencukupi untuk base, refiner, dan upscaling dalam satu workflow. Panduan kohya-ss sd-scripts menyatakan bahwa pelatihan LoRA SDXL dapat dilakukan dengan 8 GB, dengan 10 GB sebagai rekomendasi, jika Anda menggunakan pengaturan penghemat memori. Sementara itu, panduan LoRA pada GUI kohya_ss meminta setidaknya 12 GB. Fine-tuning penuh SDXL memerlukan 24 GB pada batch size 1.

Berapa ruang disk yang diperlukan model?

Checkpoint base SDXL saja berukuran 6.94 GB. Refiner menambahkan sekitar 6 GB. Model ControlNet SDXL berukuran 320 MB hingga 2.5 GB per model pada half precision. Adapter LoRA berukuran puluhan megabyte hingga 787 MB. Upscaler Real-ESRGAN berukuran 2.5 MB hingga 67 MB. Siapkan 100 GB untuk instalasi yang digunakan dengan beberapa model base. Pantau direktori output secara terpisah karena file PNG 1024x1024 berukuran 1 hingga 2 MB per file.

Apakah aman mengekspos ComfyUI ke internet publik?

Tidak. Login akun Comfy pada pengaturan ComfyUI berfungsi dari instalasi lokal. Namun, login tersebut memberi Anda akses ke partner nodes dan cloud subscriptions milik Comfy. Tidak ada dokumentasi Comfy yang menyatakan bahwa fitur ini melindungi server Anda. Flag --multi-user hanya memisahkan penyimpanan per pengguna tanpa memeriksa kata sandi apa pun. Jika ComfyUI-Manager diaktifkan, antarmuka tersebut dapat menginstal custom nodes. Custom nodes adalah kode Python yang berjalan di server Anda. Karena itu, port yang terbuka dapat memungkinkan eksekusi kode jarak jauh. Bind ComfyUI ke 127.0.0.1. Akses melalui SSH tunnel dengan ssh -N -L 8188:127.0.0.1:8188 you@your-server. Jika lebih dari satu orang memerlukan akses, tempatkan reverse proxy dengan autentikasi di depannya.

Mengapa proses render saya dihentikan tanpa pesan error?

Jika proses menghilang dengan Killed di dmesg tanpa Python traceback, penyebabnya adalah Linux out-of-memory killer, bukan bug ComfyUI. Pada server yang hanya menggunakan CPU, bobot model berada di RAM sistem. Karena itu, SDXL memerlukan sekitar 16 GB, sedangkan SD 1.5 memerlukan sekitar 8 GB, ditambah ruang kerja. Tambahkan RAM, tambahkan swap, atau gunakan model yang lebih kecil dengan resolusi lebih rendah.

Apakah artikel ini bermanfaat?