دمج تخزين Azure للإعلامات والنسخ الاحتياطي
يمكنك دمج مشروع Custom Vision الخاص بك مع قائمة انتظار تخزين Azure blob للحصول على إشعارات الدفع لنشاط التدريب/التصدير للمشروع. تُعد هذه الميزة مفيدة لتجنب التحقق باستمرار من الخدمة للحصول على نتائج عند تشغيل عمليات طويلة. وبدلاً من ذلك، يمكنك دمج إعلامات قائمة انتظار التخزين في سير العمل.
يمكنك أيضا استخدام تخزين Azure لتخزين نسخ احتياطية من النماذج المنشورة.
يوضح لك هذا الدليل كيفية استخدام واجهات برمجة تطبيقات REST مع cURL. يمكنك أيضا استخدام خدمة طلب HTTP، مثل عميل REST ل Visual Studio Code، لتقديم الطلبات.
إشعار
الإعلامات المنبثقة تعتمد على معلمة notificationQueueUri الاختيارية في CreateProject API، وتتطلب النسخ الاحتياطية للنموذج أيضًا استخدام المعلمة exportModelContainerUri الاختيارية. هذا الدليل سيستخدم كليهما لمجموعة كاملة من الميزات.
المتطلبات الأساسية
- مورد Azure Custom Vision. إذا لم يكن لديك، فانتقل إلى مدخل Microsoft Azure وأنشئ مورد Custom Vision جديد.
إشعار
لا تدعم هذه الميزة مورد خدمات Azure الذكاء الاصطناعي متعدد الخدمات.
- حساب تخزين Azure وحاوية blob. اتبع التشغيل السريع للتخزين إذا كنت بحاجة إلى المساعدة في هذه الخطوة.
- الإصدار 6.0+ من PowerShell، أو تطبيق سطر أوامر مشابهة.
إعداد تكامل تخزين Azure
انتقل إلى مورد تدريب Custom Vision على مدخل Microsoft Azure، وحدد صفحة Identity ، وقم بتمكين الهوية المدارة المعينة من قبل النظام.
بعد ذلك، انتقل إلى مورد التخزين في مدخل Azure. انتقل إلى صفحة التحكم في الوصول (IAM)، وحدد إضافة تعيين دور (معاينة). ثم أضف تعيين دور إما لميزة التكامل، أو كليهما:
- إذا كنت تخطط لاستخدام ميزة النسخ الاحتياطي للنموذج، فحدد دور Storage Blob Data Contributor، وأضف مورد تدريب Custom Vision كعضو. حدد Review + assign للإكمال.
- إذا كنت تخطط لاستخدام ميزة قائمة انتظار الإعلامات، فحدد دور مساهم بيانات قائمة انتظار التخزين، وأضف مورد تدريب Custom Vision كعضو. حدد Review + assign للإكمال.
للمساعدة في تعيينات الأدوار، راجع تعيين أدوار Azure باستخدام مدخل Microsoft Azure.
الحصول على عناوين محدد مواقع الويب للتكامل
بعد ذلك، ستحصل على عناوين محدد مواقع الويب التي تسمح لمورد Custom Vision بالوصول إلى نقاط النهاية هذه.
بالنسبة إلى عنوان محدد مواقع الويب لتكامل قائمة انتظار الإعلامات، انتقل إلى صفحة قوائم الانتظار لحساب التخزين الخاص بك، وأضف قائمة انتظار جديدة، واحفظ عنوان محدد مواقع الويب الخاص به في موقع مؤقت.
للحصول على عنوان محدد مواقع الويب لتكامل النسخ الاحتياطي للنموذج، انتقل إلى صفحة Containers لحساب التخزين الخاص بك، وأنشئ حاوية جديدة. ثم حدده وانتقل إلى صفحة Properties. نسخ محدد مواقع الويب إلى موقع مؤقت.
دمج مشروع الرؤية المخصصة
الآن بعد أن أصبح لديك عناوين محدد مواقع الويب للتكامل، يمكنك إنشاء مشروع Custom Vision جديد يدمج ميزات Azure Storage. كما يمكنك تحديث مشروع موجود لإضافة الميزات.
عند استدعاء CreateProject API، أضف المعلمات الاختيارية exportModelContainerUri وnotificationQueueUri. قم بتعيين قيم محدد مواقع الويب التي حصلت عليها في القسم السابق.
curl -v -X POST "{endpoint}/customvision/v3.3/Training/projects?exportModelContainerUri={inputUri}¬ificationQueueUri={inputUri}&name={inputName}"
-H "Training-key: {subscription key}"
إذا تلقيت استجابة 200/OK
، فهذا يعني أنه تم إعداد عناوين محدد مواقع الويب بنجاح. يجب أن تشاهد قيم محدد مواقع الويب الخاصة بك في استجابة JSON أيضًا:
{
"id": "00000000-0000-0000-0000-000000000000",
"name": "string",
"description": "string",
"settings": {
"domainId": "00000000-0000-0000-0000-000000000000",
"classificationType": "Multiclass",
"targetExportPlatforms": [
"CoreML"
],
"useNegativeSet": true,
"detectionParameters": "string",
"imageProcessingSettings": {
"augmentationMethods": {}
},
"exportModelContainerUri": {url}
"notificationQueueUri": {url}
},
"created": "string",
"lastModified": "string",
"thumbnailUri": "string",
"drModeEnabled": true,
"status": "Succeeded"
}
تحقق من الاتصال
يجب أن يكون استدعائك لواجهة برمجة التطبيقات في القسم السابق قد شغل بالفعل معلومات جديدة في حساب تخزين Azure الخاص بك.
في الحاوية المعينة، يجب أن يكون هناك كائن ثنائي كبير الحجم للاختبار داخل مجلد CustomVision-TestPermission. سيكون هذا الكائن الثنائي كبير الحجم موجودًا مؤقتًا فقط.
في قائمة انتظار الإعلامات، يجب أن تشاهد إعلام اختبار بالتنسيق التالي:
{
"version": "1.0" ,
"type": "ConnectionTest",
"Content":
{
"projectId": "00000000-0000-0000-0000-000000000000"
}
}
الحصول على إعلامات الأحداث
عندما تكون مستعدًا، اتصل بواجهة برمجة تطبيقات TrainProject في مشروعك للقيام بعملية تدريب عادية.
في قائمة انتظار إعلامات التخزين، ستتلقى إعلامًا بمجرد انتهاء التدريب:
{
"version": "1.0" ,
"type": "Training",
"Content":
{
"projectId": "00000000-0000-0000-0000-000000000000",
"iterationId": "00000000-0000-0000-0000-000000000000",
"trainingStatus": "TrainingCompleted"
}
}
قد يكون الحقل "trainingStatus"
إما "TrainingCompleted"
أو "TrainingFailed"
. الحقل "iterationId"
هو معرف النموذج المدرب.
الحصول على نسخ احتياطية لتصدير النموذج
عندما تكون مستعدًا، اتصل بواجهة برمجة تطبيقات ExportIteration لتصدير نموذج مدرب إلى نظام أساسي محدد.
في حاوية التخزين المعينة، ستظهر نسخة احتياطية من النموذج المصدر. سيكون لاسم الكائن الثنائي كبير الحجم التنسيق:
{projectId} - {iterationId}.{platformType}
كما ستتلقى إعلامًا في قائمة الانتظار عند انتهاء التصدير.
{
"version": "1.0" ,
"type": "Export",
"Content":
{
"projectId": "00000000-0000-0000-0000-000000000000",
"iterationId": "00000000-0000-0000-0000-000000000000",
"exportStatus": "ExportCompleted",
"modelUri": {url}
}
}
قد يكون الحقل "exportStatus"
إما "ExportCompleted"
أو "ExportFailed"
. سيتحوي الحقل "modelUri"
على عنوان محدد مواقع الويب لنموذج النسخ الاحتياطي المخزن في حاويتك، بافتراض أنك قمت بدمج إعلامات قائمة الانتظار في البداية. إذا لم تقم بذلك، فسيعرض الحقل "modelUri"
عنوان محدد مواقع الويب لـ SAS للكائن الثنائي كبير الحجم لنموذج Custom Vision.
الخطوات التالية
في هذا الدليل، تعلمت كيفية نسخ مشروع ونسخه احتياطيًا بين موارد Custom Vision. بعد ذلك، استكشف الوثائق المرجعية لواجهة برمجة التطبيقات لمعرفة ما يمكنك فعله باستخدام ميزة Custom Vision.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ