Self-hosted AI image generator: உண்மையான hardware தேவைகள்
CPU VPS-ல் Stable Diffusion 1.5 படம் 1–2 நிமிடங்களில் உருவாகும்; SDXL-க்கு 10–20 நிமிடங்கள். 6.94 GB model மற்றும் ComfyUI install தேவைகளை அறிக.
சுயமாக host செய்யப்படும் AI image generator-க்கு உண்மையில் தேவையானவை
சுயமாக host செய்யப்படும் AI image generator என்பது ஒரு web app மற்றும் ஒரு model file ஆகியவற்றைக் கொண்டது. அந்த app ComfyUI ஆகும். இது எந்த Linux box-லும் இயங்கும். உங்கள் hardware-ஐ தீர்மானிப்பது model ஆகும். SDXL-class checkpoint என்பது 6.94 GB அளவுள்ள ஒற்றை file. அது GPU memory-யில் இருக்க வேண்டும். இந்த ஒரு உண்மைதான் முழு budget-ஐ நிர்ணயிக்கிறது. ஆகவே எதையும் rent செய்வதற்கு முன் கீழே உள்ள hardware ladder-ஐப் படிக்கவும்.
சுருக்கமாகச் சொன்னால், CPU-only VPS software-ஐ install செய்து serve செய்ய முடியும். பழைய Stable Diffusion 1.5 model-ஐப் பயன்படுத்தி 512x512 அளவில் ஒரு image-ஐ ஒரு நிமிடம் அல்லது இரண்டு நிமிடங்களில் generate செய்ய முடியும். அதே box-ல் 1024x1024 அளவில் SDXL-ஐ இயக்கினால், ஒவ்வொரு image-க்கும் பத்து முதல் இருபது நிமிடங்கள் ஆகும். இது தவறான setup அல்ல. இது கணிதத்தின் விளைவு. இதற்கான காரணங்களை இந்த guide விளக்குகிறது.
மாதிரி அளவு இயந்திரத்தை ஏன் தீர்மானிக்கிறது
பட உருவாக்கம் denoising loop-ஐ இயக்குகிறது. 30-step render, முழு மாதிரியைப் படத்தின் மீது 30 முறை இயக்குகிறது. ஒவ்வொரு இயக்கமும் ஒவ்வொரு weight-ஐப் படிக்கிறது. half precision-இல் உள்ள SDXL மாதிரியில் weight-களின் அளவு சுமார் 6.9 GB. ஆகவே, படம் தோன்றுவதற்கு முன் 30-step render, memory வழியாக தோராயமாக 200 GB தரவை நகர்த்துகிறது.
24 GB video memory (VRAM, graphics chip-க்கு அருகில் solder செய்யப்பட்ட memory) கொண்ட GPU, ஒரு விநாடிக்கு நூற்றுக்கணக்கான gigabytes வேகத்தில் படிக்கிறது. அது 6.9 GB முழுவதையும் ஒரே நேரத்தில் வைத்திருக்கவும் முடியும். CPU VPS, system RAM-ஐ ஒரு விநாடிக்கு பத்துக்கணக்கான gigabytes வேகத்தில் படிக்கிறது. Convolution-களுக்கான matrix hardware அதில் இல்லை. ஆகவே, அதே loop ஒன்று முதல் இரண்டு orders of magnitude வரை மெதுவாக இயங்குகிறது. Text model-களின் செயல்திறனை நிர்ணயிக்கும் memory-bandwidth காரணியும் இதுவே. இதனுடன் GPU கொண்ட VPS எப்போது உண்மையில் செலவுக்குத் தகுந்ததாக இருக்கும் என்பதையும் படிக்கலாம்.
Image generation, text generation-இலிருந்து வேறுபடும் ஒரு முக்கிய அம்சம் உள்ளது. Chat model token-களை stream செய்கிறது. ஆகவே, சொற்கள் நீங்கள் படிக்கும் போதே தோன்றுவதால், மெதுவான இயந்திரமும் பயன்படுத்தக்கூடியதாகத் தெரிகிறது. Image, இறுதி step முடிந்த பிறகே தோன்றும். மெதுவான செயல்பாடு என்றால் progress bar-ஐப் பார்த்துக்கொண்டிருப்பதே.
உண்மையான எண்களுடன் hardware நிலைகள்
கீழே உள்ள அட்டவணையில், July 2026 நிலவரப்படி, 1024x1024 அளவு, 30 steps மற்றும் Euler sampler பயன்படுத்தி உருவாக்கப்படும் ஒரு SDXL படத்திற்கான வழக்கமான அளவீடுகள் உள்ளன. இவற்றை தோராயமான அளவுகளாகக் கருதுங்கள். உங்கள் sampler, step எண்ணிக்கை மற்றும் resolution ஆகியவை இந்த மதிப்புகளை மாற்றும்.
The data behind this chart
[
{
"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
}
]CPU வரிசையில் 780 seconds ஆகும். இது சுமார் பதின்மூன்று நிமிடங்கள். 24 GB card-இல் 9 seconds ஆகும். நீங்கள் செலுத்தும் செலவு, இந்த வேறுபாட்டைக் குறைப்பதற்காகும்.
இந்த நிலைகளைப் பின்வருமாறு புரிந்துகொள்ளுங்கள். 8 GB VRAM-க்கு குறைவாக இருந்தாலும் SDXL இயங்கும். காரணம், ComfyUI layers-ஐ system RAM-க்கு தானாக offload செய்து, 1 GB அளவு குறைந்த memory கொண்ட card-யிலும் இயங்கும். ஒவ்வொரு step-இலும் offloading நேரம் எடுத்துக்கொள்ளும். எனவே, 6 GB card-இல் ஒரு image உருவாகும் நேரம் 30 seconds-க்கு அருகில் இல்லாமல், ஒரு minute-க்கு அருகில் இருக்கும். 8 GB-இல் base model பொருந்தும்; render சீராக இயங்கும். 12 GB-இல் offloading இல்லாமல், checkpoint உடன் ஒரு ControlNet அல்லது இரண்டு ControlNet-களை வைத்திருக்கலாம். 24 GB-இல் ஒரே workflow-இல் SDXL, refiner மற்றும் upscaling ஆகியவற்றை இயக்கலாம். மேலும் LoRA adapters-ஐ train செய்யத் தொடங்கலாம். இதற்கு image generation-ஐ விட அதிக memory தேவைப்படும்.
CPU VPS-ஆல் செய்யக்கூடியவை மற்றும் செய்ய முடியாதவை
மக்கள் எதிர்பார்ப்பதைவிட இது அதிகமாகச் செய்ய முடியும். Marketing கூறுவதைவிட குறைவாகவே செய்ய முடியும். இந்த வரம்பைத் துல்லியமாகப் புரிந்துகொள்ள வேண்டும்.
CPU VPS-ல் ComfyUI-ஐ நிறுவலாம், web interface-ஐ வழங்கலாம், model library-ஐ சேமிக்கலாம், queue-ஐ இயக்கலாம், GPU இல்லாமலேயே images-ஐ உருவாக்கலாம். Stable Diffusion 1.5-ஐ 512x512 resolution-ல் 20 steps உடன் இயக்கினால், 16 GB RAM கொண்ட 8 நவீன vCPU-களில் ஒரு image உருவாக சுமார் 60 முதல் 150 seconds ஆகும். இரவு முழுவதும் இயங்கும் batch job-க்கும், queue-க்கு பின்னால் இயங்கும் குறைந்த அளவிலான image endpoint-க்கும் இது நடைமுறையில் போதுமானது.
CPU VPS-ல் interactive work செய்ய முடியாது. Prompt iteration என்றால் ஒரு மணி நேரத்தில் 20 renders ஆகும். ஒவ்வொன்றுக்கும் 13 minutes எடுத்தால், 4 renders மட்டுமே கிடைக்கும். Training-ஐயும் CPU VPS-ல் செய்ய முடியாது. CPU-ல் LoRA fine-tuning-க்கு hours அல்ல, days தேவைப்படும். எனவே இதை கிடைக்காத வசதியாகக் கருதுங்கள்.
CPU-only பயன்பாட்டுக்கான memory விதி GPU விதியிலிருந்து வேறுபடும். Weights system RAM-ல் load ஆகும். எனவே model size-க்கு மேலாக working space-க்கும் memory தேவைப்படும்: SDXL-க்கு சுமார் 16 GB RAM, SD 1.5-க்கு சுமார் 8 GB RAM. 4 GB system ComfyUI-ஐத் தொடங்கும். பின்னர் முதல் render முடிவதற்கு முன்பே out-of-memory killer அதை நிறுத்திவிடும். இதனால் process மறைந்துவிடும்; Killed, dmesg ஆகியவற்றில் Python traceback எதுவும் தோன்றாது.
GPU machine-ல் ComfyUI-ஐ நிறுவுதல்
இவை upstream commands ஆகும். NVIDIA driver ஏற்கனவே நிறுவப்பட்டுள்ள சுத்தமான Ubuntu 24.04 installation-லிருந்து தொடங்கவும். முதலில் driver-ஐ உறுதிப்படுத்தவும். இந்தச் சரிபார்ப்பு இல்லாமல், பின்னர் ஏற்படும் ஒவ்வொரு பிழையும் ஒரே மாதிரியாகத் தோன்றும்.
nvidia-smiஇது உங்கள் card மற்றும் CUDA version கொண்ட table-ஐக் காட்ட வேண்டும். command not found அல்லது NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver எனத் தோன்றினால், driver இல்லை அல்லது upgrade-க்குப் பிறகு kernel module load ஆகவில்லை. தொடர்வதற்கு முன் இதைச் சரிசெய்யவும். இல்லையெனில் ComfyUI அமைதியாக CPU-க்கு மாறிவிடும், மேலும் நீங்கள் software-ஐக் குறை கூறுவீர்கள்.
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.txtVirtual environment என்பது விருப்பமான ஆலோசனை அல்ல. PyTorch பெரிய dependency tree-ஐ நிறுவும். வேறு பணிகளையும் இயக்கும் system-ல் அதை system-wide ஆக நிறுவினால், அந்தப் பணிகள் பாதிக்கப்படும். தொடர்வதற்கு முன் PyTorch உங்கள் card-ஐக் காண்கிறதா என்பதைச் சரிபார்க்கவும்.
python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"True மற்றும் உங்கள் card name தோன்றினால், stack சரியாக இயங்குகிறது. False எனத் தோன்றினால், நீங்கள் நிறுவிய wheel driver-உடன் பொருந்தவில்லை. CPU-only torch wheel ஏற்கனவே cache செய்யப்பட்டிருப்பது இதற்கான பொதுவான காரணமாகும். மேலே உள்ள index URL-ஐப் பயன்படுத்தி மீண்டும் நிறுவவும்.
ஒரு model-ஐப் பெற்று, disk-க்கு திட்டமிடுங்கள்
ComfyUI-யில் weights எதுவும் சேர்க்கப்படாது. Checkpoints-ஐ models/checkpoints-ல், VAE files-ஐ models/vae-ல், LoRA adapters-ஐ 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எப்போதும் .ckpt-க்கு பதிலாக .safetensors-ஐப் பயன்படுத்தவும். .ckpt file என்பது pickled Python object ஆகும். அதை load செய்யும்போது, அதை உருவாக்கியவரிடமிருந்து code இயக்கப்படும். safetensors format-ல் tensors மட்டுமே இருக்கும். எனவே, தீங்கிழைக்கும் file எதையும் இயக்க முடியாது.
Storage செலவு பலர் மறந்துவிடும் அம்சமாகும். ஒரு SDXL base checkpoint-க்கு 6.94 GB தேவைப்படும். Refiner-க்கு மேலும் 6 GB தேவைப்படும். ஒரு ControlNet model-க்கு 1.4 முதல் 2.5 GB வரை தேவைப்படும். An upscaler-க்கு 60 முதல் 350 MB வரையும், ஒரு LoRA-க்கு 20 முதல் 400 MB வரையும் தேவைப்படும். இதைப் பயன்படுத்துபவர்கள் ஒரு வாரத்திற்குள் இரண்டாவது மற்றும் மூன்றாவது base model-ஐ download செய்வார்கள். செயல்படும் install-க்கு 100 GB disk இடத்தை ஒதுக்கவும். outputs directory-யையும் கண்காணிக்கவும்: 1024x1024 PNG files ஒவ்வொன்றும் 1 முதல் 2 MB வரை இருக்கும். unattended batch சிறிய disk-ஐ அமைதியாக நிரப்பிவிடும். models/ மற்றும் output/ ஆகியவற்றை விரிவாக்கக்கூடிய volume-ல் வைக்கவும். உங்கள் workflow JSON files-ஐ object storage-க்கான encrypted incremental backups போன்ற முறையில் backup செய்யவும். weights-ஐ மீண்டும் download செய்யலாம். நீங்கள் fine-tune செய்த workflows-ஐ மீண்டும் உருவாக்க முடியாது.
இதை இயக்கி, பாதுகாப்பாக அணுகவும்
cd ~/ComfyUI
. venv/bin/activate
python main.py --listen 127.0.0.1 --port 8188ComfyUI, port 8188-ல் சேவை வழங்குகிறது. CPU-only கணினியில் --cpu-ஐச் சேர்க்கவும். இல்லையெனில் CUDA device இல்லாததால் CPU பாதையைப் பயன்படுத்த முடியாமல் செயல்பாடு தோல்வியடையும்.
127.0.0.1-க்கு bind செய்யவும்; 0.0.0.0-க்கு bind செய்ய வேண்டாம். ComfyUI-யில் login screen அல்லது user accounts இல்லை. இந்த port-ஐ அணையும் எதுவும் jobs-ஐ queue செய்யலாம், நீங்கள் உருவாக்கிய அனைத்து images-ஐப் படிக்கலாம், மேலும் custom nodes-ஐ நிறுவலாம். இதனால் உங்கள் server-ல் arbitrary code execution நிகழலாம். அதற்குப் பதிலாக, உங்கள் laptop-லிருந்து SSH tunnel மூலம் அதை அணுகவும்.
ssh -N -L 8188:127.0.0.1:8188 you@your-serverபின்னர், locally http://127.0.0.1:8188-ஐத் திறக்கவும். உண்மையான multi-user access தேவைப்பட்டால், authentication கொண்ட reverse proxy-ஐ அதன் முன்னால் அமைத்து, app-ஐ localhost-க்கு bind செய்தபடியே வைத்திருக்கவும். இதே காரணம், authentication இல்லாத self-hosted service எதற்கும் பொருந்தும். இது VPS-ல் Docker Compose deployments-க்கான standard pattern ஆகும்.
systemd இன் கீழ் அதை இயக்கத்தில் வைத்திருத்தல்
உங்கள் SSH session மூடப்பட்டதும் நிறுத்தப்படும் render queue ஒரு service அல்ல. /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.targetsudo systemctl daemon-reload
sudo systemctl enable --now comfyui
systemctl status comfyuiactive (running) மற்றும் To see the GUI go to: http://127.0.0.1:8188 எனக் காட்டும் log line ஆகியவை அது இயங்குகிறது என்பதைக் குறிக்கின்றன. ExecStart virtual environment-க்குள் உள்ள interpreter-ஐ நேரடியாகக் குறிப்பிடுகிறது என்பதை கவனிக்கவும். systemd உங்கள் shell profile-ஐ இயக்காது; எனவே activate ஒருபோதும் நிகழாது.
பட்ஜெட்டின்படி நடைமுறைப் பரிந்துரை
Image generation-ஐ முயற்சிக்க விரும்பி, வேகத்தைவிட செலவு முக்கியமாக இருந்தால், 16 GB RAM கொண்ட CPU VPS-ஐ பயன்படுத்துங்கள். SD 1.5-ஐ 512x512 resolution-ல் இயக்கி, ஒவ்வொரு image-க்கும் ஒன்று அல்லது இரண்டு நிமிடங்கள் ஆகும் என்பதை ஏற்றுக்கொள்ளுங்கள். இதுவே நியாயமான தொடக்கநிலை. GPU இணைக்கப்பட்ட எந்த அமைப்பையும் விட இதன் செலவு மிகக் குறைவு. நீங்கள் முடிவு செய்யும் காலத்தில் model library மற்றும் workflows-ஐ host செய்யவும் இதுவே சரியான இடமாகும்.
நீங்கள் தினமும் prompts-ஐ மீண்டும் மீண்டும் மாற்றிப் பரிசோதித்தால், GPU cloud-இலிருந்து குறைந்தது 12 GB VRAM கொண்ட GPU-ஐ மணிநேர அடிப்படையில் வாடகைக்கு எடுங்கள். பயன்படுத்துவதை நிறுத்தியதும் அதை shut down செய்யுங்கள். Image generation இடைவிடும் வகையிலான பணியாகும். பயன்படுத்தாமல் இருக்கும் GPU-க்கு மாதாந்திர கட்டணம் செலுத்துவது, இங்கு மக்கள் அதிகமாகச் செலவிடும் பொதுவான காரணமாகும். Checkpoints-ஐ குறைந்த செலவிலான block storage-ல் வைத்திருந்து, அவற்றை mount செய்யுங்கள்.
நீங்கள் பிறருக்கு சேவை வழங்கினால் அல்லது LoRA adapters-ஐ train செய்தால், 24 GB VRAM மற்றும் தொடர்ந்து வைத்திருக்கக்கூடிய machine தேவைப்படும். அந்த நிலையில், அதே machine-ல் local language model-ஐயும் இயக்குவது பொதுவாகச் செலவுக்கேற்றதாக இருக்கும். Ollama மூலம் LLM-ஐ self-hosting செய்வது பற்றிய அமைப்பு இதுவாகும்.
நீங்கள் எந்த நிலையைத் தேர்ந்தெடுத்தாலும், வெளியிடப்பட்ட எந்த அளவீட்டையும் நம்புவதற்கு முன் உங்கள் சொந்த machine-ஐ அளவிடுங்கள். அதே prompt-ஐ ஐந்து முறை queue செய்து, ComfyUI அதன் console-ல் காட்டும் seconds-per-iteration மதிப்பைப் படியுங்கள். அந்த எண்ணிக்கையே உங்கள் உண்மையான நிலையைத் தீர்மானிக்கும்.
FAQ
GPU இல்லாமல் Stable Diffusion-ஐ இயக்க முடியுமா?
ஆம். ComfyUI, python main.py --cpu உடன் இயங்கி, graphics card இல்லாவிட்டாலும் உண்மையான images-ஐ உருவாக்கும். 8 நவீன vCPUs-ல், 512x512 அளவில் Stable Diffusion 1.5-க்கு ஒவ்வொரு image-க்கும் சுமார் 60 முதல் 150 seconds ஆகும் என எதிர்பார்க்கலாம். 1024x1024 அளவில் SDXL-க்கு 10 முதல் 20 minutes ஆகும். இது overnight batches மற்றும் குறைந்த அளவிலான endpoints-க்கு ஏற்றது. Prompt-ஐ தொடர்ந்து மாற்றிப் பரிசோதிப்பதற்கு இது ஏற்றதல்ல. Training-ஐ இயக்குவதற்கு இது நடைமுறையில் சாத்தியமற்றது.
SDXL-க்கு எவ்வளவு VRAM தேவை?
1024x1024 அளவில் SDXL-ஐ சீராக இயக்க 8 GB போதுமானது. அதற்கு குறைவாக இருந்தால், ComfyUI layers-ஐ system RAM-க்கு தானாக offload செய்தும் இயங்கும். சுமார் 1 GB VRAM வரை இது செயல்படும். ஆனால் offload செய்யப்படும் ஒவ்வொரு step-க்கும் கூடுதல் நேரம் தேவைப்படும். 12 GB இருந்தால் checkpoint உடன் ControlNet-ஐயும் memory-யில் வைத்திருக்கலாம். 24 GB இருந்தால் base, refiner மற்றும் upscaling ஆகியவற்றை ஒரே workflow-ல் இயக்கலாம். LoRA adapters-ஐ train செய்வதற்கான நடைமுறை குறைந்த அளவு இதுவாகும்.
Models-க்கு எவ்வளவு disk space தேவை?
SDXL base checkpoint மட்டும் 6.94 GB ஆகும். Refiner மேலும் சுமார் 6 GB சேர்க்கும். ஒவ்வொரு ControlNet model-மும் 1.4 முதல் 2.5 GB வரை இருக்கும். LoRA adapters 20 முதல் 400 MB வரை இருக்கும். Upscaler-கள் 350 MB வரை இருக்கும். சில base models உடன் இயங்கும் install-க்கு 100 GB ஒதுக்குங்கள். Output directory-ஐ தனியாக கண்காணியுங்கள். ஏனெனில் 1024x1024 PNG files ஒவ்வொன்றும் 1 முதல் 2 MB வரை இருக்கும்.
Public internet-ல் ComfyUI-ஐ வெளிப்படுத்துவது பாதுகாப்பானதா?
இல்லை. ComfyUI-ல் எந்த வகையான authentication-மும் இல்லை. அதன் custom-node system interface மூலம் Python code-ஐ install செய்து இயக்கும். எனவே திறந்த port இருந்தால், உங்கள் server-ல் remote code execution நிகழ முடியும். அதை 127.0.0.1-க்கு bind செய்யுங்கள். ssh -N -L 8188:127.0.0.1:8188 you@your-server உடன் SSH tunnel வழியாக அணுகுங்கள். ஒன்றுக்கும் மேற்பட்டவர்கள் access செய்ய வேண்டுமெனில், authentication வழங்கும் reverse proxy-ஐ அதன் முன் அமைக்குங்கள்.
Error message இல்லாமல் எனது render ஏன் நிறுத்தப்பட்டது?
dmesg-ல் Killed உடன் process மறைந்து, Python traceback எதுவும் இல்லாவிட்டால், அது ComfyUI bug அல்ல. அது Linux out-of-memory killer-ன் செயல்பாடு. CPU-only box-ல் weights system RAM-ல் இருக்கும். எனவே SDXL-க்கு சுமார் 16 GB-மும், SD 1.5-க்கு சுமார் 8 GB-மும், அதற்கு மேலாக working space-மும் தேவைப்படும். RAM-ஐ அதிகரிக்கவும், swap-ஐ சேர்க்கவும், அல்லது சிறிய model மற்றும் குறைந்த resolution-க்கு மாறவும்.