تخطي إلى المحتوى

Neptune وإلغاء SaaS

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

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

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

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

نظرة عامة على لوحة تحكم Neptune.ai

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

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

التثبيت

لاستخدام 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. احصل على بيانات اعتمادك

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

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

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

export NEPTUNE_API_TOKEN="your_long_api_token_here" # required
$Env:NEPTUNE_API_TOKEN = "your_long_api_token_here"  # required
import os

os.environ["NEPTUNE_API_TOKEN"] = "your_long_api_token_here"
os.environ["NEPTUNE_PROJECT"] = "your_workspace/your_project"

الاستخدام

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

مثال تدريبي

تدريب YOLO11 مع تسجيل Neptune

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.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")
# Train via CLI
# project must be the Neptune slug (workspace/name); otherwise run creation will fail
yolo 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. التكوين/المعلمات الفائقة: يتم تسجيل جميع وسائط التدريب (العصور، lr0، المحسّن، إلخ) ضمن قسم التكوين.
  2. التكوين/النموذج: بنية النموذج وتعريفه.
  3. مقاييس (Metrics):
    • تدريب: box_loss, cls_loss, dfl_loss, lr (معدل التعلم).
    • مقاييس (Metrics): precision, recall, mAP50, mAP50-95.
  4. الصور:
    • Mosaic: دفعات التدريب التي تظهر زيادة البيانات.
    • Validation: تسميات الحقيقة الأساسية وتوقعات النموذج على بيانات التحقق.
    • Plots: مصفوفات الارتباك، ومنحنيات الدقة-الاستدعاء.
  5. الأوزان: النموذج المدرب النهائي (best.pt) يتم تحميله إلى weights المجلد في تشغيل Neptune.

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

تنظيم الجولات

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

  • project: يجب أن يكون معرف مشروع Neptune (slug) 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 track المستأنفة.

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

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



📅 تم إنشاؤه منذ 20 يومًا ✏️ تم تحديثه منذ 20 يومًا
glenn-jocher

تعليقات