Link to this sectionالتصدير إلى تنسيق نموذج TF.js من تنسيق نموذج YOLO26#
قد يكون نشر نماذج التعلم الآلي مباشرة في المتصفح أو على Node.js أمرًا صعبًا. ستحتاج إلى التأكد من تحسين تنسيق النموذج الخاص بك لأداء أسرع حتى يمكن استخدام النموذج لتشغيل تطبيقات تفاعلية محليًا على جهاز المستخدم. تم تصميم تنسيق نموذج TensorFlow.js، أو TF.js، لاستخدام طاقة قليلة مع توفير أداء سريع.
تتيح لك ميزة 'التصدير إلى تنسيق نموذج TF.js' تحسين نماذج Ultralytics YOLO26 الخاصة بك للاستدلال عالي السرعة والمُشغَّل محليًا لـ اكتشاف الكائنات. في هذا الدليل، سنرشدك خلال تحويل نماذجك إلى تنسيق TF.js، مما يسهل على نماذجك الأداء الجيد على مختلف المتصفحات المحلية وتطبيقات Node.js.
Link to this sectionلماذا يجب عليك التصدير إلى TF.js؟#
يوفر تصدير نماذج التعلم الآلي الخاصة بك إلى TensorFlow.js، الذي طوره فريق TensorFlow كجزء من نظام TensorFlow البيئي الأوسع، العديد من المزايا لنشر تطبيقات التعلم الآلي. فهو يساعد في تعزيز خصوصية المستخدم وأمنه من خلال إبقاء البيانات الحساسة على الجهاز. توضح الصورة أدناه بنية TensorFlow.js، وكيفية تحويل نماذج التعلم الآلي ونشرها على كل من متصفحات الويب وNode.js.
يؤدي تشغيل النماذج محليًا أيضًا إلى تقليل زمن الوصول وتوفير تجربة مستخدم أكثر استجابة. يأتي TensorFlow.js أيضًا بإمكانيات دون اتصال بالإنترنت، مما يسمح للمستخدمين باستخدام تطبيقك حتى بدون اتصال بالإنترنت. تم تصميم TF.js للتنفيذ الفعال للنماذج المعقدة على الأجهزة ذات الموارد المحدودة حيث تم تصميمه من أجل قابلية التوسع، مع دعم تسريع GPU.
Link to this sectionالميزات الرئيسية لـ TF.js#
فيما يلي الميزات الرئيسية التي تجعل من TF.js أداة قوية للمطورين:
-
دعم عبر الأنظمة الأساسية: يمكن استخدام TensorFlow.js في كل من بيئات المتصفح وNode.js، مما يوفر مرونة في النشر عبر منصات مختلفة. إنه يسمح للمطورين ببناء التطبيقات ونشرها بسهولة أكبر.
-
دعم للعديد من الأطراف الخلفية (Backends): يدعم TensorFlow.js العديد من الأطراف الخلفية للحساب بما في ذلك CPU، وWebGL لتسريع GPU، وWebAssembly (WASM) لسرعة تنفيذ قريبة من الأصلية، وWebGPU لقدرات التعلم الآلي المتقدمة المستندة إلى المتصفح.
-
إمكانيات دون اتصال بالإنترنت: باستخدام TensorFlow.js، يمكن تشغيل النماذج في المتصفح دون الحاجة إلى اتصال بالإنترنت، مما يجعل من الممكن تطوير تطبيقات تعمل دون اتصال بالإنترنت.
Link to this sectionخيارات النشر مع TensorFlow.js#
قبل أن نتعمق في عملية تصدير نماذج YOLO26 إلى تنسيق TF.js، دعنا نستكشف بعض سيناريوهات النشر النموذجية حيث يتم استخدام هذا التنسيق.
يوفر TF.js مجموعة من الخيارات لنشر نماذج التعلم الآلي الخاصة بك:
-
تطبيقات تعلم آلي داخل المتصفح: يمكنك بناء تطبيقات ويب تشغل نماذج تعلم آلي مباشرة في المتصفح. يتم التخلص من الحاجة إلى الحوسبة من جانب الخادم ويتم تقليل حمل الخادم.
-
تطبيقات Node.js: يدعم TensorFlow.js أيضًا النشر في بيئات Node.js، مما يتيح تطوير تطبيقات تعلم آلي من جانب الخادم. إنه مفيد بشكل خاص للتطبيقات التي تتطلب قوة معالجة الخادم أو الوصول إلى بيانات من جانب الخادم.
-
إضافات Chrome: سيناريو نشر مثير للاهتمام هو إنشاء إضافات Chrome باستخدام TensorFlow.js. على سبيل المثال، يمكنك تطوير إضافة تسمح للمستخدمين بالنقر بزر الماوس الأيمن على صورة داخل أي صفحة ويب لتصنيفها باستخدام نموذج تعلم آلي مُدرب مسبقًا. يمكن دمج TensorFlow.js في تجارب تصفح الويب اليومية لتوفير رؤى فورية أو تحسينات تعتمد على التعلم الآلي.
Link to this sectionتصدير نماذج YOLO26 إلى TensorFlow.js#
يمكنك توسيع توافق النموذج ومرونة النشر عن طريق تحويل نماذج YOLO26 إلى TF.js.
Link to this sectionالتثبيت#
لتثبيت الحزمة المطلوبة، قم بتشغيل:
# Install the required package for YOLO26
pip install ultralyticsللحصول على تعليمات مفصلة وأفضل الممارسات المتعلقة بعملية التثبيت، تحقق من دليل تثبيت Ultralytics الخاص بنا. أثناء تثبيت الحزم المطلوبة لـ YOLO26، إذا واجهت أي صعوبات، فاستشر دليل المشكلات الشائعة للحصول على حلول ونصائح.
Link to this sectionالاستخدام#
تم تصميم جميع نماذج Ultralytics YOLO26 لدعم التصدير فورًا، مما يسهل دمجها في سير عمل النشر المفضل لديك. يمكنك عرض القائمة الكاملة لتنسيقات التصدير المدعومة وخيارات التكوين لاختيار أفضل إعداد لتطبيقك.
تنسيق TF.js هو للتصدير فقط في Ultralytics - لا تتوفر ميزتا التنبؤ والتحقق محليًا. انشر النموذج المصدر في المتصفح أو تطبيق Node.js باستخدام بيئة تشغيل TensorFlow.js.
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF.js format
model.export(format="tfjs") # creates '/yolo26n_web_model'لا يوفر Ultralytics طرفًا خلفيًا محليًا لاستدلال TF.js، لذا لا يمكن لـ yolo predict و yolo val تحميل _web_model. قم بتشغيل النموذج المصدر باستخدام بيئة تشغيل TensorFlow.js في تطبيق الويب أو Node.js الخاص بك بدلاً من ذلك.
Link to this sectionوسائط التصدير#
| الوسيط | النوع | الافتراضي | الوصف |
|---|---|---|---|
format | str | 'tfjs' | التنسيق المستهدف للنموذج المصدر، والذي يحدد التوافق مع بيئات النشر المختلفة. |
imgsz | int أو tuple | 640 | حجم الصورة المطلوب لمدخل النموذج. يمكن أن يكون عدداً صحيحاً للصور المربعة أو زوجاً مرتباً (height, width) لأبعاد محددة. |
quantize | int أو str | None | دقة التكميم (Quantization): 16 (FP16) أو 8 (INT8/PTQ; تتطلب data/fraction للمعايرة)؛ القيمة 32 أو عدم التعيين تعني FP32. تحل هذه محل وسائط half/int8 التي تم إيقافها. |
nms | bool | False | يضيف كبت غير الحد الأقصى (NMS)، وهو أمر ضروري لمعالجة الاكتشاف بدقة وكفاءة. |
batch | int | 1 | يحدد حجم استدلال دفعة النموذج المصدر أو الحد الأقصى لعدد الصور التي سيعالجها النموذج المصدر في وقت واحد في وضع predict. |
data | str | 'coco8.yaml' | المسار إلى ملف إعداد dataset (الافتراضي: coco8.yaml)، وهو ضروري لعملية التكميم (quantization). |
fraction | float | 1.0 | يحدد جزءاً من مجموعة البيانات لاستخدامه في معايرة تكميم INT8. يسمح بالمعايرة على مجموعة فرعية من مجموعة البيانات الكاملة، وهو مفيد للتجارب أو عندما تكون الموارد محدودة. إذا لم يتم تحديده مع تمكين INT8، فسيتم استخدام مجموعة البيانات الكاملة. |
device | str | None | يحدد الجهاز لغرض التصدير: CPU (device=cpu)، أو MPS لـ Apple silicon (device=mps). |
لمزيد من التفاصيل حول عملية التصدير، تفضل بزيارة صفحة وثائق Ultralytics حول التصدير.
Link to this sectionنشر نماذج YOLO26 المصدرة بتنسيق TensorFlow.js#
الآن بعد أن قمت بتصدير نموذج YOLO26 الخاص بك إلى تنسيق TF.js، فإن الخطوة التالية هي نشره. لا يوفر Ultralytics طرفًا خلفيًا محليًا لاستدلال TF.js، لذا فإن _web_model المصدر مخصص للتشغيل مباشرة باستخدام بيئة تشغيل TensorFlow.js في متصفح أو تطبيق Node.js.
للحصول على تعليمات مفصلة حول نشر نماذج TF.js الخاصة بك، ألق نظرة على الموارد التالية:
-
إضافة Chrome: إليك وثائق المطور حول كيفية نشر نماذج TF.js الخاصة بك في إضافة Chrome.
-
تشغيل TensorFlow.js في Node.js: منشور مدونة TensorFlow حول تشغيل TensorFlow.js في Node.js مباشرة.
-
نشر TensorFlow.js - مشروع Node على منصة سحابية: منشور مدونة TensorFlow حول نشر نموذج TensorFlow.js على منصة سحابية.
Link to this sectionملخص#
في هذا الدليل، تعلمنا كيفية تصدير نماذج Ultralytics YOLO26 إلى تنسيق TensorFlow.js. من خلال التصدير إلى TF.js، يمكنك الحصول على المرونة لتحسين نماذج YOLO26 الخاصة بك ونشرها وتوسيع نطاقها عبر مجموعة واسعة من المنصات.
لمزيد من التفاصيل حول الاستخدام، تفضل بزيارة وثائق TensorFlow.js الرسمية.
لمزيد من المعلومات حول دمج Ultralytics YOLO26 مع منصات وإطارات عمل أخرى، لا تنسَ الاطلاع على صفحة دليل التكامل. إنها مليئة بالموارد الرائعة لمساعدتك في تحقيق أقصى استفادة من YOLO26 في مشاريعك.
Link to this sectionالأسئلة الشائعة#
Link to this sectionكيف يمكنني تصدير نماذج Ultralytics YOLO26 إلى تنسيق TensorFlow.js؟#
يعد تصدير نماذج Ultralytics YOLO26 إلى تنسيق TensorFlow.js (TF.js) أمرًا مباشرًا. يمكنك اتباع الخطوات التالية:
from ultralytics import YOLO
# Load a YOLO26 model
model = YOLO("yolo26n.pt")
# Export the model to TF.js format
model.export(format="tfjs") # creates '/yolo26n_web_model'
# Deploy the exported '_web_model' with the TensorFlow.js runtime in a browser or Node.js app.
# Ultralytics does not provide a local TF.js inference backend.لمزيد من التفاصيل حول خيارات التصدير المدعومة، تفضل بزيارة صفحة وثائق Ultralytics حول خيارات النشر.
Link to this sectionلماذا يجب علي تصدير نماذج YOLO26 الخاصة بي إلى TensorFlow.js؟#
يوفر تصدير نماذج YOLO26 إلى TensorFlow.js العديد من المزايا، بما في ذلك:
- التنفيذ المحلي: يمكن تشغيل النماذج مباشرة في المتصفح أو Node.js، مما يقلل من زمن الوصول ويعزز تجربة المستخدم.
- دعم عبر الأنظمة الأساسية: يدعم TF.js بيئات متعددة، مما يتيح المرونة في النشر.
- إمكانيات دون اتصال بالإنترنت: تمكّن التطبيقات من العمل بدون اتصال بالإنترنت، مما يضمن الموثوقية والخصوصية.
- تسريع GPU: يستفيد من WebGL لتسريع GPU، مما يعمل على تحسين الأداء على الأجهزة ذات الموارد المحدودة.
Link to this sectionكيف يفيد TensorFlow.js تطبيقات التعلم الآلي المستندة إلى المتصفح؟#
تم تصميم TensorFlow.js خصيصًا للتنفيذ الفعال لنماذج التعلم الآلي في المتصفحات وبيئات Node.js. إليك كيف يفيد التطبيقات المستندة إلى المتصفح:
- يقلل زمن الوصول: يشغل نماذج التعلم الآلي محليًا، مما يوفر نتائج فورية دون الاعتماد على الحسابات من جانب الخادم.
- يحسن الخصوصية: يحافظ على البيانات الحساسة على جهاز المستخدم، مما يقلل من مخاطر الأمان.
- يمكّن الاستخدام دون اتصال بالإنترنت: يمكن للنماذج العمل بدون اتصال بالإنترنت، مما يضمن وظائف متسقة.
- يدعم أطرافًا خلفية متعددة: يوفر المرونة مع أطراف خلفية مثل CPU، وWebGL، وWebAssembly (WASM)، وWebGPU للاحتياجات الحسابية المختلفة.
هل أنت مهتم بمعرفة المزيد عن TF.js؟ تحقق من دليل TensorFlow.js الرسمي.
Link to this sectionما هي الميزات الرئيسية لـ TensorFlow.js لنشر نماذج YOLO26؟#
تشمل الميزات الرئيسية لـ TensorFlow.js ما يلي:
- دعم عبر الأنظمة الأساسية: يمكن استخدام TF.js في كل من متصفحات الويب وNode.js، مما يوفر مرونة نشر واسعة.
- أطراف خلفية متعددة: يدعم CPU، وWebGL لتسريع GPU، وWebAssembly (WASM)، وWebGPU للعمليات المتقدمة.
- إمكانيات دون اتصال بالإنترنت: يمكن تشغيل النماذج مباشرة في المتصفح بدون اتصال بالإنترنت، مما يجعله مثاليًا لتطوير تطبيقات ويب سريعة الاستجابة.
لسيناريوهات النشر والمزيد من المعلومات المتعمقة، راجع قسمنا حول خيارات النشر مع TensorFlow.js.
Link to this sectionهل يمكنني نشر نموذج YOLO26 على تطبيقات Node.js من جانب الخادم باستخدام TensorFlow.js؟#
نعم، يسمح TensorFlow.js بنشر نماذج YOLO26 في بيئات Node.js. وهذا يتيح تطبيقات تعلم آلي من جانب الخادم تستفيد من قوة معالجة الخادم والوصول إلى البيانات من جانب الخادم. تشمل حالات الاستخدام النموذجية معالجة البيانات في الوقت الفعلي وخطوط أنابيب التعلم الآلي على خوادم الواجهة الخلفية.
للبدء في نشر Node.js، راجع دليل تشغيل TensorFlow.js في Node.js من TensorFlow.