YOLO Vision 2026:

نقاط النهاية المخصصة#

Ultralytics Platform يتيح نشر نماذج YOLO إلى نقاط نهاية مخصصة في 42 منطقة عالمية. كل نقطة نهاية هي خدمة أحادية المستأجر مع سلوك القياس إلى الصفر، وعنوان URL فريد لنقطة النهاية، ومراقبة مستقلة.

Ultralytics Platform Model Deploy Tab With Region Map And Table

إنشاء نقطة نهاية#

من علامة تبويب النشر#

انشر نموذجاً من علامة التبويب Deploy الخاصة به:

  1. انتقل إلى النموذج الخاص بك
  2. انقر على علامة التبويب Deploy
  3. راجع خريطة العالم وجدول المناطق، الذي يتم مرتباً حسب زمن الوصول المقاس من موقعك
  4. انقر فوق Deploy في صف المنطقة التي تريد استخدامها

يبدأ النشر فوراً بدون خطوة لتسمية النموذج: حيث يُنشأ الاسم تلقائياً من اسم النموذج ومدينة المنطقة (على سبيل المثال yolo26n-iowa). يجب أن يحتوي النموذج على أوزان، وإلا فسيعرض تبويب البيانات حالة فارغة بدلاً من جدول المناطق.

من صفحة عمليات النشر#

أنشئ عملية نشر من صفحة Deploy العامة في الشريط الجانبي:

  1. انقر فوق New Deployment
  2. حدد نموذجاً من قائمة تحديد النماذج، والتي تعرض النماذج المكتملة الخاصة بك
  3. حدد منطقة من الخريطة المصغرة أو جدول زمن الانتقال
  4. راجع اسم النشر المنشأ تلقائياً، والذي يمكنك تعديله هنا
  5. انقر فوق Deploy Model

Ultralytics Platform New Deployment Dialog With Model Selector And Region Map

دورة حياة النشر#

stateDiagram-v2
    [*] --> Creating: Deploy
    Creating --> Deploying: Service starting
    Deploying --> Ready: Service URL published
    Ready --> Stopping: Stop
    Ready --> Deploying: Replace model
    Stopping --> Stopped: Stopped
    Stopped --> Deploying: Start
    Deploying --> Stopped: Start failed
    Ready --> [*]: Delete
    Stopped --> [*]: Delete
    Creating --> Failed: Error
    Deploying --> Failed: Error
    Failed --> [*]: Delete

    classDef proc fill:#2196F3,color:#fff
    classDef out fill:#9C27B0,color:#fff
    classDef error fill:#F44336,color:#fff
    classDef extern fill:#607D8B,color:#fff
    class Creating,Deploying,Stopping proc
    class Ready out
    class Failed error
    class Stopped extern

قم بتوصيل تنبيهات Slack لتلقي رسالة عندما يصبح النشر جاهزاً أو يفشل في البدء.

اختيار المنطقة#

اختر من بين 42 منطقة حول العالم. تعرض خريطة المناطق التفاعلية والجدول ما يلي:

  • دبابيس المنطقة: مرمزة بالألوان حسب زمن الوصول على تدرج من الأخضر إلى الأحمر (المناطق الأسرع تكون أكثر خضرة، والمناطق الأبطأ تكون أكثر احمراراً)
  • المناطق المُنشطة: تظهر مميزة بشارة "Deployed" في الجدول
  • المناطق قيد النشر: مؤشر نبض متحرك على الدبوس وفي صف الجدول
  • تمييز ثنائي الاتجاه: التمرير فوق الخريطة يبرز صف الجدول، والعكس صحيح

Ultralytics Platform Deploy Tab Region Latency Table Sorted By Latency يتضمن جدول المناطق في علامة تبويب نموذج Deploy ما يلي:

العمودالوصف
الموقعالمدينة والدولة مع أيقونة العلم
المنطقةمعرف المنطقة
زمن الانتقالوقت استجابة الشبكة المقاس من متصفحك
المسافةالمسافة من موقعك التقريبي بالكيلومتر
الإجراءاتزر النشر أو شارة حالة "Deployed"

الجدول قابل للبحث حسب المدينة والدولة والمنطقة، ويتم فرزه افتراضياً حسب زمن الانتقال.

مربع حوار النشر الجديد

يُظهر مربع الحوار New Deployment (من صفحة Deploy العامة) جدول مناطق أبسط يحتوي فقط على أعمدة الموقع (Location)، وزمن الانتقال (Latency)، والتحديد (Select)، ويعرض أسرع 20 منطقة مع ملاحظة بخصوص المناطق المتبقية. استخدم الخريطة المصغرة لاختيار أي منطقة أخرى.

كيف يتم قياس زمن الانتقال

يقيس متصفحك زمن الانتقال لكل من المناطق الـ 42، وتُخزن النتائج مؤقتاً لمدة 30 دقيقة ويتم مشاركتها عبر تبويب Deploy ومربع حوار New Deployment. استخدم زر إعادة الفحص (Rescan) في تبويب نموذج Deploy لإعادة القياس من شبكتك الحالية. تُحسب المسافة بناءً على الموقع التقريبي لطلبك، لذا فهي تُعد دليلاً تقريبياً وليست قيمة دقيقة.

المناطق المتاحة#

المنطقةالموقع
us-central1آيوا، الولايات المتحدة الأمريكية
us-east1ساوث كارولينا، الولايات المتحدة الأمريكية
us-east4شمال فيرجينيا، الولايات المتحدة الأمريكية
us-east5كولومبوس، الولايات المتحدة الأمريكية
us-south1دالاس، الولايات المتحدة الأمريكية
us-west1أوريغون، الولايات المتحدة الأمريكية
us-west2لوس أنجلوس، الولايات المتحدة الأمريكية
us-west3سولت ليك سيتي، الولايات المتحدة الأمريكية
us-west4لاس فيغاس، الولايات المتحدة الأمريكية
northamerica-northeast1مونتريال، كندا
northamerica-northeast2تورنتو، كندا
northamerica-south1كيريتارو، المكسيك
southamerica-east1ساو باولو، البرازيل
southamerica-west1سانتياغو، تشيلي

تهيئة نقطة النهاية#

مربع حوار النشر الجديد#

يجمع مربع حوار New Deployment ثلاثة مدخلات:

الحقلالوصف
النموذج (Model)أي نموذج مكتمل في مساحة العمل، يتم اختياره باستخدام أداة التحديد
المنطقة (Region)منطقة النشر، يتم اختيارها على الخريطة المصغرة أو في جدول زمن الانتقال
اسم النشر (Deployment Name)يُنشأ تلقائياً بمجرد تحديد النموذج والمنطقة، وهو قابل للتعديل

Ultralytics Platform New Deployment Dialog Fixed Resource Defaults أسفل الاسم، توجد لوحة الموارد (Resources) للقراءة فقط تحمل شارة Custom resources coming soon. الموارد غير قابلة للتكوين حالياً: حيث تعمل كل نقطة نهاية كنسخة واحدة يتم تحجيمها إلى الصفر عندما تكون في حالة خمول.

الأسماء التي يتم إنشاؤها تلقائياً

يجمع اسم النشر بين اسم النموذج ومدينة المنطقة، على سبيل المثال yolo26n-iowa. في تبويب نموذج Deploy، تُضاف لاحقة رقمية عندما يكون للنموذج نشر مسبق في المنطقة (على سبيل المثال yolo26n-iowa-2). يجب أن تكون الأسماء فريدة داخل مساحة العمل - حيث يؤدي نشر اسم موجود مسبقاً إلى إرجاع خطأ بدلاً من إعادة تسميته صمتاً.

علامة تبويب النشر (النشر السريع)#

يستخدم النشر من تبويب Deploy الخاص بالنموذج نفس الموارد الثابتة والاسم المنشأ تلقائياً، دون أي خطوات في مربع حوار. يظهر النشر فوراً في قائمة عمليات النشر النشطة (Active Deployments) أسفل جدول المناطق أثناء إنشائه.

إدارة نقاط النهاية#

أنماط العرض#

تدعم قائمة عمليات النشر ثلاثة أوضاع للعرض:

النمطالوصف
بطاقاتبطاقات تفصيلية كاملة مع السجلات، وأمثلة التعليمات البرمجية، ولوحة التنبؤ
مدمج (Compact)شبكة من البطاقات الأصغر مع المقاييس الرئيسية
جدولجدول بيانات (DataTable) مع أعمدة قابلة للفرز والبحث

Ultralytics Platform Deploy Tab Active Deployments Cards View

بطاقة النشر (عرض البطاقات)#

تعرض كل بطاقة نشر في عرض البطاقات ما يلي:

  • الرأس: الاسم، وعلم المنطقة، وشارة الحالة، وأزرار الإجراءات المتاحة للحالة الحالية - استبدال وإيقاف عندما تكون الحالة جاهزة (Ready)، وبدء عندما تكون الحالة متوقفة (Stopped)، والحذف في أي وقت
  • عنوان URL لنقطة النهاية: عنوان URL قابل للنسخ مع رابط لمرجع واجهة برمجة التطبيقات (API) الخاص بنقطة النهاية
  • المقاييس: عدد الطلبات (24 ساعة)، وزمن الانتقال P95، ومعدل الأخطاء، أو "لا توجد حركة مرور بعد" ("No traffic yet")
  • فحص الصحة: مؤشر صحة مباشر مع زمن الاستجابة والتحديث اليدوي
  • علامات التبويب: Logs، Code، و Predict
  • التذييل: بادئة مفتاح واجهة برمجة التطبيقات المرتبط بالنشر وتاريخ جاهزيته
  • رسالة الحالة: سبب الفشل، عند فشل عملية النشر

تظهر عناوين URL، والمقاييس، وفحص الصحة، والتبويبات فقط عندما يكون النشر في حالة جاهز (Ready). يعرض تبويب Logs إدخالات السجل الأخيرة مع تصفية حسب مستوى الخطورة (الكل / الأخطاء). يعرض تبويب Code أمثلة تعليمية برمجية جاهزة للاستخدام بلغات Python وJavaScript وcURL مع عنوان URL لنقطة النهاية الخاصة بك، بالإضافة إلى مفتاح واجهة برمجة التطبيقات المرتبط لمالكي مساحة العمل (راجع المراقبة). يوفر تبويب Predict لوحة تنبؤ مضمنة للاختبار مباشرة على النشر.

عرض البطاقات المدمجة وعرض الجدول

تعرض البطاقات المدمجة العلم، والاسم، والمدينة، والحالة، والمقاييس الثلاثة. عرض الجدول قابل للفرز حسب الاسم، والمنطقة، والحالة، والطلبات، وزمن الانتقال P95، والأخطاء، مع ميزة البحث عبر الاسم والمنطقة والحالة. يحتفظ كلا العرضين بإجراء الحذف؛ بينما تتوفر إجراءات البدء والإيقاف والاستبدال في عرض البطاقات.

استبدال نموذج#

استبدل النموذج الكامن وراء نقطة نهاية جاهزة دون تغيير عنوان URL الخاص بها:

  1. افتح النشر في عرض البطاقات
  2. انقر على استبدال النموذج
  3. حدد نموذجاً آخر مكتملاً من مساحة العمل نفسها
  4. قم بتعديل اسم النشر اختيارياً
  5. انقر على استبدال النموذج

يستمر النموذج الحالي في تقديم الخدمات بينما يبدأ تشغيل النموذج البديل. بمجرد أن يصبح البديل جاهزاً، تنتقل حركة المرور إلى النموذج الجديد. يظل مُعرف النشر، وعنوان URL، والمنطقة، ومفتاح واجهة برمجة التطبيقات دون تغيير؛ ولا يتغير اسم العرض إلا عند إدخال اسم جديد. إذا فشل الاستبدال، يظل النموذج والاسم السابقان نشطين.

يتطلب الاستبدال جميع الشروط التالية، ويتم رفضه بخلاف ذلك:

  • النشر في حالة جاهز (Ready) وليس لديه أي عملية دورة حياة أخرى قيد التنفيذ
  • النموذج البديل يمتلك أوزاناً وينتمي إلى نفس مساحة عمل النشر
  • النموذج البديل ليس هو النموذج المنشور بالفعل حالياً
نموذج واحد لكل نقطة نهاية

يؤدي الاستبدال إلى إزالة النموذج السابق من النشر. تخدم كل نقطة نهاية نموذجاً واحداً؛ قم بإنشاء نشر آخر عندما تحتاج إلى توفر كلا النموذجين في الوقت نفسه.

حالات النشر#

الحالةالوصف
إنشاء (Creating)يتم إعداد النشر
نشر (Deploying)الحاوية قيد البدء
جاهز (Ready)نقطة النهاية مباشرة وتقبل الطلبات
إيقاف (Stopping)نقطة النهاية قيد الإغلاق
متوقف (Stopped)نقطة النهاية متوقفة مؤقتاً وغير متاحة
Failedفشل النشر (انظر رسالة الخطأ)

عنوان URL لنقطة النهاية#

لكل نقطة نهاية عنوان URL فريد، على سبيل المثال:

https://predict-<deployment-id>-<hash>-<region>.a.run.app

Ultralytics Platform Deployment Card Endpoint Url With Copy Button انقر فوق زر النسخ لنسخ عنوان URL. انقر فوق أيقونة المستندات لفتح مرجع واجهة برمجة التطبيقات الخاص بنقطة النهاية. تقدم نقطة النهاية المسارات التالية:

المسارالطريقة (Method)الوصف
/predictPOSTتشغيل الاستدلال؛ يتطلب مفتاح واجهة برمجة التطبيقات الخاص بالنشر
/healthGETفحص الحيوية للإبلاغ عن حالة الخدمة وعدد النماذج المخزنة مؤقتاً
/GETملخص الحالة للخدمة المنشورة
/docsGETمرجع تفاعلي لواجهة برمجة التطبيقات مُنشأ لهذا النشر والنموذج والمنطقة

إدارة دورة الحياة#

تحكم في حالة نقطة النهاية الخاصة بك:

graph LR
    R[Ready]:::out -->|Stop| S[Stopped]:::extern
    S -->|Start| R
    R -->|Delete| D[Deleted]:::error
    S -->|Delete| D

    classDef out fill:#9C27B0,color:#fff
    classDef error fill:#F44336,color:#fff
    classDef extern fill:#607D8B,color:#fff
الإجراءالوصف
بدء (Start)استئناف نقطة نهاية متوقفة
إيقاف (Stop)إيقاف نقطة النهاية مؤقتاً
حذفإزالة نقطة النهاية بشكل دائم

إيقاف نقطة النهاية#

قم بإيقاف نقطة النهاية عندما لا تريدها أن تقبل الطلبات:

  1. انقر فوق أيقونة الإيقاف المؤقت على بطاقة النشر
  2. تتغير حالة نقطة النهاية إلى "Stopping" ثم "Stopped"

نقاط النهاية المتوقفة:

  • لا تقبل الطلبات، ولا تبلغ عن أي مقاييس أو حالة صحية
  • تحتفظ بعنوان URL، والمنطقة، ومفتاح واجهة برمجة التطبيقات المرتبط، ويمكن إعادة تشغيلها في أي وقت
  • لا تزال تحسب ضمن حصة النشر الخاصة بخطتك - احذف نقطة نهاية لتحرير خانتها

حذف نقطة النهاية#

إزالة نقطة نهاية بشكل دائم:

  1. انقر فوق أيقونة الحذف (سلة المهملات) على بطاقة النشر
  2. أكد الحذف في مربع الحوار
إجراء دائم

الحذف فوري ونهائي - عمليات النشر لا تذهب إلى سلة المهملات. يؤدي حذف نقطة النهاية إلى إزالة خدمتها وتحرير خانة في حصة النشر الخاصة بك. يمكنك دائماً إنشاء نقطة نهاية جديدة، لكنها تتلقى عنوان URL جديداً.

تتم إزالة عمليات النشر أيضاً عند حذف نموذجها أو مشروعها بشكل دائم، أو عندما يصل نموذج أو مشروع منقول إلى سلة المهملات إلى نهاية نافذة الاحتفاظ به.

استخدام نقاط النهاية#

المصادقة#

يرتبط كل نشر بمفتاح واجهة برمجة تطبيقات واحد من مساحة العمل المالكة للنموذج. قم تضمينه في الطلبات:

Authorization: Bearer YOUR_API_KEY

تقبل نقطة النهاية المفتاح المرتبط عند الإنشاء فقط، لذا لا يوجد مفتاح آخر يفتحها - ولا حتى مفتاح نشط آخر في نفس مساحة العمل. للتحكم في المفتاح الذي يتم ربطه، قم بالنشر عبر واجهة برمجة التطبيقات المُوثقة بمفتاح مالك مساحة العمل: يتم ربط هذا المفتاح بالضبط، وأنت تمتلكه بالفعل. عمليات النشر التي تُنشأ بأي طريقة أخرى (واجهة مستخدم المنصة، أو استدعاء واجهة برمجة تطبيقات مُوثق كعضو في الفريق) تربط أحد مفاتيح مساحة العمل المالكة النشطة تلقائياً - حددها من خلال بادئة المفتاح الظاهرة في تذييل بطاقة النشر، واطلب من مالك مساحة العمل قيمته، نظراً لأن المالك وحده هو من يمكنه عرض قيم المفاتيح (راجع مفاتيح واجهة برمجة التطبيقات). يمكن لأعضاء الفريق الذين ليس لديهم المفتاح المرتبط تشغيل الاستدلال من خلال وكيل التنبؤ للمنصة في المتصفح.

حذف المفتاح المرتبط لا يقفل نقطة النهاية

حذف أو إلغاء تنشيط مفتاح واجهة برمجة التطبيقات المرتبط لا يلغي الوصول المباشر إلى نقطة النهاية - فاي شخص يحمل سلسلة المفتاح لا يزال بإمكانه استدعاء عنوان URL لنقطة النهاية. ما يتعطل هو وكيل التنبؤ للمنصة، والذي يتحقق من المفتاح بشكل مباشر ويبلغ عن عدم توفره بعد. لإلغاء الوصول تماماً، أوقف النشر أو احذفه؛ وبعد تدوير المفاتيح، أنشئ نقطة النهاية مرة أخرى بحيث تربط المفتاح الجديد.

طلبات نقطة النهاية المباشرة#

أرسل طلبات الإنتاج مباشرة إلى عنوان URL الظاهر على بطاقة النشر. هذه الطلبات لا تمر عبر محدد معدل طلبات واجهة برمجة التطبيقات للمنصة، لذا فإن حد التنبؤ البالغ 20 طلباً في الدقيقة لا ينطبق. لا يزال لنقطة النهاية سقف السعة الخاص بها:

  • تخدم نسخة واحدة كل نقطة نهاية، مع معالجة عدد محدود من الطلبات في نفس الوقت
  • الطلبات التي لا يمكن خدمتها بسرعة ترجع 429 مع رأس Retry-After
  • يمكن تشغيل طلب واحد لمدة تصل إلى ساعة واحدة، مما يتيح إكمال استدلال الفيديو
  • الاستجابات التي تزيد عن 1 كيلوبايت يتم ضغطها باستخدام gzip، وتُسمح بطلبات المتصفح عبر الأصل (cross-origin)

مثال على الطلب#

import requests

# Deployment endpoint
url = "https://YOUR_DEPLOYMENT_URL.run.app/predict"

# Headers with your deployment API key
headers = {"Authorization": "Bearer YOUR_API_KEY"}

# Inference parameters
data = {"conf": 0.25, "iou": 0.7, "imgsz": 640}

# Send image for inference
with open("image.jpg", "rb") as f:
    response = requests.post(url, headers=headers, data=data, files={"file": f})

print(response.json())

معلمات الطلب#

المعاملالنوعالافتراضيالنطاقالوصف
fileملف--ملف صورة أو فيديو (مطلوب ما لم يتم تعيين source)
conffloat0.250.01 – 1.0الحد الأدنى لعتبة الثقة
ioufloat0.70.0 – 0.95عتبة NMS IoU
imgszint64032 – 1280حجم صورة الإدخال بالبكسل
normalizeمنطقي (bool)false-إرجاع إحداثيات صندوق الإحاطة (bounding box) كـ 0 – 1
decimalsint50 – 10الدقة العشرية لقيم الإحداثيات
bitsint88, 12, 16كمية خريطة العمق، لنماذج العمق فقط
sourcestring--عنوان URL لصورة أو سلسلة base64 (بديل لـ file)

راجع استجابات العمق لمعرفة كيف يغير bits خريطة العمق المُرجعة وكيفية فك شفرتها.

استدلال الفيديو

تقبل نقاط النهاية المخصصة كلاً من الصور والفيديوهات عبر معامل file.

  • تنسيقات الصور (حتى 100 ميجابايت): AVIF, BMP, DNG, HEIC, JP2, JPEG, JPG, MPO, PNG, TIF, TIFF, WEBP
  • تنسيقات الفيديو (حتى 100 ميجابايت): ASF, AVI, GIF, M4V, MKV, MOV, MP4, MPEG, MPG, TS, WEBM, WMV

يتم معالجة كل إطار فيديو على حدة وتُرجع النتائج لكل إطار. يمكنك أيضاً تمرير عنوان URL عام لصورة أو صورة مشفرة بتنسيق base64 عبر معلمة source بدلاً من file. يتم رفض عمليات التحميل مفرطة الحجم باستخدام 413.

تنسيق الاستجابة#

مثل الاستدلال المشترك تماماً مع الحقول الخاصة بالمهمة.

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

  • تعتمد حدود نقاط النهاية على الخطة:

    • Free: حتى 3 عمليات نشر
    • Pro: حتى 10 عمليات نشر
    • Enterprise: عمليات نشر غير محدودة

    لا يزال من الممكن نشر كل نموذج في مناطق متعددة ضمن حصة خطتك. تُحسب الحصة مقابل مساحة العمل المالكة للنموذج، لذا فإن أعضاء الفريق الذين ينشرون نموذجاً مشتركاً يستهلكون مخصصات المالك. يؤدي الوصول إلى الحد الأقصى إلى إرجاع خطأ يطلب منك حذف نشر موجود أولاً.

  • لا، المناطق ثابتة. لتغيير المناطق:

    1. احذف نقطة النهاية الحالية
    2. أنشئ نقطة نهاية جديدة في المنطقة المطلوبة

    تتلقى نقطة النهاية الجديدة عنوان URL جديداً. لتغيير النموذج الكامن خلف نقطة النهاية وحدها، استخدم استبدال النموذج، والذي يحتفظ بعنوان URL.

  • للتغطية العالمية:

    1. انشر في مناطق متعددة
    2. استخدم موازن تحميل أو توجيه DNS
    3. وجه المستخدمين إلى أقرب نقطة نهاية
  • يعتمد وقت التشغيل البارد على النموذج وما إذا كانت نقطة النهاية قد تم تحجيمها إلى الصفر؛ تمنح المنصة نقطة النهاية الخاملة وقتاً إضافياً للبدء قبل الإبلاغ عن عدم صحتها. يؤدي تشغيل فحص الصحة من بطاقة النشر قبل تدفق مفاجئ لحركة المرور إلى تسخين النسخة.

  • لا. تخدم كل نقطة نهاية حركة المرور على عنوان URL لنقطة النهاية المُنشأ والظاهر على بطاقتها، والذي يظل مستقراً طوال عمر النشر - بما في ذلك عبر عمليات استبدال النموذج.

التعليقات