SSD Nodes Learn Hosting plans →
Panduan Matt ConnorOleh Matt Connor

Spesifikasi Perkakasan Sebenar Stable Diffusion Sendiri

Ketahui keperluan perkakasan sebenar untuk menjalankan Stable Diffusion dan ComfyUI. Kami membincangkan had CPU VPS, keperluan VRAM untuk SDXL, dan bajet storan anda.

Keperluan sebenar penjana imej AI yang dihoskan sendiri

Penjana imej AI yang dihoskan sendiri terdiri daripada satu aplikasi web dan satu fail model. Aplikasinya ialah ComfyUI, dan ia boleh dijalankan pada mana-mana pelayan Linux. Model tersebut adalah faktor penentu perkakasan anda. Checkpoint kelas SDXL ialah satu fail bersaiz 6.94 GB, dan ia perlu dimuatkan ke dalam memori GPU. Fakta ini menentukan keseluruhan bajet anda, jadi baca tangga perkakasan di bawah sebelum anda menyewa apa-apa.

Ringkasan jujur: VPS yang hanya menggunakan CPU boleh memasang dan menghoskan perisian tersebut, serta mampu menjana imej pada resolusi 512x512 dengan model Stable Diffusion 1.5 yang lebih lama. Anggaran Oktober 2026 dalam panduan ini adalah satu atau dua minit bagi setiap imej, dan sepuluh hingga dua puluh minit untuk SDXL pada resolusi 1024x1024. Tempoh masa tersebut belum disahkan semula pada perkakasan semasa. Ini bukanlah tetapan yang rosak. Ia adalah pengiraan matematik, dan panduan ini menerangkannya.

Mengapa saiz model menentukan mesin yang diperlukan

Penjanaan imej menjalankan gelung penyahbisingan (denoising loop). Render 30 langkah menjalankan penyahbising, iaitu UNet bagi SDXL, ke atas imej sebanyak 30 kali, dan setiap laluan membaca setiap pemberat (weight) UNet. Dua pengekod teks berjalan sekali sebelum gelung tersebut dan VAE menyahkod sekali selepasnya, jadi ia bukan sebahagian daripada kos setiap langkah. UNet SDXL pada ketepatan separuh (half precision) mempunyai 5.14 GB pemberat, jadi dalam pandangan ringkas ini, render 30 langkah memindahkan kira-kira 154 GB pemberat melalui memori sebelum anda melihat gambar, dan tensor perantaraan menambah beban lagi.

GPU dengan 24 GB memori video (VRAM, memori yang dipateri bersebelahan cip grafik) membaca pada kelajuan ratusan gigabait sesaat, dan ia memuatkan kesemua 6.9 GB itu sekaligus. VPS CPU membaca RAM sistem pada kelajuan puluhan gigabait sesaat. Jurang kelajuan bergantung pada CPU dan GPU, bukan sekadar kapasiti memori mereka. Ini adalah hujah lebar jalur memori yang sama yang mengawal model teks, dan ia wajar dibaca bersama bila VPS dengan GPU sebenarnya berbaloi dengan harganya.

Penjanaan imej berbeza daripada penjanaan teks dalam satu aspek yang penting. Model sembang menstrim token, jadi mesin yang perlahan masih terasa boleh digunakan kerana perkataan muncul semasa anda membaca. Imej hanya muncul apabila langkah terakhir selesai. Perlahan bermaksud merenung bar kemajuan.

Tangga perkakasan, dengan nombor sebenar

Blok di bawah mengekalkan anggaran Julai 2026 panduan ini untuk satu imej SDXL pada 1024x1024, 30 langkah, sampler Euler. Masa sejarah ini belum disahkan semula pada perkakasan semasa. Anggap ia sebagai magnitud pesanan. Sampler, kiraan langkah dan resolusi anda akan mengubahnya.

CartaOne SDXL image, 1024x1024, 30 steps (typical, July 2026)
Data di sebalik carta 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 adalah 780 saat, kira-kira tiga belas minit. Kad 24 GB adalah 9 saat. Itulah jurang yang anda beli.

Baca tangga ini seperti berikut. Di bawah 8 GB VRAM, SDXL masih berjalan, kerana ComfyUI menguruskan VRAM dan RAM sistem bersama-sama dan memuatkan berat model secara automatik. Setakat Oktober 2026, README projek tersebut menerangkan cara menjalankan model dengan VRAM serendah 4 GB ditambah 8 GB RAM sistem, menggunakan penstriman berat tak segerak. Lebih banyak VRAM memberi ruang untuk ControlNet, refiner dan upscaling tanpa perlu memuatkan keluar; aliran kerja menentukan jumlah yang muat. Latihan memerlukan kurang daripada itu: panduan latihan SDXL untuk jurulatih kohya-ss sd-scripts menyatakan latihan LoRA boleh dilakukan dengan 8 GB memori GPU, dengan 10 GB disyorkan. Untuk mencapainya, ia memberitahu anda untuk melatih U-Net sahaja, menghidupkan gradient checkpointing, menyimpan output pengekod teks dan laten dalam cache, menggunakan pengoptimum 8-bit atau Adafactor, dan menurunkan LoRA dim kepada 4 hingga 8 pada kad 8 GB. Panduan LoRA untuk GUI kohya_ss, yang membungkus skrip tersebut, lebih berhati-hati: ia menyatakan untuk menggunakan GPU dengan sekurang-kurangnya 12 GB memori untuk latihan LoRA.

Keupayaan dan batasan CPU VPS

Ia mampu melakukan lebih daripada jangkaan umum, namun kurang daripada apa yang diuar-uarkan dalam pemasaran. Tentukan batasan tersebut dengan jelas.

CPU VPS boleh memasang ComfyUI, menyediakan antara muka web, menyimpan pustaka model, menjalankan baris gilir, dan menjana imej tanpa kehadiran GPU sama sekali. Menggunakan Stable Diffusion 1.5 pada resolusi 512x512 dengan 20 langkah, anggaran panduan ini bagi Oktober 2026 adalah sekitar 60 hingga 150 saat bagi setiap imej pada 8 vCPU moden dengan 16 GB RAM. Bagi tugasan kelompok yang dijalankan sepanjang malam, atau titik akhir imej volum rendah di sebalik baris gilir, prestasi ini sudah memadai.

CPU VPS tidak sesuai untuk kerja interaktif. Pengulangan prompt bermaksud dua puluh render dalam sejam, dan pada anggaran sejarah tiga belas minit setiap satu, anda hanya mendapat empat. Gunakan GPU untuk latihan model.

Peraturan memori bagi sistem CPU sahaja berbeza daripada peraturan GPU. Wajaran dimuatkan ke dalam RAM sistem, jadi sediakan bajet untuk model serta ruang kerja; 16 GB untuk SDXL dan 8 GB untuk SD 1.5 adalah bajet perancangan, bukan keperluan tetap. Pelayan 4 GB boleh kehabisan memori, namun kapasiti RAM sahaja tidak menentukan sama ada atau bila Linux akan menamatkan proses tersebut. Swap, had memori, dan polisi peruntukan adalah penting. Dengan mod overcommit 2, Linux secara amnya menolak peruntukan yang melebihi had komitnya dan bukannya menamatkan proses apabila ia mengakses halaman tersebut.

Memasang ComfyUI pada mesin GPU

Ini adalah arahan huluan. Mulakan daripada pemasangan bersih Ubuntu 24.04 dengan pemacu NVIDIA yang sudah tersedia. Sahkan pemacu terlebih dahulu, kerana setiap kegagalan selepas ini kelihatan sama tanpa pemeriksaan ini.

nvidia-smi

Arahan tersebut mesti memaparkan jadual dengan kad anda dan versi CUDA. command not found, atau NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver, bermakna pemacu tiada atau modul kernel tidak dimuatkan selepas naik taraf. Selesaikan perkara itu sebelum meneruskan, kerana laluan NVIDIA lalai ComfyUI akan gagal tanpa peranti CUDA yang berfungsi; pelaksanaan CPU memerlukan --cpu. Pakej CUDA 13.0 di bawah memerlukan pemacu NVIDIA daripada siri 580 atau lebih baharu.

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

Persekitaran maya bukanlah nasihat pilihan. PyTorch menarik pepohon dependensi yang besar, dan memasangnya pada peringkat sistem dalam mesin yang menjalankan aplikasi lain adalah punca kerosakan pada aplikasi tersebut. Sahkan PyTorch boleh melihat kad tersebut sebelum anda pergi lebih jauh.

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

True berserta nama kad anda bermakna tindanan tersebut berfungsi. Jika CUDA tidak tersedia, arahan ini akan mengeluarkan ralat apabila ia meminta nama kad. Periksa pemacu, keterlihatan GPU dan binaan PyTorch yang dipasang sebelum memasang semula pakej CUDA.

Dapatkan model dan rancang penggunaan cakera

ComfyUI tidak disertakan dengan sebarang pemberat (weights). Fail checkpoint diletakkan dalam models/checkpoints, fail VAE dalam models/vae, dan penyesuai LoRA dalam 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

Sentiasa utamakan .safetensors berbanding .ckpt. Checkpoint berasaskan pickle boleh melaksanakan kod melalui pemuat yang tidak terhad; ComfyUI semasa menggunakan pemuat weights_only=True terhad daripada PyTorch untuk fail-fail ini. Format safetensors menyimpan tensor tanpa mekanisme pelaksanaan kod pickle.

Storan adalah kos yang sering dilupakan. Satu checkpoint asas SDXL bersaiz 6.94 GB. Model refiner pula bersaiz 6 GB. Model SDXL ControlNet bermula daripada 320 MB untuk model Canny kecil sehingga 2.5 GB untuk model penuh pada ketepatan separuh (half precision). Model upscaler bersaiz kecil: model standard Real-ESRGAN x4plus adalah 67 MB, model anime-nya adalah 17.9 MB, dan model video anime-nya adalah 2.5 MB. Saiz LoRA berjulat daripada puluhan megabait sehingga 787 MB untuk penyesuai Hyper-SDXL daripada ByteDance. Sesiapa yang meminati perkara ini akan memuat turun model asas kedua dan ketiga dalam masa seminggu. Sediakan bajet 100 GB ruang cakera untuk pemasangan yang berfungsi, dan pantau juga direktori output: saiz PNG bergantung pada kandungan imej dan metadata, dan proses kelompok (batch) yang tidak dipantau boleh memenuhi cakera kecil dengan senyap. Letakkan models/ dan output/ pada volum yang boleh dikembangkan, dan buat sandaran fail JSON aliran kerja anda menggunakan sesuatu seperti sandaran tambahan terenkripsi ke storan objek. Pemberat boleh dimuat turun semula. Aliran kerja yang telah anda tala tidak boleh.

Jalankan dan akses dengan selamat

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

ComfyUI beroperasi pada port 8188. Pada mesin yang hanya menggunakan CPU, tambahkan --cpu, yang memaksa penggunaan laluan CPU dan bukannya gagal disebabkan peranti CUDA yang tiada.

Lakukan binding kepada 127.0.0.1, bukan kepada 0.0.0.0. ComfyUI kini mempunyai akaun, namun tiada satu pun yang mengunci pelayan anda. Log masuk di bawah Settings, dalam bahagian User, mendaftarkan anda ke akaun Comfy, dan ia berfungsi daripada pemasangan tempatan: dokumentasi Comfy menyenaraikan log masuk melalui e-mel, Google, GitHub dan API key. Dokumentasi tersebut menjelaskan akaun itu sebagai akses anda kepada nod rakan kongsi dan langganan Comfy Cloud, dan tiada apa-apa di dalamnya yang menunjukkan ia sebagai cara untuk melindungi pelayan anda dengan kata laluan. Flag --multi-user hanya mendayakan storan bagi setiap pengguna: setakat Oktober 2026, pelayan mengambil ID pengguna daripada header permintaan comfy-user dan tidak menyemak sebarang kata laluan. Sesiapa sahaja yang mencapai port tersebut boleh menyenaraikan tugasan dan mendapatkan imej yang dijana. Dengan --enable-manager, pemasangan nod tersuai juga menjalankan kod pada pelayan anda, tertakluk kepada tetapan keselamatan Manager. Lalai Manager semasa menolak URL Git sewenang-wenangnya dan pemasangan pip kendiri; mendayakan laluan tersebut memerlukan flag eksplisit dan pendengar loopback. Pemasangan nod berdaftar kekal tersedia di bawah polisi keselamatan biasanya. Akses ia melalui SSH tunnel daripada komputer riba anda sebaliknya.

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

Kemudian buka http://127.0.0.1:8188 secara tempatan. Jika anda memerlukan akses berbilang pengguna yang sebenar, letakkan reverse proxy dengan pengesahan di hadapannya dan kekalkan aplikasi terikat (bound) kepada localhost. Penaakulan yang sama terpakai kepada mana-mana servis layan diri (self-hosted) tanpa pengesahan, dan ia merupakan corak standard dalam penggunaan Docker Compose pada VPS.

Pastikan ia terus berjalan di bawah systemd

Barisan giliran render yang terhenti apabila sesi SSH anda ditutup bukanlah satu servis. Jalankannya sebagai pengguna comfy yang tidak mempunyai akses log masuk, bukan sebagai diri anda sendiri: nod tersuai adalah kod, dan kod tersebut tidak sepatutnya berjalan dengan akses ke direktori home anda. Cipta pengguna tersebut dan pindahkan pemasangan ke dalam direktori home miliknya:

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

Cipta semula persekitaran maya selepas pemindahan, kerana skrip yang dipasang mengandungi laluan mutlak ke lokasi lamanya.

sudo -u comfy python3 -m venv --clear /home/comfy/ComfyUI/venv
sudo -u comfy /home/comfy/ComfyUI/venv/bin/python -m pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
sudo -u comfy /home/comfy/ComfyUI/venv/bin/python -m pip install -r /home/comfy/ComfyUI/requirements.txt

Kemudian 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 membaca To see the GUI go to: http://127.0.0.1:8188 bermaksud ia telah berjalan. Ambil perhatian bahawa ExecStart menamakan penterjemah di dalam persekitaran maya secara terus, kerana systemd tidak menjalankan profil shell anda dan activate tidak akan berlaku.

Syor pragmatik mengikut bajet

Jika anda ingin mencuba penjanaan imej dan kos lebih penting daripada kelajuan, gunakan VPS CPU dengan 16 GB RAM, jalankan SD 1.5 pada 512x512, dan ukur masa render anda sebelum menetapkan beban kerja. Ini juga merupakan tempat yang sesuai untuk mengehos pustaka model dan aliran kerja sementara anda membuat keputusan.

Jika anda membuat lelaran pada prompt setiap hari, sewa GPU dengan sekurang-kurangnya 12 GB VRAM mengikut jam daripada penyedia awan GPU, dan matikan ia apabila anda berhenti. Penjanaan imej adalah kerja yang bersifat lonjakan, dan GPU terbiar yang dibilkan secara bulanan merupakan cara paling lazim pengguna berbelanja lebih di sini. Simpan checkpoint pada storan blok yang murah dan lekapkan (mount) ia.

Jika anda menyediakan perkhidmatan kepada orang lain, atau anda kerap melatih adapter LoRA, rancang untuk menggunakan 24 GB VRAM dan mesin yang anda miliki sendiri. Panduan SDXL sd-scripts menyatakan latihan LoRA boleh dilakukan dengan 8 GB, dengan 10 GB disyorkan, menggunakan tetapan penjimatan memori, dan panduan LoRA bagi GUI kohya_ss meminta sekurang-kurangnya 12 GB. Panduan tersebut juga menerangkan penalaan halus (fine-tuning) SDXL dengan 24 GB pada saiz batch 1, dengan mengesyorkan latihan U-Net sahaja, gradient checkpointing, output text-encoder dan latent yang dicache, serta Adafactor. Itu adalah konfigurasi bersyarat, bukan keperluan memori universal untuk melatih keseluruhan model. Pada tahap itu, mesin yang sama biasanya mampu menampung kosnya sendiri dengan menjalankan model bahasa tempatan juga, iaitu persediaan yang diterangkan dalam mengehos sendiri LLM dengan Ollama.

Tidak kira tahap mana yang anda pilih, ukur mesin anda sendiri sebelum mempercayai sebarang angka yang diterbitkan. Masukkan prompt yang sama sebanyak lima kali dan baca saat-per-lelaran yang dicetak oleh ComfyUI dalam konsolnya. Angka tersebut adalah kedudukan sebenar anda.

FAQ

Bolehkah saya menjalankan Stable Diffusion tanpa GPU?

Ya. ComfyUI boleh dijalankan dengan python main.py --cpu dan mampu menjana imej sebenar tanpa kad grafik. Anggaran pada Oktober 2026 dalam panduan ini menunjukkan masa sekitar 60 hingga 150 saat bagi setiap imej untuk Stable Diffusion 1.5 pada resolusi 512x512, dan sepuluh hingga dua puluh minit untuk SDXL pada 1024x1024, menggunakan 8 vCPU moden. Tempoh masa tersebut belum disahkan semula pada perkakasan semasa. Prestasi ini memadai untuk pemprosesan kelompok (batch) semalaman dan endpoint dengan volum rendah. Gunakan GPU untuk iterasi prompt dan latihan model.

Berapakah VRAM yang diperlukan untuk SDXL?

ComfyUI memindahkan pemberat model ke RAM sistem secara automatik, jadi kapasiti VRAM sahaja tidak menetapkan had minimum tetap untuk setiap aliran kerja SDXL. Setakat Oktober 2026, README perisian tersebut menyatakan bahawa model boleh dijalankan dengan VRAM serendah 4 GB berserta 8 GB RAM sistem menggunakan penstriman pemberat tak segerak (asynchronous weight streaming). ControlNet, refiner, dan upscaling akan menambah beban memori. Panduan kohya-ss sd-scripts menyatakan latihan SDXL LoRA boleh dilakukan dengan 8 GB, dengan 10 GB disyorkan, jika anda menggunakan tetapan penjimatan memori, manakala panduan LoRA untuk GUI kohya_ss memerlukan sekurang-kurangnya 12 GB. Panduan sd-scripts menerangkan proses fine-tuning dengan 24 GB pada saiz kelompok 1, dengan saranan menggunakan latihan U-Net sahaja, gradient checkpointing, output text-encoder dan latent yang dicache, serta Adafactor. Ia tidak menetapkan keperluan 24 GB sebagai syarat mutlak untuk latihan model penuh.

Berapakah ruang cakera yang diperlukan oleh model?

Checkpoint asas SDXL sahaja bersaiz 6.94 GB, dan refiner menambah kira-kira 6 GB lagi. Model SDXL ControlNet bersaiz antara 320 MB hingga 2.5 GB setiap satu pada ketepatan separuh (half precision), penyesuai LoRA antara puluhan megabait hingga 787 MB, dan upscaler Real-ESRGAN antara 2.5 MB hingga 67 MB. Sediakan 100 GB untuk pemasangan kerja dengan beberapa model asas, dan pantau direktori output secara berasingan, kerana saiz fail PNG bergantung pada kandungan imej dan metadata.

Adakah selamat untuk mendedahkan ComfyUI kepada internet awam?

Tidak. Log masuk akaun Comfy dalam tetapan ComfyUI berfungsi daripada pemasangan tempatan, namun ia hanya memberikan akses kepada nod rakan kongsi dan langganan awan Comfy, dan tiada apa-apa dalam dokumentasi Comfy yang menyatakan ia berfungsi sebagai perlindungan untuk pelayan anda. Flag --multi-user hanya memisahkan storan bagi setiap pengguna tanpa memeriksa sebarang kata laluan. Dengan ComfyUI-Manager diaktifkan, pemasangan nod tersuai yang dibenarkan akan menjalankan kod Python pada pelayan anda. Tetapan keselamatan Manager mengehadkan laluan pemasangan, tetapi ia tidak mengesahkan akses kepada ComfyUI. Ikat (bind) ia kepada 127.0.0.1, capai melalui terowong SSH dengan ssh -N -L 8188:127.0.0.1:8188 you@your-server, dan letakkan reverse proxy yang mempunyai pengesahan di hadapannya jika lebih daripada seorang pengguna memerlukan akses.

Mengapa render saya dihentikan tanpa mesej ralat?

Proses yang hilang dengan Killed tanpa sebarang traceback Python tidak membuktikan ia adalah pembunuhan akibat kehabisan memori (OOM kill). Semak dmesg atau jurnal kernel untuk laporan OOM yang menamakan proses tersebut. Pada mesin yang hanya menggunakan CPU, pemberat disimpan dalam RAM sistem, tetapi memori yang diperlukan bergantung pada model, ketepatan, resolusi, dan aliran kerja. Kapasiti RAM, swap, had memori, dan polisi overcommit menentukan sama ada peruntukan memori gagal atau proses tersebut dihentikan. Dengan mod overcommit 2, Linux biasanya akan mengembalikan ralat peruntukan dan bukannya menghentikan proses apabila ia mengakses halaman memori. Jika log mengesahkan kehabisan memori, tambah RAM, semak semula swap dan had memori, atau gunakan model yang lebih kecil dan resolusi yang lebih rendah.

Adakah artikel ini berguna?