İçeriğe geç

Ultralytics için Modal Hızlı Başlangıç Kılavuzu

Bu kılavuz, sunucusuz GPU ve model eğitimini kapsayan, Modal üzerinde Ultralytics çalıştırılmasına dair kapsamlı bir giriş sunmaktadır.

Modal nedir?

Modal, yapay zeka ve makine öğrenimi iş yükleri için tasarlanmış sunucusuz bir bulut bilişim platformudur. Kaynak tahsisi, ölçeklendirme ve yürütme işlemlerini otomatik olarak gerçekleştirir; siz yerel ortamda Python yazarsınız, Modal ise bunu bulutta GPU çalıştırır. Bu özellik, altyapı yönetimi gerektirmeden YOLO26 gibi derin öğrenme modellerini çalıştırmak için ideal bir çözüm sunar.

Ne Öğreneceksiniz

  • Modal'ı kurma ve kimlik doğrulama
  • Modal üzerinde YOLO26 çıkarımını çalıştırma
  • Daha hızlı çıkarım için GPU kullanımı
  • Modal üzerinde YOLO26 modellerinin eğitilmesi

Ön koşullar

  • Bir Modal hesabı ( modal.com adresinden ücretsiz kaydolun)
  • Yerel bilgisayarınızda Python .9 veya daha yeni bir sürümün yüklü olması

Kurulum

Modal Python yükleyin ve kimlik doğrulaması yapın:

pip install modal
modal token new

Kimlik Doğrulama

modal token new Bu komut, Modal hesabınızda kimlik doğrulaması yapmak üzere bir tarayıcı penceresi açacaktır. Kimlik doğrulaması tamamlandıktan sonra, terminalden Modal komutlarını çalıştırabilirsiniz.

YOLO26 Çıkarım İşleminin Çalıştırılması

"" adında yeni bir Python oluşturun modal_yolo.py aşağıdaki kodla:

"""
Modal + Ultralytics YOLO26 Quickstart
Run: modal run modal_yolo.py.
"""

import modal

app = modal.App("ultralytics-yolo")

image = modal.Image.debian_slim(python_version="3.11").apt_install("libgl1", "libglib2.0-0").pip_install("ultralytics")


@app.function(image=image)
def predict(image_url: str):
    """Run YOLO26 inference on an image URL."""
    from ultralytics import YOLO

    model = YOLO("yolo26n.pt")
    results = model(image_url)

    for r in results:
        print(f"Detected {len(r.boxes)} objects:")
        for box in r.boxes:
            print(f"  - {model.names[int(box.cls)]}: {float(box.conf):.2f}")


@app.local_entrypoint()
def main():
    """Test inference with sample image."""
    predict.remote("https://ultralytics.com/images/bus.jpg")

Çıkarım işlemini çalıştır:

modal run modal_yolo.py

Beklenen çıktı:

✓ Initialized. View run at https://modal.com/apps/your-username/main/ap-xxxxxxxx
✓ Created objects.
├── 🔨 Created mount modal_yolo.py
└── 🔨 Created function predict.
Downloading https://github.com/ultralytics/assets/releases/download/v8.4.0/yolo26n.pt to 'yolo26n.pt'...
Downloading https://ultralytics.com/images/bus.jpg to 'bus.jpg'...
image 1/1 /root/bus.jpg: 640x480 4 persons, 1 bus, 377.8ms
Speed: 5.8ms preprocess, 377.8ms inference, 0.3ms postprocess per image at shape (1, 3, 640, 480)

Detected 5 objects:
  - bus: 0.92
  - person: 0.91
  - person: 0.91
  - person: 0.87
  - person: 0.53
✓ App completed.

Modal kontrol panelinden işlevlerin yürütülmesini izleyebilirsiniz:

Modal Kontrol Paneli İşlev Çağrıları

Daha Hızlı Çıkarım GPU Kullanımı

Aşağıdakini belirterek GPU bir GPU ekleyin: gpu parametresi:

@app.function(image=image, gpu="T4")  # Options: "T4", "A10G", "A100", "H100"
def predict_gpu(image_url: str):
    """Run YOLO26 inference on GPU."""
    from ultralytics import YOLO

    model = YOLO("yolo26n.pt")
    results = model(image_url)
    print(results[0].boxes)
GPUBellekEn Uygun Olduğu Alan
T416 GBÇıkarım, küçük model eğitimi
A10G24 GBOrta düzey eğitim gerektiren işler
A10040 GBBüyük ölçekli eğitim
H10080 GBMaksimum performans

YOLO26'yı Modal üzerinde eğitmek

Eğitim için bir GPU Modal kullanın Ciltler kalıcı depolama Python . Adı train_yolo.py:

import modal

app = modal.App("ultralytics-training")

volume = modal.Volume.from_name("yolo-training-vol", create_if_missing=True)

image = modal.Image.debian_slim(python_version="3.11").apt_install("libgl1", "libglib2.0-0").pip_install("ultralytics")


@app.function(image=image, gpu="T4", timeout=3600, volumes={"/data": volume})
def train():
    """Train YOLO26 model on Modal."""
    from ultralytics import YOLO

    model = YOLO("yolo26n.pt")
    model.train(data="coco8.yaml", epochs=3, imgsz=640, project="/data/runs")


@app.local_entrypoint()
def main():
    train.remote()

Koşu antrenmanı:

modal run train_yolo.py

Hacim Kalıcılığı

Modal hacimler, fonksiyon çalıştırmaları arasında verileri korur. Eğitilmiş ağırlıklar şu konuma kaydedilir: /data/runs/detect/train/weights/.

Tebrikler! Modal üzerinde Ultralytics başarıyla kurdunuz. Daha fazla bilgi için:

SSS

YOLO26 iş yüküm GPU doğru GPU nasıl seçmeliyim?

Tahmin işlemleri için genellikle bir NVIDIA (16 GB) yeterli ve uygun maliyetlidir. Eğitim veya YOLO26x gibi daha büyük modeller için A10G veya A100 GPU'ları tercih edebilirsiniz.

YOLO26'yı Modal üzerinde çalıştırmanın maliyeti nedir?

Modal, saniye başına ödeme modelini kullanır. Yaklaşık ücretler: CPU 0,05 $/saat, T4 ~0,59 $/saat, A10G ~1,10 $/saat, A100 ~2,10 $/saat. Güncel ücretler için Modal fiyatlandırmasına göz atın.

Kendi özel olarak eğitilmiş YOLO kullanabilir miyim?

Evet! Modal Hacim'den özel modelleri yükleyin:

model = YOLO("/data/my_custom_model.pt")

Özel modellerin eğitilmesi hakkında daha fazla bilgi için eğitim kılavuzuna bakın.



📅 0 gün önce oluşturuldu ✏️ 0 gün önce güncellendi
raimbekovm

Yorumlar