Link to this sectionدليل نشر YOLO26 على نقاط نهاية Amazon SageMaker#
يفتح نشر نماذج الرؤية الحاسوبية المتقدمة مثل Ultralytics YOLO26 على نقاط نهاية Amazon SageMaker مجموعة واسعة من الاحتمالات لمختلف تطبيقات التعلم الآلي. يكمن مفتاح استخدام هذه النماذج بفعالية في فهم عمليات الإعداد والتهيئة والنشر الخاصة بها. يصبح YOLO26 أكثر قوة عند دمجه بسلاسة مع Amazon SageMaker، وهي خدمة تعلم آلي قوية وقابلة للتوسع من AWS.
سيأخذك هذا الدليل خلال عملية نشر نماذج PyTorch الخاصة بـ YOLO26 على نقاط نهاية Amazon SageMaker خطوة بخطوة. ستتعلم أساسيات إعداد بيئة AWS الخاصة بك، وتهيئة النموذج بشكل مناسب، واستخدام أدوات مثل AWS CloudFormation و AWS Cloud Development Kit (CDK) للنشر.
Link to this sectionAmazon SageMaker#
Amazon SageMaker هي خدمة تعلم آلي من Amazon Web Services (AWS) تبسط عملية بناء نماذج التعلم الآلي وتدريبها ونشرها. وهي توفر مجموعة واسعة من الأدوات للتعامل مع مختلف جوانب سير عمل التعلم الآلي. ويشمل ذلك ميزات آلية لضبط النماذج، وخيارات لتدريب النماذج على نطاق واسع، وطرقاً مباشرة لنشر النماذج في بيئة الإنتاج. تدعم SageMaker أطر عمل التعلم الآلي الشهيرة، مما يوفر المرونة اللازمة للمشاريع المتنوعة. كما تغطي ميزاتها تصنيف البيانات، وإدارة سير العمل، وتحليل الأداء.
Link to this sectionنشر YOLO26 على نقاط نهاية Amazon SageMaker#
يسمح لك نشر YOLO26 على نقاط نهاية Amazon SageMaker باستخدام بيئتها المُدارة للاستدلال في الوقت الفعلي والاستفادة من ميزات مثل القياس التلقائي. ألقِ نظرة على بنية AWS أدناه.
Link to this sectionالخطوة 1: إعداد بيئة AWS الخاصة بك#
أولاً، تأكد من توفر المتطلبات الأساسية التالية:
-
حساب AWS: إذا لم يكن لديك حساب بالفعل، قم بإنشاء حساب AWS.
-
أدوار IAM مهيأة: ستحتاج إلى دور IAM مع الأذونات اللازمة لخدمات Amazon SageMaker و AWS CloudFormation و Amazon S3. يجب أن يمتلك هذا الدور سياسات تسمح له بالوصول إلى هذه الخدمات.
-
AWS CLI: إذا لم تكن قد ثبته بالفعل، قم بتنزيل وتثبيت واجهة سطر أوامر AWS (CLI) وقم بتهيئتها بتفاصيل حسابك. اتبع تعليمات AWS CLI للتثبيت.
-
AWS CDK: إذا لم تكن قد ثبته بالفعل، قم بتثبيت AWS Cloud Development Kit (CDK)، والذي سيُستخدم لكتابة نصوص النشر البرمجية. اتبع تعليمات AWS CDK للتثبيت.
-
حصة الخدمة الكافية: تأكد من أن لديك حصصاً كافية لموردين منفصلين في Amazon SageMaker: أحدهما لـ
ml.m5.4xlargeلاستخدام نقطة النهاية والآخر لـml.m5.4xlargeلاستخدام مثيل الجهاز الدفتري. يتطلب كل منهما قيمة حصة لا تقل عن واحد. إذا كانت حصصك الحالية أقل من هذا المتطلب، فمن المهم طلب زيادة لكل منها. يمكنك طلب زيادة الحصة باتباع التعليمات التفصيلية في وثائق حصص خدمة AWS.
Link to this sectionالخطوة 2: استنساخ مستودع YOLO26 SageMaker#
الخطوة التالية هي استنساخ مستودع AWS المحدد الذي يحتوي على الموارد لنشر YOLO26 على SageMaker. يتضمن هذا المستودع، المستضاف على GitHub، نصوص CDK البرمجية وملفات التهيئة اللازمة.
-
استنساخ مستودع GitHub: نفذ الأمر التالي في محطتك الطرفية لاستنساخ مستودع host-yolov8-on-sagemaker-endpoint:
git clone https://github.com/aws-samples/host-yolov8-on-sagemaker-endpoint.git -
الانتقال إلى الدليل المستنسخ: قم بتغيير دليلك إلى المستودع المستنسخ:
cd host-yolov8-on-sagemaker-endpoint/yolov8-pytorch-cdk
Link to this sectionالخطوة 3: إعداد بيئة CDK#
الآن بعد أن أصبح لديك الكود اللازم، قم بإعداد بيئتك للنشر باستخدام AWS CDK.
-
إنشاء بيئة Python افتراضية: هذا يعزل بيئة Python والتبعيات الخاصة بك. قم بتشغيل:
python3 -m venv .venv -
تنشيط البيئة الافتراضية:
source .venv/bin/activate -
تثبيت التبعيات: قم بتثبيت تبعيات Python المطلوبة للمشروع:
pip3 install -r requirements.txt -
ترقية مكتبة AWS CDK: تأكد من حصولك على أحدث إصدار من مكتبة AWS CDK:
pip install --upgrade aws-cdk-lib
Link to this sectionالخطوة 4: إنشاء حزمة AWS CloudFormation#
-
تجميع تطبيق CDK: قم بإنشاء قالب AWS CloudFormation من كود CDK الخاص بك:
cdk synth -
تمهيد تطبيق CDK: قم بإعداد بيئة AWS الخاصة بك لنشر CDK:
cdk bootstrap -
نشر الحزمة: سيؤدي هذا إلى إنشاء موارد AWS اللازمة ونشر نموذجك:
cdk deploy
Link to this sectionالخطوة 5: نشر نموذج YOLO#
قبل الغوص في تعليمات النشر، تأكد من الاطلاع على مجموعة نماذج YOLO26 التي تقدمها Ultralytics. سيساعدك هذا في اختيار النموذج الأنسب لمتطلبات مشروعك.
بعد إنشاء حزمة AWS CloudFormation، الخطوة التالية هي نشر YOLO26.
-
فتح مثيل الجهاز الدفتري: انتقل إلى وحدة تحكم AWS وانتقل إلى خدمة Amazon SageMaker. حدد "Notebook Instances" من لوحة التحكم، ثم حدد موقع مثيل الجهاز الدفتري الذي تم إنشاؤه بواسطة نص النشر البرمجي CDK الخاص بك. افتح مثيل الجهاز الدفتري للوصول إلى بيئة Jupyter.
-
الوصول إلى inference.py وتعديله: بعد فتح مثيل SageMaker الدفتري في Jupyter، حدد موقع ملف inference.py. قم بتحرير دالة output_fn في ملف inference.py كما هو موضح أدناه واحفظ تغييراتك في النص البرمجي، مع التأكد من عدم وجود أخطاء في بناء الجملة.
import json def output_fn(prediction_output): """Formats model outputs as JSON string, extracting attributes like boxes, masks, keypoints.""" print("Executing output_fn from inference.py ...") infer = {} for result in prediction_output: if result.boxes is not None: infer["boxes"] = result.boxes.numpy().data.tolist() if result.masks is not None: infer["masks"] = result.masks.numpy().data.tolist() if result.keypoints is not None: infer["keypoints"] = result.keypoints.numpy().data.tolist() if result.obb is not None: infer["obb"] = result.obb.numpy().data.tolist() if result.probs is not None: infer["probs"] = result.probs.numpy().data.tolist() return json.dumps(infer) -
نشر نقطة النهاية باستخدام 1_DeployEndpoint.ipynb: في بيئة Jupyter، افتح دفتر الملاحظات 1_DeployEndpoint.ipynb الموجود في دليل sm-notebook. اتبع التعليمات الواردة في دفتر الملاحظات وقم بتشغيل الخلايا لتنزيل نموذج YOLO26، وتغليفه بكود الاستدلال المحدث، ورفعه إلى حاوية Amazon S3. سيرشدك دفتر الملاحظات خلال إنشاء ونشر نقطة نهاية SageMaker لنموذج YOLO26.
Link to this sectionالخطوة 6: اختبار النشر الخاص بك#
الآن بعد أن تم نشر نموذج YOLO26 الخاص بك، من المهم اختبار أدائه وعمله.
-
فتح دفتر ملاحظات الاختبار: في نفس بيئة Jupyter، حدد موقع وافتح دفتر الملاحظات 2_TestEndpoint.ipynb، الموجود أيضاً في دليل sm-notebook.
-
تشغيل دفتر ملاحظات الاختبار: اتبع التعليمات الواردة داخل دفتر الملاحظات لاختبار نقطة نهاية SageMaker المنشورة. يتضمن ذلك إرسال صورة إلى نقطة النهاية وتشغيل الاستدلالات. بعد ذلك، ستقوم برسم المخرجات لتصور أداء النموذج والدقة، كما هو موضح أدناه.
- تنظيف الموارد: سيرشدك دفتر ملاحظات الاختبار أيضاً خلال عملية تنظيف نقطة النهاية والنموذج المستضاف. هذه خطوة مهمة لإدارة التكاليف والموارد بفعالية، خاصة إذا كنت لا تخطط لاستخدام النموذج المنشور على الفور.
Link to this sectionالخطوة 7: المراقبة والإدارة#
بعد الاختبار، تعد المراقبة المستمرة وإدارة نموذجك المنشور أمراً ضرورياً.
-
المراقبة باستخدام Amazon CloudWatch: تحقق بانتظام من أداء وسلامة نقطة نهاية SageMaker الخاصة بك باستخدام Amazon CloudWatch.
-
إدارة نقطة النهاية: استخدم وحدة تحكم SageMaker للإدارة المستمرة لنقطة النهاية. يتضمن ذلك القياس أو التحديث أو إعادة نشر النموذج حسب الحاجة.
بإكمال هذه الخطوات، ستكون قد قمت بنشر واختبار نموذج YOLO26 بنجاح على نقاط نهاية Amazon SageMaker. لا تمنحك هذه العملية خبرة عملية في استخدام خدمات AWS لنشر التعلم الآلي فحسب، بل تضع أيضاً الأساس لنشر نماذج متقدمة أخرى في المستقبل.
Link to this sectionملخص#
أخذك هذا الدليل خطوة بخطوة خلال نشر YOLO26 على نقاط نهاية Amazon SageMaker باستخدام AWS CloudFormation و AWS Cloud Development Kit (CDK). تتضمن العملية استنساخ مستودع GitHub اللازم، وإعداد بيئة CDK، ونشر النموذج باستخدام خدمات AWS، واختبار أدائه على SageMaker.
لمزيد من التفاصيل الفنية، راجع هذه المقالة على مدونة AWS Machine Learning. يمكنك أيضاً الاطلاع على وثائق Amazon SageMaker الرسمية للحصول على مزيد من الرؤى حول الميزات والوظائف المختلفة.
هل أنت مهتم بمعرفة المزيد عن تكاملات YOLO26 المختلفة؟ قم بزيارة صفحة دليل تكاملات Ultralytics لاكتشاف أدوات وإمكانات إضافية يمكن أن تعزز مشاريع التعلم الآلي الخاصة بك.
Link to this sectionالأسئلة الشائعة#
Link to this sectionكيف يمكنني نشر نموذج Ultralytics YOLO26 على نقاط نهاية Amazon SageMaker؟#
لنشر نموذج Ultralytics YOLO26 على نقاط نهاية Amazon SageMaker، اتبع الخطوات التالية:
- إعداد بيئة AWS الخاصة بك: تأكد من أن لديك حساب AWS، وأدوار IAM مع الأذونات اللازمة، وتكوين AWS CLI. قم بتثبيت AWS CDK إذا لم يتم ذلك بالفعل (راجع تعليمات AWS CDK).
- استنساخ مستودع YOLO26 SageMaker:
git clone https://github.com/aws-samples/host-yolov8-on-sagemaker-endpoint.git cd host-yolov8-on-sagemaker-endpoint/yolov8-pytorch-cdk - إعداد بيئة CDK: قم بإنشاء بيئة Python افتراضية، وقم بتنشيطها، وقم بتثبيت التبعيات، وقم بترقية مكتبة AWS CDK.
python3 -m venv .venv source .venv/bin/activate pip3 install -r requirements.txt pip install --upgrade aws-cdk-lib - النشر باستخدام AWS CDK: تجميع ونشر حزمة CloudFormation، وتمهيد البيئة.
cdk synth cdk bootstrap cdk deploy
لمزيد من التفاصيل، راجع قسم الوثائق.
Link to this sectionما هي المتطلبات الأساسية لنشر YOLO26 على Amazon SageMaker؟#
لنشر YOLO26 على Amazon SageMaker، تأكد من استيفاء المتطلبات الأساسية التالية:
- حساب AWS: حساب AWS نشط (سجل هنا).
- أدوار IAM: أدوار IAM مهيأة مع أذونات لخدمات SageMaker و CloudFormation و Amazon S3.
- AWS CLI: واجهة سطر أوامر AWS مثبتة ومهيأة (دليل تثبيت AWS CLI).
- AWS CDK: مجموعة أدوات تطوير AWS السحابية مثبتة (دليل إعداد CDK).
- حصص الخدمة: حصص كافية لمثيلات
ml.m5.4xlargeلكل من استخدام نقطة النهاية والجهاز الدفتري (اطلب زيادة الحصة).
للإعداد التفصيلي، راجع هذا القسم.
Link to this sectionلماذا يجب أن أستخدم Ultralytics YOLO26 على Amazon SageMaker؟#
يوفر استخدام Ultralytics YOLO26 على Amazon SageMaker العديد من المزايا:
- قابلية التوسع والإدارة: توفر SageMaker بيئة مُدارة مع ميزات مثل القياس التلقائي، مما يساعد في احتياجات الاستدلال في الوقت الفعلي.
- التكامل مع خدمات AWS: تكامل سلس مع خدمات AWS الأخرى، مثل S3 لتخزين البيانات، و CloudFormation للبنية التحتية ككود، و CloudWatch للمراقبة.
- سهولة النشر: إعداد مبسط باستخدام نصوص AWS CDK البرمجية وعمليات نشر انسيابية.
- الأداء: استفد من البنية التحتية عالية الأداء لـ Amazon SageMaker لتشغيل مهام الاستدلال واسعة النطاق بكفاءة.
استكشف المزيد حول مزايا استخدام SageMaker في قسم المقدمة.
Link to this sectionهل يمكنني تخصيص منطق الاستدلال لـ YOLO26 على Amazon SageMaker؟#
نعم، يمكنك تخصيص منطق الاستدلال لـ YOLO26 على Amazon SageMaker:
-
تعديل
inference.py: حدد موقع دالةoutput_fnوقم بتخصيصها في ملفinference.pyلتكييف تنسيقات المخرجات.import json def output_fn(prediction_output): """Formats model outputs as JSON string, extracting attributes like boxes, masks, keypoints.""" infer = {} for result in prediction_output: if result.boxes is not None: infer["boxes"] = result.boxes.numpy().data.tolist() # Add more processing logic if necessary return json.dumps(infer) -
نشر النموذج المحدث: تأكد من إعادة نشر النموذج باستخدام دفاتر ملاحظات Jupyter المقدمة (
1_DeployEndpoint.ipynb) لتضمين هذه التغييرات.
راجع الخطوات التفصيلية لنشر النموذج المعدل.
Link to this sectionكيف يمكنني اختبار نموذج YOLO26 المنشور على Amazon SageMaker؟#
لاختبار نموذج YOLO26 المنشور على Amazon SageMaker:
- فتح دفتر ملاحظات الاختبار: حدد موقع دفتر الملاحظات
2_TestEndpoint.ipynbفي بيئة SageMaker Jupyter. - تشغيل دفتر الملاحظات: اتبع تعليمات دفتر الملاحظات لإرسال صورة إلى نقطة النهاية، وإجراء الاستدلال، وعرض النتائج.
- تصور النتائج: استخدم وظائف الرسم المضمنة لتصور مقاييس الأداء، مثل المربعات المحيطة حول الأشياء المكتشفة.
للحصول على تعليمات اختبار شاملة، قم بزيارة قسم الاختبار.