رؤية YOLO لعام 2026:

دليل البدء السريع مع Modal لـ Ultralytics#

يوفّر هذا الدليل مقدمة شاملة لتشغيل Ultralytics YOLO26 على Modal، بما يشمل الاستدلال عبر GPU دون خوادم وتدريب النماذج.

ما هو Modal؟#

Modal هو نظام أساسي لـالحوسبة السحابية دون خوادم لأحمال عمل الذكاء الاصطناعي وتعلّم الآلة. يتولى تلقائيًا توفير الموارد والتوسّع والتنفيذ — إذ تكتب تعليمات Python محليًا، بينما يشغّلها Modal في السحابة مع إمكانية الوصول إلى GPU. وهذا يجعله مثاليًا لتشغيل نماذج التعلّم العميق مثل YOLO26 من دون إدارة البنية التحتية.

ما ستتعلّمه#

  • إعداد Modal والمصادقة
  • تشغيل استدلال YOLO26 على Modal
  • استخدام GPU لتسريع الاستدلال
  • تدريب نماذج YOLO26 على Modal

المتطلبات الأساسية#

  • حساب Modal (يمكنك التسجيل مجانًا على modal.com)
  • تثبيت Python 3.9 أو إصدار أحدث على جهازك المحلي

التثبيت#

ثبّت حزمة Modal لـ Python:

pip install modal

ثم صادِق على CLI باستخدام حسابك في Modal:

modal token new
المصادقة

سيفتح الأمر modal token new نافذة متصفح لمصادقة حسابك في Modal. بعد المصادقة، يمكنك تشغيل أوامر Modal من الوحدة الطرفية.

تشغيل استدلال YOLO26#

أنشئ ملف Python جديدًا باسم modal_yolo.py لتشغيل الاستدلال باستخدام التعليمات البرمجية التالية:

"""
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")

شغّل الاستدلال:

modal run modal_yolo.py

المخرجات المتوقعة:

✓ 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:

Modal Dashboard Function Calls

استخدام GPU لتسريع الاستدلال#

أضف GPU إلى دالتك من خلال تحديد المعلمة gpu:

@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)
GPUالذاكرةالأفضل لـ
T416 GBالاستدلال، وتدريب النماذج الصغيرة
A10G24 GBمهام التدريب متوسطة الحجم
A10040 GBالتدريب واسع النطاق
H10080 GBأقصى أداء

تدريب YOLO26 على Modal#

للتدريب، استخدم GPU وVolumes من Modal للتخزين الدائم. أنشئ ملف Python جديدًا باسم 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()

شغّل التدريب:

modal run train_yolo.py
استمرارية Volume

تحتفظ Modal Volumes بالبيانات بين عمليات تشغيل الدوال. تُحفَظ الأوزان المدرَّبة في /data/runs/train/weights/.

تهانينا! لقد أعددت Ultralytics YOLO26 على Modal بنجاح. لمزيد من التعلّم:

الأسئلة الشائعة#

  • للاستدلال، يكون NVIDIA T4 (بسعة 16 GB) كافيًا عادةً وفعّالًا من حيث التكلفة. أما للتدريب أو للنماذج الأكبر مثل YOLO26x، ففكّر في استخدام GPU من طراز A10G أو A100.

  • تستخدم Modal تسعيرًا حسب الثانية. الأسعار التقريبية: CPU ~$0.05/ساعة، وT4 ~$0.59/ساعة، وA10G ~$1.10/ساعة، وA100 ~$2.10/ساعة. راجع أسعار Modal للاطلاع على الأسعار الحالية.

  • نعم، يمكنك تشغيل نموذج YOLO الخاص بك والمدرَّب مخصّصًا على Modal من خلال تحميل ملف الأوزان من Modal Volume:

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

    لمزيد من المعلومات حول تدريب النماذج المخصّصة، راجع دليل التدريب.

التعليقات