الكثير من الناس يعتقدون أن نشر النموذج أمر بسيط للغاية: التدريب انتهى، رفع الملف، كتابة مقدمة، وتنتهي المهمة.

لكن من قام بعمل منتج يعرف جيداً أن الجزء الأكثر تعقيدًا في النموذج غالبًا ما يبدأ بعد الإطلاق.

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

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

OpenGradient's Model Hub هنا يعمل بشكل أكثر كمنظومة نشر نماذج.

يمكن إنشاء نموذج في البداية في مستودع مستقل، ثم نشر إصدارات مختلفة بطريقة مثل v1.00، v1.01، v2.00. يمكن وضع ملفات النموذج، الإعدادات، والتوضيحات تحت كل إصدار، بدلاً من استبدال النموذج القديم بمجرد رفع ملف جديد.

سير العمل الفعلي أيضًا سلس.

المطور يقوم بتدريب نموذج توقع المخاطر، ثم يقوم بتصدير بصيغة ONNX، ويقوم بإنشاء مستودع في Model Hub ورفع v1.00. بعد ذلك، يمكنه التجربة مباشرة في واجهة الاستخدام على الويب، للتأكد من أن المدخلات والنتائج لا تواجه مشكلات واضحة، ثم يجعل التطبيق يتصل بهذا الإصدار.

لاحقًا، عند تحديث بيانات التدريب، يمكنه الاستمرار في نشر v1.01، مع توضيح التغييرات، ثم السماح لبعض التطبيقات بتجربة النسخة الجديدة. النسخة القديمة تظل محفوظة، ولن تتسبب التحديثات المفاجئة في تعطيل جميع المنتجات التي تستخدمها في نفس الوقت. يمكن للفريق أيضًا رفع النموذج واستخدامه في سير عمل التدريب أو النشر الخاص بهم عبر Python SDK وCLI.

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

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

$OPG @OpenGradient #OPG