استحواذ Neptune وإيقاف خدمة SaaS

توصلت Neptune إلى اتفاق للاستحواذ عليها من قبل OpenAI وستقوم بإنهاء خدمتها المستضافة (SaaS) بعد فترة انتقالية تنتهي في 4 مارس 2026. راجع الإعلان الرسمي وخطط لعمليات الترحيل أو التصدير وفقًا لذلك.

تتبع التجارب باستخدام Neptune

Neptune هو متجر بيانات وصفية لعمليات MLOps، تم تصميمه للفرق التي تجري الكثير من التجارب. فهو يمنحك مكانًا واحدًا لتسجيل وتخزين وعرض وتنظيم ومقارنة والاستعلام عن جميع بياناتك الوصفية لبناء النماذج.

يتكامل Ultralytics YOLO26 مع Neptune لتبسيط تتبع التجارب. يسمح لك هذا التكامل بتسجيل مقاييس التدريب تلقائيًا، وتصور تنبؤات النموذج، وتخزين نواتج النموذج دون الحاجة لكتابة تعليمات برمجية مخصصة للتسجيل.

Neptune.ai ML experiment tracking dashboard

الميزات الرئيسية

  • التسجيل المؤتمت: تسجيل مقاييس التدريب الرئيسية تلقائيًا مثل خسارة الصندوق (box loss)، وخسارة التصنيف (classification loss)، وmAP.
  • تصور الصور: عرض فسيفساء التدريب وتنبؤات التحقق مباشرة في لوحة تحكم Neptune.
  • نقاط حفظ النموذج: تحميل والتحكم في إصدار أوزان النموذج المدرب (best.pt) تلقائيًا في نهاية التدريب.
  • تتبع المعاملات الفائقة: تسجيل جميع معاملات الإعداد لضمان إمكانية تكرار تجاربك بالكامل.
  • الرسوم البيانية التفاعلية: تصور مصفوفات الارتباك (confusion matrices) ومنحنيات الدقة والاستدعاء (precision-recall curves) لتحليل أداء النموذج.

التثبيت

لاستخدام Neptune مع Ultralytics، ستحتاج إلى تثبيت حزمة عميل neptune جنبًا إلى جنب مع ultralytics.

التثبيت
# Install the required packages
pip install ultralytics neptune

# Enable Neptune integration in Ultralytics settings
yolo settings neptune=True

الإعدادات

قبل البدء في التدريب، تحتاج إلى توصيل بيئتك المحلية بمشروع Neptune الخاص بك. ستحتاج إلى رمز API واسم المشروع من لوحة تحكم Neptune الخاصة بك.

الحصول على بيانات الاعتماد الخاصة بك

  1. سجل الدخول إلى Neptune.ai.
  2. أنشئ مشروعًا جديدًا (أو اختر مشروعًا موجودًا).
  3. انتقل إلى قائمة المستخدم الخاصة بك واحصل على رمز API.

تعيين متغيرات البيئة

الطريقة الأكثر أمانًا للتعامل مع بيانات الاعتماد هي عبر متغيرات البيئة. لاحظ أن رد اتصال Ultralytics Neptune يقرأ وسيطة project الخاصة بـ YOLO ولا يستخدم NEPTUNE_PROJECT. قم بتمرير مسار Neptune الكامل (مثلاً، workspace/name) عبر project= في أمر التدريب الخاص بك؛ وإلا سيحاول Neptune استخدام القيمة الافتراضية الحرفية "Ultralytics" وسيفشل التشغيل.

export NEPTUNE_API_TOKEN="your_long_api_token_here" # required

الاستخدام

بمجرد التكوين، يمكنك البدء في تدريب نماذج YOLO26 الخاصة بك. يعمل تكامل Neptune تلقائيًا عند تثبيت حزمة neptune وتمكين التكامل في الإعدادات.

مثال على التدريب

تدريب YOLO26 مع تسجيل Neptune
from ultralytics import YOLO

# Load a model
model = YOLO("yolo26n.pt")

# Train the model
# Pass the Neptune project slug as the 'project' argument (workspace/name)
results = model.train(data="coco8.yaml", epochs=10, project="my-workspace/my-project", name="experiment-1")

فهم التكامل

يوضح الرسم البياني التالي كيفية تفاعل خط أنابيب تدريب Ultralytics مع Neptune لتسجيل النواتج والمقاييس المختلفة.

graph LR
    A[YOLO Training Loop] --> B{Neptune Callback}
    B -->|Log Scalars| C[Loss, mAP, LR]
    B -->|Log Images| D[Mosaics, Preds]
    B -->|Log Artifacts| E[Model Weights]
    B -->|Log Metadata| F[Hyperparameters]

    C --> G[Neptune Server]
    D --> G
    E --> G
    F --> G

    G --> H[Neptune Web Dashboard]

ما الذي يتم تسجيله؟

عند تشغيل أمر التدريب، يلتقط تكامل Neptune تلقائيًا هيكل البيانات التالي في عملية التشغيل الخاصة بك:

  1. الإعدادات/المعاملات الفائقة: يتم تسجيل جميع وسيطات التدريب (epochs، lr0، optimizer، إلخ) تحت قسم الإعدادات.
  2. الإعدادات/النموذج: بنية النموذج وتعريفه.
  3. المقاييس:
    • التدريب: box_loss، cls_loss، dfl_loss، lr (معدل التعلم).
    • المقاييس: precision، recall، mAP50، mAP50-95.
  4. الصور:
    • Mosaic: دفعات التدريب التي تعرض زيادة البيانات.
    • Validation: تسميات الحقيقة الأرضية وتنبؤات النموذج على بيانات التحقق.
    • Plots: مصفوفات الارتباك، ومنحنيات الدقة والاستدعاء.
  5. الأوزان: يتم تحميل النموذج المدرب النهائي (best.pt) إلى مجلد weights في تشغيل Neptune.

الاستخدام المتقدم

تنظيم عمليات التشغيل

يمكنك استخدام وسيطات project وname القياسية في Ultralytics لتنظيم عملياتك في Neptune.

  • project: يجب أن يكون مسار مشروع Neptune workspace/name؛ وهذا ما يمرره رد الاتصال إلى neptune.init_run.
  • name: يعمل كمعرف لعملية التشغيل المحددة.

التسجيل المخصص

إذا كنت بحاجة إلى تسجيل مقاييس مخصصة إضافية بجانب التسجيل التلقائي، يمكنك الوصول إلى مثيل تشغيل Neptune. لاحظ أنك ستحتاج إلى تعديل منطق المدرب أو إنشاء رد اتصال مخصص للوصول إلى كائن التشغيل المحدد، حيث يتعامل تكامل Ultralytics مع دورة حياة التشغيل داخليًا.

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

كيف يمكنني تعطيل تسجيل Neptune؟

إذا قمت بتثبيت neptune ولكنك ترغب في تعطيل التسجيل لجلسة محددة أو عالميًا، يمكنك تعديل إعدادات YOLO.

# Disable Neptune integration
yolo settings neptune=False

صور لا يتم تحميلها. ما المشكلة؟

تأكد من أن شبكتك تسمح بالاتصال بخوادم Neptune. بالإضافة إلى ذلك، يحدث تسجيل الصور عادةً في فترات زمنية محددة (على سبيل المثال، نهاية الدورات أو نهاية التدريب). إذا قمت بمقاطعة التدريب مبكرًا باستخدام Ctrl+C، فقد لا يتم تحميل بعض النواتج النهائية مثل مصفوفات الارتباك أو أفضل أوزان للنموذج.

هل يمكنني التسجيل في معرف تشغيل Neptune محدد؟

يقوم التكامل الحالي بإنشاء عملية تشغيل جديدة تلقائيًا لكل جلسة تدريب. لاستئناف التسجيل في عملية تشغيل موجودة، ستحتاج عادةً إلى التعامل مع تهيئة Neptune يدويًا في كود Python، وهو ما يقع خارج نطاق التكامل التلقائي. ومع ذلك، يدعم Ultralytics استئناف التدريب محليًا، مما سيؤدي إلى إنشاء عملية تشغيل جديدة في Neptune لتتبع الدورات المستأنفة.

أين يمكنني العثور على أوزان النموذج في Neptune؟

في لوحة تحكم Neptune الخاصة بك، انتقل إلى قسم Artifacts أو All Metadata. ستجد مجلد weights يحتوي على ملف best.pt الخاص بك، والذي يمكنك تنزيله للنشر.

التعليقات