sunucu.com.tr
Yapay Zeka

GPU kiralama ile görsel model eğitimi: YOLO ve LoRA eğitiminde VRAM, kart seçimi ve süre hesabı

GPU kiralama ile görsel model eğitimi yapacaksanız önce iş yükünü ölçün. YOLO nesne tespiti ve SDXL ya da FLUX LoRA eğitimi için VRAM ihtiyacı, kart seçimi, kiralık sunucuda ortam kurulumu, kısa deneme koşusuyla süre ve maliyet hesabı, KVKK ve sık hatalar.

10 dk okuma

Üretim hattında hatalı parçayı ayıran bir YOLO modeli ya da ürün fotoğraflarınızın stilini öğrenen bir LoRA eğitmek istiyorsanız masaüstü kartınız ya yetmiyor ya da günlerce meşgul kalıyor. GPU kiralama ile görsel model eğitimi bu noktada mantıklı hale gelir, ama yanlış kart seçmek ya parayı boşa harcatır ya da eğitimi "CUDA out of memory" hatasıyla durdurur. Bu rehber, nesne tespiti ve görsel üretim modeli eğitmek isteyen KOBİ'ler ve geliştiriciler için VRAM ihtiyacını, kart seçimini, kiralık sunucuda kurulumu ve süreyi ölçerek maliyet hesaplamayı anlatır.

Görsel model eğitimi neden GPU ister: çıkarım ile eğitim farkı

Çıkarım (inference), eğitilmiş modele bir görüntü verip sonuç almaktır. Eğitilmiş küçük bir YOLO modeli CPU'da bile kabul edilebilir hızda çalışabilir. Eğitim ise başka bir iştir. Her adımda model ağırlıkları, gradyanlar, optimizer durumu ve her katmanın ara çıktıları (aktivasyonlar) aynı anda bellekte tutulur. Bu yüzden aynı model eğitimde çıkarıma göre birkaç kat daha fazla VRAM ister.

İki ölçüt belirleyicidir:

  • VRAM: Eğitimin başlayıp başlamayacağını belirler. Yetmezse eğitim hiç çalışmaz ya da batch'i küçültmeniz gerekir.
  • Hesaplama gücü ve bellek bant genişliği: Eğitimin ne kadar süreceğini belirler. VRAM yetiyorsa daha hızlı kart yalnız süreyi kısaltır.

Karar sırası bu yüzden şöyle olmalı: önce iş yükünüzün ihtiyaç duyduğu VRAM'i bulun, sonra bu VRAM'i sağlayan kartlar arasında süre ve maliyete göre seçin.

YOLO nesne tespiti eğitimi: veri seti, batch ve VRAM

YOLO eğitiminde VRAM tüketimini dört şey belirler: model boyutu (n, s, m, l, x), görüntü çözünürlüğü (imgsz), batch boyutu ve karışık hassasiyet (AMP) açık mı. Veri setinin toplam boyutu VRAM'i doğrudan etkilemez; süreyi ve disk ihtiyacını etkiler.

Pratik karar ölçütleri:

  • Model boyutu: Kalite kontrol gibi sabit kamera, sınırlı sınıf sayısı olan işlerde küçük ve orta modeller (n, s, m) çoğu zaman yeterlidir. Büyük modeller ancak doğrulama sonuçları gerçekten iyileşiyorsa anlamlıdır.
  • Çözünürlük: Küçük kusurları (çizik, çatlak) yakalamak için imgsz değerini artırmak gerekebilir. Bellek tüketimi kabaca kenar uzunluğunun karesiyle büyür; 640'tan 1280'e geçmek aktivasyon belleğini yaklaşık dört katına çıkarır.
  • Batch: Büyük batch daha kararlı gradyan ve daha yüksek GPU kullanımı sağlar ama VRAM ister.

Tahmin yerine ölçmek daha güvenilirdir. Ultralytics, batch=-1 ile GPU belleğinin yaklaşık %60'ını kullanacak batch'i otomatik bulur; batch=0.70 gibi kesirli bir değerle bu oranı kendiniz belirleyebilirsiniz. Parametrelerin ayrıntısı Ultralytics'in kendi eğitim (train) belgesinde yer alır; kullandığınız sürümün belgesine bakın.

Kısa bir deneme koşusu için örnek komut (model adını kullandığınız Ultralytics sürümündeki güncel modelle değiştirin):

bash
# 3 epoch'luk deneme: otomatik batch, 640 çözünürlük, AMP varsayılan olarak açık
yolo detect train data=data.yaml model=yolo11s.pt epochs=3 imgsz=640 batch=-1 workers=8

data.yaml dosyası en basit haliyle şöyledir:

yaml
# Veri seti kök dizini ve alt klasörler (ORNEK_YOL kendi yolunuzla değiştirin)
path: /data/ORNEK_YOL
train: images/train
val: images/val
names:
  0: hatali
  1: saglam

Genel kural olarak YOLO eğitimi 24 ile 32 GB VRAM'li tek kartta rahat çalışır. 48 GB ve üzeri, yüksek çözünürlük ve büyük model birlikte gerektiğinde ya da birkaç deneyi aynı kartta paralel koşturmak istediğinizde fark yaratır.

SDXL ve FLUX için LoRA eğitimi: kaç GB bellek yeter

LoRA, modelin tamamını değil küçük ek matrisleri eğitir. Yine de temel modelin ağırlıkları eğitim boyunca bellekte durur, bu yüzden temel modelin büyüklüğü VRAM ihtiyacını belirler.

SDXL LoRA: kohya-ss sd-scripts gibi yaygın eğitim araçlarında gradient checkpointing, 8 bit optimizer ve önbelleğe alınmış latent'lerle 12 ile 16 GB arası kartlarda eğitim yapılabildiği belirtilir. 24 GB ve üzeri, daha büyük batch ve 1024 çözünürlükte daha az ayarla çalışmanızı sağlar.

FLUX LoRA: FLUX.1 temel modeli SDXL'den çok daha büyüktür. Yaygın kullanılan ostris ai-toolkit aracının belgesi FLUX.1 eğitimi için en az 24 GB VRAM ister ve bu kapasitede modelin nicemlenmiş (quantize) yüklenmesi gibi bellek tasarrufu seçenekleri devrededir. 32 GB ve 48 GB'lık kartlar bu tasarrufları gevşetmenize, daha yüksek çözünürlük ve batch kullanmanıza izin verir.

Karar ölçütü olarak şunu kullanabilirsiniz:

İş Asgari pratik VRAM Rahat çalışma
YOLO (n, s, m), 640 çözünürlük 12 ile 16 GB 24 GB ve üzeri
YOLO (l, x) ya da 1280 çözünürlük 24 GB 48 GB ve üzeri
SDXL LoRA 12 ile 16 GB (ayarlarla) 24 GB ve üzeri
FLUX LoRA 24 GB (nicemleme ile) 48 GB ve üzeri

Bu değerler araç belgelerindeki ve yaygın yapılandırmalardaki aralıklardır; kendi veri setiniz ve ayarlarınızla deneme koşusunda gerçek tüketimi mutlaka ölçün.

Kart seçimi: RTX 5090, L40S, RTX PRO 6000 ve H100 hangi iş için

Kart sınıflarını üreticinin açıkladığı bellek kapasitesine göre şöyle konumlayabilirsiniz:

  • RTX 5090 (32 GB): Tek kişilik YOLO ve SDXL LoRA işleri için güçlü bir seçenek. FLUX LoRA'yı da çalıştırır ama bellek tasarrufu ayarları gerekebilir. Tüketici kartı olduğu için veri merkezi ortamında bulunurluğu sağlayıcıya göre değişir.
  • L40S (48 GB): Veri merkezi kartı. FLUX LoRA'yı daha rahat, YOLO'yu yüksek çözünürlükte koşturur. Görsel iş yükleri için dengeli bir orta sınıf.
  • RTX PRO 6000 Blackwell (96 GB): Büyük bellek, birden fazla deneyi aynı kartta koşturma ya da tam ince ayara yaklaşan işler için.
  • H100 (80 GB) ve H200 (141 GB): Ham hesaplama ve bant genişliğinde en üst sınıf. Büyük modellerde tam ince ayar ya da çok kartlı dağıtık eğitimde anlamlıdır. Tek bir YOLO ya da LoRA işi için çoğu zaman gerekenden fazladır; ancak saatlik maliyet yüksek olsa da işi daha kısa sürede bitirdiği için toplam maliyet hesabında yine de değerlendirilmelidir.

Dürüst bir özet: küçük ve orta görsel eğitim işlerinin çoğu 32 ile 48 GB arası bir kartta biter. Büyük karta ancak ölçülmüş bir bellek ihtiyacı ya da süre baskısı varsa geçin. Genel kart sınıfları ve LLM ile kıyas için yapay zeka için GPU sunucu seçimi rehberine bakabilirsiniz.

Kiralık GPU sunucuda ortam kurulumu ve nvidia-smi kontrolü

Sunucuyu teslim aldığınızda ilk iş, gerçekten size ayrılmış bir GPU olup olmadığını ve sürücünün çalıştığını doğrulamaktır.

bash
nvidia-smi

Beklenen çıktıda kart adı, toplam bellek (ör. 49140MiB gibi bir değer), sürücü sürümü ve desteklenen en yüksek CUDA sürümü görünür. Komut bulunamıyorsa ya da "couldn't communicate with the NVIDIA driver" hatası veriyorsa sürücü kurulu değildir. Ubuntu'da önerilen sürücüyü sudo ubuntu-drivers install ile kurup sunucuyu yeniden başlatabilirsiniz.

Aşağıdaki betik Ubuntu 24.04 ve Debian 12 için hazırlandı. Ayrı bir Python sanal ortamı oluşturur, PyTorch ve Ultralytics'i kurar, ardından GPU'nun PyTorch tarafından görüldüğünü doğrular. Tekrar çalıştırıldığında var olan ortamı yeniden kullanır. Geri almak için deactivate yazıp yalnız ~/egitim-venv dizinini silmeniz yeterlidir; sistem Python'una dokunmaz.

bash
#!/usr/bin/env bash
# GPU eğitim ortamı hazırlama betiği (Ubuntu 24.04 / Debian 12 için hazırlandı)
set -euo pipefail

VENV_DIR="$HOME/egitim-venv"   # Sanal ortam dizini, isterseniz değiştirin
CUDA_WHL="cu128"               # Blackwell kartlar (RTX 5090, RTX PRO 6000) için cu128 veya daha yenisi

# 1) Sürücü kontrolü: nvidia-smi yoksa dur
if ! command -v nvidia-smi >/dev/null 2>&1; then
  echo "nvidia-smi bulunamadı. Önce NVIDIA sürücüsünü kurun." >&2
  exit 1
fi
nvidia-smi --query-gpu=name,memory.total,driver_version --format=csv

# 2) Python venv paketi (zaten kuruluysa apt bir şey yapmaz)
sudo apt-get update -y
sudo apt-get install -y python3-venv python3-pip

# 3) Sanal ortam yoksa oluştur
if [ ! -d "$VENV_DIR" ]; then
  python3 -m venv "$VENV_DIR"
fi
# shellcheck disable=SC1091
source "$VENV_DIR/bin/activate"

# 4) PyTorch (CUDA sürümüne uygun tekerlek) ve Ultralytics
pip install --upgrade pip
pip install torch torchvision --index-url "https://download.pytorch.org/whl/${CUDA_WHL}"
pip install ultralytics

# 5) Doğrulama: GPU PyTorch tarafından görülüyor mu?
python - <<'PY'
import torch
print("CUDA kullanılabilir:", torch.cuda.is_available())
if torch.cuda.is_available():
    print("Kart:", torch.cuda.get_device_name(0))
    print("PyTorch CUDA sürümü:", torch.version.cuda)
PY

Beklenen son çıktı CUDA kullanılabilir: True ve kartın adıdır. False görüyorsanız çoğu zaman PyTorch tekerleğinin CUDA sürümü sürücüyle uyumsuzdur. Uygun komutu PyTorch kurulum sayfasından seçin.

Eğitim sırasında belleği ve GPU kullanımını izlemek için ikinci bir terminalde şunu çalıştırın:

bash
# Her 5 saniyede bir kullanılan bellek, toplam bellek ve GPU kullanım oranı
nvidia-smi --query-gpu=memory.used,memory.total,utilization.gpu --format=csv -l 5

Uzun eğitimleri tmux ya da screen içinde başlatın; SSH bağlantısı kopsa da eğitim devam eder.

Eğitim süresi ve aylık TL maliyet tahmini

Süreyi ezbere değil, kısa bir deneme koşusuyla hesaplayın. Yöntem şu:

  1. Gerçek veri setinizle ve hedef ayarlarınızla 2 ya da 3 epoch (LoRA'da birkaç yüz adım) çalıştırın.
  2. İlk epoch'u ısınma sayıp ikinci ve üçüncü epoch'un ortalama süresini alın.
  3. Toplam süre ≈ epoch süresi × planlanan epoch sayısı. Erken durdurma (patience) kullanıyorsanız bu üst sınırdır.
  4. Hiperparametre denemelerini de ekleyin. Tek bir eğitim nadiren yeterli olur; gerçekçi bir planda 3 ile 5 deneme koşusu öngörün.

Maliyet hesabı da bu süreye dayanır:

  • Saatlik kiralama: Toplam GPU saati × saatlik ücret. Ara ara eğitim yapıyorsanız uygundur. Kurulum ve veri yükleme süresinin de faturaya girdiğini unutmayın.
  • Aylık kiralama: Ay içinde eğitim, deneme ve çıkarım testleri için kartı düzenli kullanıyorsanız saatlik toplamı geçebilir. Başabaş noktası, aylık ücret ile saatlik ücretin oranıdır.

Örnek kurgu: deneme koşusunda bir epoch'un 4 dakika sürdüğünü ölçtünüz ve 150 epoch planlıyorsunuz. Tek eğitim yaklaşık 10 saat, 4 deneme ile 40 saat eder. Bu 40 saati kendi saatlik teklifinizle çarpın, aylık teklifle kıyaslayın. Ayrıntılı başabaş tablosu için saatlik mi aylık mı GPU kiralama hesabına bakabilirsiniz.

Hızlı kart seçmek her zaman daha pahalı değildir. Saatlik ücreti iki kat olan bir kart işi üçte bir sürede bitiriyorsa toplamda daha ucuza gelir. Bu yüzden mümkünse iki kart sınıfında aynı deneme koşusunu yapıp epoch süresini karşılaştırın.

Veri seti ve KVKK: kamera görüntüleri ve müşteri verisi

Kalite kontrol kameraları çoğu zaman yalnız ürünü görür. Ama mağaza, depo ya da giriş kamerası görüntülerinde çalışan ve müşteri yüzleri, plakalar gibi kişisel veriler bulunabilir. Bu durumda verinin nerede işlendiği önemlidir.

Uygulanabilir adımlar:

  • Önce veri envanteri çıkarın: Görüntülerde kişi tanınabiliyor mu? Ürün fotoğrafı ile güvenlik kamerası kaydı aynı risk sınıfında değildir.
  • Mümkünse anonimleştirin: Yüz ve plakaları eğitime göndermeden önce bulanıklaştırın ya da kırpın. Nesne tespiti için çoğu zaman bu bilgiye ihtiyaç yoktur.
  • Ham veriyi Türkiye'de tutun: Ham görüntüleri ve etiketleri Türkiye'de duran bir depoda saklayıp eğitime yalnız gerekli ve anonimleştirilmiş alt kümeyi taşıyabilirsiniz. İstanbul'da duran S3 uyumlu nesne depolama bu iş için kullanılabilir.
  • GPU'nun lokasyonunu bilin: Kiraladığınız GPU sunucu yurt dışındaysa (örneğin AB içinde Frankfurt), kişisel veri içeren görüntüler oraya gittiğinde yurt dışına aktarım söz konusu olur. Bu durumu hukuk danışmanınızla değerlendirin.
  • Eğitim sonrası temizlik: Eğitim bittiğinde veri setinin kiralık sunucudaki kopyasını, yalnız kendi oluşturduğunuz veri dizinini hedefleyerek silin ve modeli, metrikleri kendi deponuza alın.

Sık yapılan hatalar

CUDA out of memory. En yaygın hata. Sırayla batch'i küçültün, AMP'nin açık olduğundan emin olun, çözünürlüğü düşürün, LoRA'da gradient checkpointing ve 8 bit optimizer açın. Aynı karta başka bir süreç (ör. unutulmuş bir Jupyter çekirdeği) bağlı mı diye nvidia-smi çıktısının alt kısmındaki süreç listesine bakın.

GPU kullanımı düşük, eğitim yavaş. utilization.gpu değeri sürekli düşükse darboğaz veri yüklemededir. workers sayısını CPU çekirdek sayısına göre artırın, JPEG çözme yükü fazlaysa Ultralytics'te cache=ram ya da cache=disk seçeneğini deneyin.

Disk darboğazı. Veri setini ağ üzerinden bağlanmış bir dizinden okumak eğitimi yavaşlatır. Eğitim öncesi veriyi sunucunun yerel NVMe diskine kopyalayın. Checkpoint'ler de diski hızla doldurur; boş alanı df -h ile kontrol edin.

Sürücü ve CUDA uyumsuzluğu. Yeni nesil kartlarda eski PyTorch tekerlekleri çalışmayabilir. Betikteki doğrulama adımı bu sorunu eğitim başlamadan yakalar.

Doğrulama setini unutmak. Eğitim kaybı düşerken doğrulama metrikleri (mAP gibi) yükselmiyorsa model ezberliyordur. Daha büyük kart bu sorunu çözmez; veri çeşitliliği çözer.

Sık sorulan sorular

YOLO eğitimi için kaç GB VRAM yeterli?

Küçük ve orta modellerde 640 çözünürlükte 12 ile 16 GB çalışır, 24 GB ve üzeri rahat bir batch boyutu sağlar. Yüksek çözünürlük ve büyük model birlikte gerekiyorsa 48 GB'a bakın. Kesin değeri batch=-1 ile yapılan deneme koşusu verir.

FLUX LoRA eğitimi 24 GB kartta olur mu?

Olur, ama genelde modelin nicemlenmiş yüklenmesi gibi bellek tasarrufu ayarlarıyla. 32 ve 48 GB kartlar bu ayarları gevşetip daha yüksek çözünürlükle çalışmanıza izin verir.

Eğitim ne kadar sürer?

Veri setine, modele ve karta bağlıdır; genel bir sayı yanıltıcı olur. Gerçek veriyle 2 ya da 3 epoch çalıştırıp epoch süresini ölçün ve planlanan epoch sayısıyla çarpın.

Eğitilmiş modeli çalıştırmak için de GPU kiralamam gerekir mi?

Her zaman değil. Küçük bir YOLO modeli düşük kare hızında CPU'lu bir sunucuda çalışabilir. Çok kamera ve gerçek zamanlı işleme gerekiyorsa çıkarım için de GPU gerekir, ama eğitime göre çok daha küçük bir kart yeterli olabilir.

Eğitim yarıda kesilirse ne olur?

Ultralytics ve LoRA araçları belirli aralıklarla checkpoint kaydeder. YOLO'da resume=True ile son checkpoint'ten devam edebilirsiniz. Eğitimi tmux içinde başlatmak SSH kopmasından kaynaklanan kesintileri önler.

Hazır GPU sunucuyla başlamak

Bu işi hazır yapmak isterseniz GPU sunucu sayfasından Frankfurt'taki (AB) NVIDIA H200 sunucuları inceleyebilir, farklı bir kart modeline (L40S, RTX, H100 gibi) ya da İstanbul lokasyonuna ihtiyacınız varsa aynı sayfadaki formla talebinizi iletebilirsiniz.

Sonuç

Görsel model eğitimi için GPU kiralarken sıra şudur: iş yükünü tanımlayın, deneme koşusuyla VRAM ve epoch süresini ölçün, bu ölçüme göre kartı ve saatlik ya da aylık modeli seçin. YOLO ve SDXL LoRA çoğu durumda 24 ile 32 GB'ta, FLUX LoRA 24 GB'ta tasarruf ayarlarıyla, 48 GB'ta rahat çalışır. Kişisel veri içeren görüntülerde anonimleştirmeyi ve verinin nerede işlendiğini eğitimden önce netleştirin.

  • #gpu kiralama
  • #yolo
  • #lora eğitimi
  • #vram
  • #görüntü işleme
  • #flux
  • #pytorch

Yazar

Kurucu, sunucu.com.tr · Bulut altyapısı ve yapay zeka otomasyonları

sunucu.com.tr ve Sunucu UK'in kurucusu. Bulut altyapısı, sanallaştırma ve sunucu yönetimi üzerine çalışıyor; şirketlerin iş yazılımlarını, web sitelerini ve yapay zeka iş yüklerini güvenli sunuculara taşıyor. Blogdaki rehberler sahada karşılaşılan kurulum, güvenlik ve taşıma işlerinden derlenir; yazılar yapay zeka desteğiyle hazırlanır ve kaynaklarla doğrulanır.

Tüm yazılarıProfil

İlgili yazılar

Yapay Zeka yazıları