حزم أصول Databricks لمكدسات MLOps
يمكنك استخدام حزم أصول Databricks وDatabricks CLI ومستودع Databricks MLOps Stack على GitHub لإنشاء مكدسات MLOps. إن MLOps Stack هو مشروع MLOps على Azure Databricks يتبع أفضل ممارسات الإنتاج خارج الصندوق. راجع ما هي حزم أصول Databricks؟.
لإنشاء مشروع MLOps Stacks ونشره وتشغيله، أكمل الخطوات التالية:
المتطلبات
- تأكد من تمكين ملفات مساحة العمل في مساحة العمل الهدف عن بعد. راجع ما هي ملفات مساحة العمل؟.
- على جهاز التطوير الخاص بك، تأكد من تثبيت Databricks CLI الإصدار 0.212.2 أو أعلى. للتحقق من إصدار Databricks CLI المثبت، قم بتشغيل الأمر
databricks -v
. لتحديث إصدار Databricks CLI، راجع تثبيت Databricks CLI أو تحديثه. (لا تعمل الحزم مع إصدارات Databricks CLI 0.18 والإصدارات أدناه.)
الخطوة 1: إعداد المصادقة
تكوين Databricks CLI للمصادقة.
تفترض هذه المقالة أنك تريد استخدام مصادقة OAuth من مستخدم إلى جهاز (U2M) وملف تعريف تكوين Azure Databricks المطابق المسمى DEFAULT
للمصادقة.
إشعار
مصادقة U2M مناسبة لتجربة هذه الخطوات في الوقت الفعلي. بالنسبة إلى مهام سير العمل التلقائية بالكامل، توصي Databricks باستخدام مصادقة OAuth من جهاز إلى جهاز (M2M) بدلا من ذلك. راجع إرشادات إعداد مصادقة M2M في المصادقة.
استخدم Databricks CLI لبدء إدارة الرمز المميز OAuth محليا عن طريق تشغيل الأمر التالي لكل مساحة عمل هدف.
في الأمر التالي، استبدل
<workspace-url>
بعنوان URL الخاص ب Azure Databricks لكل مساحة عمل، على سبيل المثالhttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --host <workspace-url>
يطالبك Databricks CLI بحفظ المعلومات التي أدخلتها كملف تعريف تكوين Azure Databricks. اضغط
Enter
لقبول اسم ملف التعريف المقترح، أو أدخل اسم ملف تعريف جديد أو موجود. تتم الكتابة فوق أي ملف تعريف موجود بنفس الاسم بالمعلومات التي أدخلتها. يمكنك استخدام ملفات التعريف لتبديل سياق المصادقة بسرعة عبر مساحات عمل متعددة.للحصول على قائمة بأي ملفات تعريف موجودة، في محطة طرفية منفصلة أو موجه أوامر، استخدم Databricks CLI لتشغيل الأمر
databricks auth profiles
. لعرض الإعدادات الموجودة لملف تعريف معين، قم بتشغيل الأمرdatabricks auth env --profile <profile-name>
.في مستعرض الويب الخاص بك، أكمل الإرشادات التي تظهر على الشاشة لتسجيل الدخول إلى مساحة عمل Azure Databricks.
لعرض قيمة رمز OAuth المميز الحالي لملف التعريف والطوابع الزمنية لانتهاء الصلاحية القادمة للرمز المميز، قم بتشغيل أحد الأوامر التالية:
databricks auth token --host <workspace-url>
databricks auth token -p <profile-name>
databricks auth token --host <workspace-url> -p <profile-name>
إذا كان لديك ملفات تعريف متعددة بنفس
--host
القيمة، فقد تحتاج إلى تحديد--host
الخيارات و-p
معا لمساعدة Databricks CLI في العثور على معلومات الرمز المميز OAuth المتطابقة الصحيحة.
الخطوة 2: إنشاء مشروع المجموعة
استخدم قوالب مجموعة أصول Databricks لإنشاء ملفات بدء مشروع MLOps Stacks. للقيام بذلك، ابدأ بتشغيل الأمر التالي:
databricks bundle init mlops-stacks
الرد على المطالبات التي تظهر على الشاشة. للحصول على إرشادات حول الرد على هذه المطالبات، راجع بدء مشروع جديد في مستودع Databricks MLOps Stacks على GitHub.
توفر المطالبة الأولى خيار إعداد مكونات التعليمات البرمجية ML أو مكونات CI/CD أو كليهما. يبسط هذا الخيار الإعداد الأولي حيث يمكنك اختيار إنشاء المكونات ذات الصلة مباشرة فقط. (لإعداد المكونات الأخرى، قم بتشغيل أمر التهيئة مرة أخرى.) حدد أحد الإجراءات التالية:
CICD_and_Project
(افتراضي) - إعداد كل من التعليمات البرمجية ML ومكونات CI/CD.Project_Only
- إعداد مكونات التعليمات البرمجية ML فقط. هذا الخيار مخصص لعلماء البيانات للبدء.CICD_Only
- إعداد مكونات CI/CD فقط. هذا الخيار مخصص لمهندسي التعلم الآلي لإعداد البنية الأساسية.
بعد الإجابة على جميع المطالبات التي تظهر على الشاشة، ينشئ القالب ملفات بدء مشروع MLOps Stacks ويضيفها إلى دليل العمل الحالي.
تخصيص ملفات بدء مشروع MLOps Stacks حسب الرغبة. للقيام بذلك، اتبع الإرشادات الواردة في الملفات التالية داخل مشروعك الجديد:
الدور Goal المستندات مستخدمو هذا المستودع لأول مرة فهم البنية الأساسية لبرنامج ربط العمليات التجارية للتعليمات البرمجية وبنية التعليمات البرمجية في هذا المستودع README.md
عالم بيانات البدء في كتابة التعليمات البرمجية ل ML لمشروع جديد تماما <project-name>/README.md
عالم بيانات تحديث التعليمات البرمجية للإنتاج ML (على سبيل المثال، منطق تدريب النموذج) لمشروع موجود docs/ml-pull-request.md
عالم بيانات تعديل موارد التعلم الآلي لنموذج الإنتاج (على سبيل المثال، تدريب النموذج أو وظائف الاستدلال) <project-name>/resources/README.md
MLOps / DevOps إعداد CI/CD لمشروع التعلم الآلي الحالي docs/mlops-setup.md
لتخصيص التجارب، تتوافق التعيينات داخل إعلان التجربة مع حمولة طلب عملية إنشاء التجربة كما هو محدد في POST /api/2.0/mlflow/experiments/create في مرجع REST API، المعبر عنه بتنسيق YAML.
لتخصيص الوظائف، تتوافق التعيينات داخل إعلان الوظيفة مع حمولة طلب عملية إنشاء الوظيفة كما هو محدد في POST /api/2.1/jobs/create في مرجع REST API، المعبر عنه بتنسيق YAML.
تلميح
يمكنك تحديد الإعدادات لمجموعات الوظائف الجديدة ودمجها وتجاوزها في الحزم باستخدام التقنيات الموضحة في تجاوز إعدادات نظام المجموعة في Databricks Asset Bundles.
لتخصيص النماذج، تتوافق التعيينات داخل إعلان النموذج مع حمولة طلب عملية إنشاء نموذج كما هو محدد في POST /api/2.0/mlflow/registered-models/create في مرجع REST API، المعبر عنه بتنسيق YAML.
لتخصيص المسارات، تتوافق التعيينات داخل إعلان البنية الأساسية لبرنامج ربط العمليات التجارية مع حمولة طلب عملية إنشاء البنية الأساسية لبرنامج ربط العمليات التجارية كما هو محدد في POST /api/2.0/pipelines في مرجع REST API، المعبر عنها بتنسيق YAML.
الخطوة 3: التحقق من صحة مشروع المجموعة
تحقق مما إذا كان تكوين المجموعة صالحا. للقيام بذلك، قم بتشغيل Databricks CLI من جذر المشروع، حيث databricks.yml
يوجد، كما يلي:
databricks bundle validate
إذا تم إرجاع ملخص لتكوين المجموعة، فنجح التحقق من الصحة. إذا تم إرجاع أي أخطاء، قم بإصلاح الأخطاء، ثم كرر هذه الخطوة.
الخطوة 4: نشر الحزمة
نشر موارد المشروع والبيانات الاصطناعية إلى مساحة العمل البعيدة المطلوبة. للقيام بذلك، قم بتشغيل Databricks CLI من جذر المشروع، حيث databricks.yml
يوجد، كما يلي:
databricks bundle deploy -t <target-name>
استبدل <target-name>
باسم الهدف المطلوب داخل databricks.yml
الملف، على سبيل المثال dev
أو staging
test
prod
.
الخطوة 5: تشغيل الحزمة المنشورة
تعمل وظائف Azure Databricks الموزعة في المشروع تلقائيا على جداولها المحددة مسبقا. لتشغيل مهمة منشورة على الفور، قم بتشغيل Databricks CLI من جذر المشروع، حيث databricks.yml
يوجد، على النحو التالي:
databricks bundle run -t <target-name> <job-name>
- استبدل
<target-name>
باسم الهدف المطلوب داخل الملف حيثdatabricks.yml
تم نشر المهمة، على سبيل المثالdev
أوtest
staging
أو أوprod
. - استبدل
<job-name>
باسم المهمة في أحد الملفات.yml
داخل<project-name>/databricks-resources
، على سبيل المثالbatch_inference_job
،write_feature_table_job
أوmodel_training_job
.
يظهر ارتباط إلى مهمة Azure Databricks، والتي يمكنك نسخها إلى مستعرض الويب الخاص بك لفتح المهمة داخل واجهة مستخدم Azure Databricks.
الخطوة 6: حذف الحزمة المنشورة (اختياري)
لحذف موارد المشروع المنشور والبيانات الاصطناعية إذا لم تعد بحاجة إليها، قم بتشغيل Databricks CLI من جذر المشروع، حيث databricks.yml
يوجد، كما يلي:
databricks bundle destroy -t <target-name>
استبدل <target-name>
باسم الهدف المطلوب داخل databricks.yml
الملف، على سبيل المثال dev
أو staging
test
prod
.
أجب على المطالبات التي تظهر على الشاشة لتأكيد حذف الموارد والبيانات الاصطناعية المنشورة مسبقا.
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ