

Sagemaker Python SDK هي مكتبة مفتوحة المصدر للتدريب ونشر نماذج التعلم الآلي على Amazon Sagemaker.
مع SDK ، يمكنك تدريب ونشر النماذج باستخدام أطر التعلم العميق الشهير Apache MXNet و TensorFlow . يمكنك أيضًا تدريب النماذج ونشرها باستخدام خوارزميات Amazon ، والتي هي تطبيقات قابلة للتطوير لخوارزميات التعلم الآلي الأساسي المحسّنة لتدريب Sagemaker و GPU. إذا كان لديك خوارزميات خاصة بك مدمجة في حاويات Docker المتوافقة مع SageMaker ، فيمكنك تدريب الطرز واستضافةها باستخدامها أيضًا.
للاطلاع على الوثائق التفصيلية ، بما في ذلك مرجع API ، انظر قراءة المستندات.
تم تصميم Sagemaker Python SDK إلى PYPI ويمكن تثبيت أحدث إصدار من Sagemaker Python SDK مع PIP على النحو التالي
Pip Install SageMaker == <أحدث إصدار من PYPI من https://pypi.org/project/sagemaker/>
يمكنك التثبيت من المصدر عن طريق استنساخ هذا المستودع وتشغيل أمر تثبيت PIP في الدليل الجذر للمستودع:
git clone https://github.com/aws/sagemaker-python-sdk.git CD Sagemaker-Python-SDK تثبيت PIP.
Sagemaker Python SDK يدعم UNIX/Linux و MAC.
تم اختبار Sagemaker Python SDK في:
قامت مكتبة sagemaker بتمكين القياس عن بُعد لمساعدتنا على فهم احتياجات المستخدم بشكل أفضل وتشخيص المشكلات وتقديم ميزات جديدة. يتتبع هذا القياس عن بُعد استخدام وظائف Sagemaker المختلفة.
إذا كنت تفضل إلغاء الاشتراك في القياس عن بعد ، فيمكنك القيام بذلك بسهولة عن طريق تعيين معلمة TelemetryOptOut إلى true في تكوين SDK الافتراضي. للحصول على إرشادات مفصلة ، يرجى زيارة تكوين واستخدام الافتراضات مع Sagemaker Python SDK.
كخدمة مُدارة ، تقوم Amazon Sagemaker بعمليات نيابة عنك على أجهزة AWS التي تديرها Amazon Sagemaker. يمكن لـ Amazon Sagemaker إجراء عمليات فقط التي يسمح بها المستخدم. يمكنك قراءة المزيد حول الأذونات الضرورية في وثائق AWS.
يجب ألا يتطلب Sagemaker Python SDK أي أذونات إضافية بصرف النظر عن ما هو مطلوب لاستخدام Sagemaker. ومع ذلك ، إذا كنت تستخدم دور IAM مع مسار فيه ، فيجب عليك منح إذن لـ iam:GetRole .
تم ترخيص Sagemaker Python SDK بموجب ترخيص Apache 2.0. إنه حقوق الطبع والنشر Amazon.com ، Inc. أو الشركات التابعة لها. جميع الحقوق محفوظة. الترخيص متاح على: http://aws.amazon.com/apache2.0/
لدى Sagemaker Python SDK اختبارات الوحدة واختبارات التكامل.
يمكنك تثبيت المكتبات اللازمة لتشغيل الاختبارات عن طريق تشغيل pip install --upgrade .[test] pip install --upgrade .[test]
اختبارات الوحدة
نقوم بتشغيل اختبارات الوحدة مع Tox ، وهو برنامج يتيح لك إجراء اختبارات الوحدة لإصدارات Python المتعددة ، وكذلك التأكد من أن الكود يناسب إرشادات أسلوبنا. نحن ندير Tox مع جميع إصدارات Python المدعومة لدينا ، لذلك لتشغيل اختبارات الوحدة بنفس التكوين الذي نقوم به ، تحتاج إلى تثبيت المترجمين المترجمين لتلك الإصدارات Python.
لتشغيل اختبارات الوحدة مع Tox ، قم بتشغيل:
اختبارات توكس/الوحدة
اختبارات التكامل
لتشغيل اختبارات التكامل ، يجب تلبية المتطلبات الأساسية التالية
SageMakerRole . يجب أن يكون لها سياسة AmazonSagemakerFullAccess المرفقة بالإضافة إلى سياسة ذات أذونات ضرورية لاستخدام الاستدلال المرن.aws ecr create-repository --repository-name remote-function-dummy-containerنوصي بتشغيل اختبارات التكامل هذه بشكل انتقائي فقط. يمكنك التصفية حسب أسماء وظائف الاختبار الفردية مع:
Tox --k 'test_i_care_about'
يمكنك أيضًا تشغيل جميع اختبارات التكامل عن طريق تشغيل الأمر التالي ، والذي يديرها بالتسلسل ، والذي قد يستغرق بعض الوقت:
توكس - الاختبارات/integ
يمكنك أيضًا تشغيلها بالتوازي:
توكس -اختبارات تلقائية/integ
لتمكين جميع خطافات GIT في دليل .githooks ، قم بتشغيل هذه الأوامر في دليل المستودع:
Find .git/hooks -type l -exec rm {} ؛
Find .githooks -type f -exec ln -sf ../../ {} .git/hooks/ ؛
لتمكين خطاف GIT الفردي ، ما عليك سوى نقله من. githooks/ directory إلى .git/ hooks/ directory.
قم بإعداد بيئة Python ، وقم بتثبيت التبعيات المدرجة في doc/requirements.txt :
# كوندا كوندا إنشاء -N Sagemaker Python = 3.7 كوندا تنشيط Sagemaker CENTA تثبيت sphinx = 3.1.1 sphinx_rtd_theme = 0.5.0 # بيب PIP تثبيت -R DOC/RESECENTS.TXT
استنساخ/شوكة الريبو ، وقم بتثبيت نسختك المحلية:
PIP تثبيت -الترقية.
ثم cd في دليل sagemaker-python-sdk/doc وتشغيله:
جعل HTML
يمكنك تحرير القوالب لأي من الصفحات الموجودة في المستندات عن طريق تحرير ملفات .rst في دليل doc ثم تشغيل make html مرة أخرى.
معاينة الموقع بخادم الويب Python:
CD _build/html Python -M http.server 8000
عرض الموقع من خلال زيارة http: // localhost: 8000
مع خدمة Sagemaker Sparkml ، يمكنك الآن إجراء تنبؤات ضد نموذج Sparkml في Sagemaker. من أجل استضافة نموذج Sparkml في Sagemaker ، يجب أن يتم تسلسله مع مكتبة MLeap .
لمزيد من المعلومات حول MLEAP ، راجع https://github.com/combust/mleap.
نسخة رئيسية مدعومة من Spark: 3.3 (إصدار MLEAP - 0.20.0)
فيما يلي مثال على كيفية إنشاء مثيل لفئة SparkMLModel واستخدام طريقة deploy() لإنشاء نقطة نهاية يمكن استخدامها لأداء التنبؤ مقابل نموذج Sparkml المدربين.
sparkml_model = SparkMLModel ( model_data = 's3://path/to/model.tar.gz' , env = { 'SAGEMAKER_SPARKML_SCHEMA' : schema })
model_name = 'sparkml-model'
endpoint_name = 'sparkml-endpoint'
predictor = sparkml_model . deploy ( initial_instance_count = 1 , instance_type = 'ml.c4.xlarge' , endpoint_name = endpoint_name ) بمجرد نشر النموذج ، يمكننا استدعاء نقطة النهاية مع حمولة CSV مثل هذا:
payload = 'field_1,field_2,field_3,field_4,field_5'
predictor . predict ( payload ) لمزيد من المعلومات حول التنسيقات المختلفة content-type Accept وكذلك بنية schema الذي يتعرف عليه Sagemaker Sparkml ، يرجى الاطلاع على حاوية خدمة Sagemaker Sparkml.