ساتھ ایمیزون سیج میکر، آپ پوری اینڈ ٹو اینڈ مشین لرننگ (ML) لائف سائیکل کا نظم کر سکتے ہیں۔ یہ ML ورک فلو کے پہلوؤں کو منظم کرنے میں مدد کرنے کے لیے بہت سی مقامی صلاحیتیں پیش کرتا ہے، جیسے کہ تجرباتی ٹریکنگ، اور ماڈل رجسٹری کے ذریعے ماڈل گورننس۔ یہ پوسٹ ان صارفین کے لیے تیار کردہ حل فراہم کرتی ہے جو پہلے سے ہی MLflow استعمال کر رہے ہیں، ML ورک فلو کو منظم کرنے کے لیے ایک اوپن سورس پلیٹ فارم۔
ایک پچھلے پیغام، ہم نے MLflow پر تبادلہ خیال کیا اور یہ کہ یہ کس طرح AWS پر چل سکتا ہے اور SageMaker کے ساتھ مربوط کیا جا سکتا ہے—خاص طور پر، جب تجربات کے طور پر تربیتی ملازمتوں کا سراغ لگانا اور MLflow میں رجسٹرڈ ماڈل کو SageMaker کے زیر انتظام انفراسٹرکچر میں تعینات کرنا۔ تاہم، کے اوپن سورس ورژن کا MLflow ٹریکنگ سرور پر متعدد کرایہ داروں کے لیے مقامی صارف تک رسائی کے کنٹرول کا طریقہ کار فراہم نہیں کرتا ہے۔ اس کا مطلب ہے کہ سرور تک رسائی رکھنے والے کسی بھی صارف کے پاس منتظم کے حقوق ہیں اور وہ تجربات، ماڈل ورژن اور مراحل میں ترمیم کر سکتا ہے۔ یہ ریگولیٹڈ صنعتوں کے اداروں کے لیے ایک چیلنج ہو سکتا ہے جنہیں آڈٹ کے مقاصد کے لیے مضبوط ماڈل گورننس رکھنے کی ضرورت ہے۔
اس پوسٹ میں، ہم MLflow سرور سے باہر رسائی کے کنٹرول کو نافذ کرکے اور تصدیق اور اجازت کے کاموں کو آف لوڈ کرکے ان حدود کو دور کرتے ہیں۔ ایمیزون API گیٹ وے، جہاں ہم وسائل کی سطح پر فائن گرینڈ رسائی کنٹرول میکانزم کو استعمال کرتے ہیں۔ شناخت اور رسائی کے انتظام (میں ہوں). ایسا کرنے سے، ہم SageMaker کے زیر انتظام انفراسٹرکچر اور دونوں سے MLflow سرور تک مضبوط اور محفوظ رسائی حاصل کر سکتے ہیں۔ ایمیزون سیج میکر اسٹوڈیو, اسناد اور اسناد کے انتظام کے پیچھے تمام پیچیدگیوں کے بارے میں فکر کیے بغیر۔ اس فن تعمیر میں تجویز کردہ ماڈیولر ڈیزائن MLflow سرور کو متاثر کیے بغیر رسائی کنٹرول منطق کو سیدھا سادہ بنا دیتا ہے۔ آخر میں، SageMaker Studio کی توسیع پذیری کی بدولت، ہم MLflow کو اسٹوڈیو کے اندر قابل رسائی بنا کر ڈیٹا سائنسدان کے تجربے کو مزید بہتر بناتے ہیں، جیسا کہ درج ذیل اسکرین شاٹ میں دکھایا گیا ہے۔
MLflow نے اس خصوصیت کو مربوط کیا ہے جو قابل بناتا ہے۔ AWS اسناد کا استعمال کرتے ہوئے دستخط کرنے کی درخواست کریں۔ اس کے Python SDK کے اپ اسٹریم ریپوزٹری میں، SageMaker کے ساتھ انضمام کو بہتر بناتا ہے۔ MLflow Python SDK میں تبدیلیاں MLflow ورژن 1.30.0 کے بعد سے ہر ایک کے لیے دستیاب ہیں۔
اعلیٰ سطح پر، یہ پوسٹ درج ذیل کو ظاہر کرتی ہے:
- کسی نجی سب نیٹ پر چلنے والے سرور لیس فن تعمیر پر ایم ایل فلو سرور کو کیسے تعینات کیا جائے جو باہر سے براہ راست قابل رسائی نہ ہو۔ اس کام کے لیے، ہم مندرجہ ذیل GitHub ریپو کو اوپر بناتے ہیں: MLflow اور Amazon SageMaker کے ساتھ اپنی مشین لرننگ لائف سائیکل کا نظم کریں۔.
- MLflow سرور کو نجی انضمام کے ذریعے API گیٹ وے میں کیسے ظاہر کیا جائے، اور SDK کے ذریعے پروگرامیٹک رسائی اور MLflow UI کے ذریعے براؤزر تک رسائی کے لیے ایک محفوظ رسائی کنٹرول کو کیسے نافذ کیا جائے۔
- تجربات اور رنز کو لاگ ان کرنے کا طریقہ، اور درخواستوں کی توثیق اور اجازت دینے کے لیے متعلقہ SageMaker ایگزیکیوشن رولز کا استعمال کرتے ہوئے SageMaker سے MLflow سرور پر ماڈلز کیسے رجسٹر کریں، اور اس کے ذریعے کیسے تصدیق کی جائے۔ ایمیزون کاگنیٹو MLflow UI میں۔ ہم تجربات سے باخبر رہنے اور ماڈل رجسٹری کا استعمال کرنے والی مثالیں فراہم کرتے ہیں جو بالترتیب SageMaker ٹریننگ جابز اور اسٹوڈیو سے MLflow کے ساتھ فراہم کرتے ہیں۔ نوٹ بک.
- ملٹی اکاؤنٹ سیٹ اپ میں MLflow کو مرکزی ذخیرے کے طور پر کیسے استعمال کیا جائے۔
- اسٹوڈیو میں ایم ایل فلو رینڈر کرکے صارف کے تجربے کو بڑھانے کے لیے اسٹوڈیو کو کیسے بڑھایا جائے۔ اس کام کے لیے، ہم دکھاتے ہیں کہ JupyterLab ایکسٹینشن کو انسٹال کرکے اسٹوڈیو کی توسیع پذیری کا فائدہ کیسے اٹھایا جائے۔
اب آئیے تفصیلات میں مزید گہرائی میں ڈوبتے ہیں۔
حل جائزہ
آپ MLflow کے بارے میں سوچ سکتے ہیں کہ تین مختلف بنیادی اجزاء شانہ بشانہ کام کر رہے ہیں۔
- بیک اینڈ ایم ایل فلو ٹریکنگ سرور کے لیے ایک REST API
- آپ کے ماڈل ٹریننگ کوڈ سے MLflow ٹریکنگ سرور APIs کے ساتھ پروگرامی طور پر تعامل کرنے کے لیے SDKs
- آپ کے تجربات، رنز اور نمونے کو دیکھنے کے لیے MLflow UI کے لیے ایک رد عمل کا سامنے والا اختتام
ایک اعلی سطح پر، ہم نے جس فن تعمیر کا تصور کیا ہے اور اس پر عمل درآمد کیا ہے اسے درج ذیل شکل میں دکھایا گیا ہے۔
شرائط
حل کو تعینات کرنے سے پہلے، یقینی بنائیں کہ آپ کو ایڈمن کی اجازت کے ساتھ AWS اکاؤنٹ تک رسائی حاصل ہے۔
حل کے بنیادی ڈھانچے کو تعینات کریں۔
اس پوسٹ میں بیان کردہ حل کو تعینات کرنے کے لیے، میں تفصیلی ہدایات پر عمل کریں۔ GitHub ذخیرہ README۔ بنیادی ڈھانچے کی تعیناتی کو خودکار کرنے کے لیے، ہم استعمال کرتے ہیں۔ AWS کلاؤڈ ڈویلپمنٹ کٹ (AWS CDK)۔ AWS CDK ایک اوپن سورس سافٹ ویئر ڈویلپمنٹ فریم ورک ہے جسے تخلیق کرنا ہے۔ AWS کلاؤڈ فارمیشن اسٹاک خود کار طریقے سے CloudFormation ٹیمپلیٹ نسل. اسٹیک AWS وسائل کا ایک مجموعہ ہے جسے پروگرام کے مطابق اپ ڈیٹ، منتقل یا حذف کیا جا سکتا ہے۔ AWS CDK تعمیرات AWS CDK ایپلی کیشنز کے بلڈنگ بلاکس ہیں، جو کلاؤڈ آرکیٹیکچرز کی وضاحت کے لیے بلیو پرنٹ کی نمائندگی کرتے ہیں۔
ہم چار اسٹیکوں کو یکجا کرتے ہیں:
- ۔ MLFlowVPCStack اسٹیک مندرجہ ذیل اعمال انجام دیتا ہے:
- ۔ RestApiGatewayStack اسٹیک مندرجہ ذیل اعمال انجام دیتا ہے:
- MLflow سرور کو AWS PrivateLink کے ذریعے ایک REST API گیٹ وے سے بے نقاب کرتا ہے۔
- UI تک رسائی حاصل کرنے والے صارفین کا انتظام کرنے کے لیے ایک Amazon Cognito یوزر پول تعینات کرتا ہے (تعیناتی کے بعد بھی خالی ہے)۔
- ایک تعینات کرتا ہے۔ او ڈبلیو ایس لامبڈا۔ ایمیزون کوگنیٹو یوزر پول آئی ڈی کیز کے ساتھ JWT ٹوکن کی تصدیق کرنے کا مجاز اور درخواست کی اجازت دینے یا انکار کرنے کے لیے IAM پالیسیاں واپس کرتا ہے۔ اجازت دینے کی اس حکمت عملی کا اطلاق ہوتا ہے۔
<MLFlow-Tracking-Server-URI>/*
. - ایک IAM اجازت دہندہ شامل کرتا ہے۔ یہ پر لاگو کیا جائے گا
<MLFlow-Tracking-Server-URI>/api/*
، جو پچھلے ایک پر فوقیت لے گا۔
- ۔ ایمپلیفائی ایم ایل فلو اسٹیک اسٹیک مندرجہ ذیل کارروائی کرتا ہے:
- میں پیچ شدہ MLflow ریپوزٹری سے منسلک ایک ایپ بناتا ہے۔ AWS CodeCommit MLflow UI کی تعمیر اور تعیناتی کے لیے۔
- ۔ SageMakerStudioUserStack اسٹیک مندرجہ ذیل اعمال انجام دیتا ہے:
- ایک اسٹوڈیو ڈومین تعینات کرتا ہے (اگر کوئی ابھی تک موجود نہیں ہے)۔
- تین صارفین کو شامل کرتا ہے، ہر ایک مختلف سیج میکر کے عمل درآمد کے کردار کے ساتھ مختلف رسائی کی سطح کو نافذ کرتا ہے:
- mlflow-admin - کسی بھی MLflow وسائل کے لئے منتظم کی طرح کی اجازت ہے.
- ایم ایل فلو ریڈر - کسی بھی MLflow وسائل کے لیے صرف پڑھنے کے لیے ایڈمن کی اجازت ہے۔
- mlflow-model-approver - mlflow-reader جیسی اجازتیں ہیں، نیز MLflow میں موجودہ رن سے نئے ماڈلز رجسٹر کر سکتے ہیں اور موجودہ رجسٹرڈ ماڈلز کو نئے مراحل میں فروغ دے سکتے ہیں۔
MLflow ٹریکنگ سرور کو بغیر سرور کے فن تعمیر پر تعینات کریں۔
ہمارا مقصد MLflow ٹریکنگ سرور کی ایک قابل اعتماد، انتہائی دستیاب، سرمایہ کاری مؤثر، اور محفوظ تعیناتی ہے۔ سرور لیس ٹیکنالوجیز کم سے کم آپریشنل اوور ہیڈ کے ساتھ ان تمام ضروریات کو پورا کرنے کے لیے بہترین امیدوار ہیں۔ اس کو حاصل کرنے کے لیے، ہم MLflow تجربہ سے باخبر رہنے والے سرور کے لیے ایک Docker کنٹینر امیج بناتے ہیں، اور ہم اسے Amazon ECS پر AWS Fargate پر ایک پرائیویٹ سب نیٹ پر چلنے والے اس کے وقف شدہ VPC میں چلاتے ہیں۔ ایم ایل فلو اسٹوریج کے دو اجزاء پر انحصار کرتا ہے: بیک اینڈ اسٹور اور آرٹفیکٹ اسٹور کے لیے۔ بیک اینڈ اسٹور کے لیے، ہم Aurora Serverless استعمال کرتے ہیں، اور آرٹفیکٹ اسٹور کے لیے، ہم Amazon S3 استعمال کرتے ہیں۔ اعلیٰ درجے کے فن تعمیر کے لیے رجوع کریں۔ منظر نامہ 4: ریموٹ ٹریکنگ سرور، بیک اینڈ اور آرٹفیکٹ اسٹورز کے ساتھ ایم ایل فلو. اس کام کو کرنے کے طریقے کے بارے میں وسیع تفصیلات درج ذیل GitHub ریپو میں مل سکتی ہیں۔ MLflow اور Amazon SageMaker کے ساتھ اپنی مشین لرننگ لائف سائیکل کا نظم کریں۔.
API گیٹ وے کے ذریعے MLflow کو محفوظ کریں۔
اس وقت، ہمارے پاس ابھی تک رسائی کو کنٹرول کرنے کا طریقہ کار موجود نہیں ہے۔ پہلے قدم کے طور پر، ہم MLflow کو AWS PrivateLink کا استعمال کرتے ہوئے بیرونی دنیا کے سامنے لاتے ہیں، جو ہمارے معاملے API گیٹ وے میں VPC اور دیگر AWS سروسز کے درمیان ایک نجی رابطہ قائم کرتا ہے۔ MLflow کو آنے والی درخواستوں کو پھر a کے ذریعے پراکسی کیا جاتا ہے۔ REST API گیٹ وے, ہمیں آنے والی درخواستوں کی اجازت دینے کے لیے کئی میکانزم کو نافذ کرنے کا امکان فراہم کرتا ہے۔ اپنے مقاصد کے لیے، ہم صرف دو پر توجہ مرکوز کرتے ہیں:
- IAM اجازت دہندگان کا استعمال - کے ساتھ IAM کے اجازت دہندگاندرخواست گزار کے پاس API گیٹ وے وسائل تک رسائی کے لیے تفویض کردہ صحیح IAM پالیسی ہونی چاہیے۔ ہر درخواست کو HTTP کے ذریعے بھیجی گئی درخواستوں میں تصدیقی معلومات شامل کرنا ضروری ہے۔ AWS دستخطی ورژن 4.
- لیمبڈا اتھارٹیز کا استعمال - یہ سب سے بڑی لچک پیش کرتا ہے کیونکہ یہ اس پر مکمل کنٹرول چھوڑ دیتا ہے کہ درخواست کی اجازت کیسے دی جا سکتی ہے۔ بالآخر، لیمبڈا مصنف ایک IAM پالیسی واپس کرنی چاہیے، جس کے نتیجے میں API گیٹ وے کے ذریعے اس بات کا جائزہ لیا جائے گا کہ آیا درخواست کی اجازت دی جانی چاہیے یا انکار۔
API گیٹ وے میں تائید شدہ تصدیق اور اجازت کے طریقہ کار کی مکمل فہرست کے لیے، رجوع کریں۔ API گیٹ وے میں REST API تک رسائی کو کنٹرول اور انتظام کرنا.
MLflow Python SDK توثیق (IAM مصنف)
MLflow تجربہ ٹریکنگ سرور لاگو کرتا ہے a باقی API وسائل اور نمونے کے ساتھ پروگرامی طریقے سے بات چیت کرنا۔ MLflow Python SDK میٹرکس، رنز، اور آرٹفیکٹس کو لاگ کرنے کا ایک آسان طریقہ فراہم کرتا ہے، اور یہ نام کی جگہ کے تحت میزبان API وسائل کے ساتھ انٹرفیس کرتا ہے۔ <MLflow-Tracking-Server-URI>/api/
. ہم اس نیم اسپیس پر وسائل تک رسائی کے کنٹرول کے لیے IAM اتھارٹی کو استعمال کرنے کے لیے API گیٹ وے کو ترتیب دیتے ہیں، اس طرح ہر درخواست پر AWS دستخطی ورژن 4 کے ساتھ دستخط کرنے کی ضرورت ہوتی ہے۔
درخواست پر دستخط کرنے کے عمل کو آسان بنانے کے لیے، MLflow 1.30.0 سے شروع ہو کر، اس صلاحیت کو بغیر کسی رکاوٹ کے فعال کیا جا سکتا ہے۔ اس بات کو یقینی بنائیں کہ requests_auth_aws_sigv4
لائبریری سسٹم میں انسٹال ہے اور سیٹ ہے۔ MLFLOW_TRACKING_AWS_SIGV4
کے لئے ماحولیاتی متغیر True
. مزید معلومات میں پایا جا سکتا ہے سرکاری ایم ایل فلو دستاویزات.
اس وقت، MLflow SDK کو صرف AWS اسناد کی ضرورت ہے۔ کیونکہ request_auth_aws_sigv4
استعمال بوٹو 3 اسناد کی بازیافت کے لیے، ہم جانتے ہیں کہ یہ کر سکتا ہے۔ مثال کے میٹا ڈیٹا سے اسناد لوڈ کریں۔ جب IAM کا کردار کسی کے ساتھ منسلک ہوتا ہے۔ ایمیزون لچکدار کمپیوٹ کلاؤڈ (ایمیزون ای سی 2) مثال (بوٹو 3 کو اسناد فراہم کرنے کے دوسرے طریقوں کے لیے، دیکھیں اسناد)۔ اس کا مطلب یہ ہے کہ یہ AWS اسناد کو بھی لوڈ کر سکتا ہے جب SageMaker مینیجڈ مثال سے متعلقہ ایگزیکیوشن رول سے چل رہا ہو، جیسا کہ بعد میں اس پوسٹ میں بحث کی گئی ہے۔
API گیٹ وے کے ذریعے MLflow APIs تک رسائی کے لیے IAM پالیسیاں ترتیب دیں۔
آپ یہ کنٹرول کرنے کے لیے IAM کے کردار اور پالیسیاں استعمال کر سکتے ہیں کہ API گیٹ وے پر کون وسائل استعمال کر سکتا ہے۔ مزید تفصیلات اور IAM پالیسی کے حوالہ جات کے بیانات کے لیے رجوع کریں۔ API کو استعمال کرنے کے لیے رسائی کو کنٹرول کریں۔.
مندرجہ ذیل کوڈ ایک مثال IAM پالیسی کو ظاہر کرتا ہے جو API گیٹ وے کے تمام وسائل پر MLflow کو بچانے والے تمام طریقوں کے لیے کالر کو اجازت دیتا ہے، عملی طور پر ایڈمن کو MLflow سرور تک رسائی فراہم کرتا ہے۔
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "execute-api:Invoke",
"Resource": "arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/*/*",
"Effect": "Allow"
}
]
}
اگر ہم ایک ایسی پالیسی چاہتے ہیں جو صارف کو تمام وسائل تک صرف پڑھنے کی رسائی کی اجازت دے تو IAM پالیسی درج ذیل کوڈ کی طرح نظر آئے گی۔
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "execute-api:Invoke",
"Resource": [
"arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/GET/*",
"arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/POST/api/2.0/mlflow/runs/search/",
"arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/POST/api/2.0/mlflow/experiments/search",
],
"Effect": "Allow"
}
]
}
ایک اور مثال ایک پالیسی ہو سکتی ہے کہ مخصوص صارفین کو ماڈل رجسٹری میں ماڈلز کو رجسٹر کرنے کی اجازت دی جائے اور بعد میں انہیں مخصوص مراحل (اسٹیجنگ، پروڈکشن وغیرہ) میں فروغ دیا جائے:
{ "Version": "2012-10-17", "Statement": [ { "Action": "execute-api:Invoke", "Resource": [ "arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/GET/*", "arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/POST/api/2.0/mlflow/runs/search/", "arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/POST/api/2.0/mlflow/experiments/search", "arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/POST/api/2.0/mlflow/model-versions/*", "arn:aws:execute-api:<REGION>:<ACCOUNT_ID>:<MLFLOW_API_ID>/<STAGE>/POST/api/2.0/mlflow/registered-models/*" ], "Effect": "Allow" } ]
}
MLflow UI کی توثیق (Lambda authorizer)
MLflow سرور تک براؤزر کی رسائی کو React کے ساتھ نافذ کردہ MLflow UI کے ذریعے ہینڈل کیا جاتا ہے۔ MLflow UI کو تصدیق شدہ صارفین کی مدد کے لیے ڈیزائن نہیں کیا گیا ہے۔ لاگ ان کے ایک مضبوط بہاؤ کو لاگو کرنا ایک مشکل کام ہو سکتا ہے، لیکن خوش قسمتی سے ہم اس پر بھروسہ کر سکتے ہیں۔ UI React اجزاء کو بڑھا دیں۔ توثیق کے لیے، جو شناختی اسٹور کے لیے Amazon Cognito کا استعمال کرتے ہوئے، React ایپلیکیشن میں لاگ ان فلو بنانے کی کوشش کو بہت کم کر دیتا ہے۔
Amazon Cognito ہمیں اپنے صارف کی بنیاد کا انتظام کرنے کی اجازت دیتا ہے۔ تھرڈ پارٹی شناختی فیڈریشن کی حمایت کریں۔، مثال کے طور پر، ADFS فیڈریشن کی تعمیر کو ممکن بنانا (دیکھیں۔ Amazon Cognito User Pools کا استعمال کرتے ہوئے اپنی ویب ایپ کے لیے ADFS فیڈریشن بنانا مزید تفصیلات کے لیے). Amazon Cognito کے جاری کردہ ٹوکنز کی API گیٹ وے پر تصدیق ہونی چاہیے۔ صرف ٹوکن کی تصدیق کرنا ٹھیک ٹھیک رسائی کے کنٹرول کے لیے کافی نہیں ہے، اس لیے لیمبڈا کی اجازت دہندہ ہمیں اس منطق کو لاگو کرنے کے لیے لچک دیتا ہے جس کی ہمیں ضرورت ہے۔ اس کے بعد ہم JWT ٹوکن کی توثیق کرنے اور API گیٹ وے کو درخواست کو مسترد کرنے یا اجازت دینے کے لیے IAM پالیسیاں تیار کرنے کے لیے اپنا Lambda Authorizer بنا سکتے ہیں۔ درج ذیل خاکہ ایم ایل فلو لاگ ان کے بہاؤ کی وضاحت کرتا ہے۔
اصل کوڈ کی تبدیلیوں کے بارے میں مزید معلومات کے لیے، پیچ فائل سے رجوع کریں۔ cognito.patch، MLflow ورژن 2.3.1 پر لاگو ہوتا ہے۔
یہ پیچ دو صلاحیتوں کو متعارف کراتا ہے:
- Amplify UI اجزاء شامل کریں اور Amazon Cognito تفصیلات کو ماحولیاتی متغیرات کے ذریعے ترتیب دیں جو لاگ ان فلو کو نافذ کرتے ہیں۔
- سیشن سے JWT کو نکالیں اور JWT کو کہاں بھیجنا ہے اس کے بیئرر ٹوکن کے ساتھ ایک اتھارٹی ہیڈر بنائیں۔
اگرچہ اپ اسٹریم سے ڈائیورجنگ کوڈ کو برقرار رکھنا ہمیشہ اپ اسٹریم پر انحصار کرنے سے زیادہ پیچیدگی کا اضافہ کرتا ہے، لیکن یہ بات قابل غور ہے کہ تبدیلیاں کم سے کم ہیں کیونکہ ہم Amplify React UI اجزاء پر انحصار کرتے ہیں۔
نئے لاگ ان فلو کے ساتھ، آئیے اپنے اپ ڈیٹ کردہ MLflow UI کے لیے پروڈکشن بلڈ بنائیں۔ AWS ایمپلیفائی ہوسٹنگ ایک AWS سروس ہے جو CI/CD اور ویب ایپس کی ہوسٹنگ کے لیے گٹ پر مبنی ورک فلو فراہم کرتی ہے۔ پائپ لائن میں تعمیراتی مرحلے کی وضاحت کی گئی ہے۔ buildspec.yaml
، جہاں ہم Amazon Cognito صارف پول ID، Amazon Cognito identity pool ID، اور تصدیق کے بہاؤ کو ترتیب دینے کے لیے Amplify UI React جزو کے ذریعے درکار صارف پول کلائنٹ ID کے بارے میں ماحولیاتی متغیرات کی تفصیلات کے طور پر انجیکشن لگا سکتے ہیں۔ درج ذیل کوڈ کی ایک مثال ہے۔ buildspec.yaml
فائل:
version: "1.0"
applications: - frontend: phases: preBuild: commands: - fallocate -l 4G /swapfile - chmod 600 /swapfile - mkswap /swapfile - swapon /swapfile - swapon -s - yarn install build: commands: - echo "REACT_APP_REGION=$REACT_APP_REGION" >> .env - echo "REACT_APP_COGNITO_USER_POOL_ID=$REACT_APP_COGNITO_USER_POOL_ID" >> .env - echo "REACT_APP_COGNITO_IDENTITY_POOL_ID=$REACT_APP_COGNITO_IDENTITY_POOL_ID" >> .env - echo "REACT_APP_COGNITO_USER_POOL_CLIENT_ID=$REACT_APP_COGNITO_USER_POOL_CLIENT_ID" >> .env - yarn run build artifacts: baseDirectory: build files: - "**/*"
سیج میکر ایگزیکیوشن رول کا استعمال کرتے ہوئے تجربات کو محفوظ طریقے سے لاگ کریں اور چلائیں۔
یہاں زیر بحث حل کے اہم پہلوؤں میں سے ایک SageMaker کے ساتھ محفوظ انضمام ہے۔ SageMaker ایک منظم سروس ہے، اور اس طرح، یہ آپ کی طرف سے آپریشن کرتی ہے۔ SageMaker کو جو کچھ کرنے کی اجازت ہے اس کی وضاحت IAM کی پالیسیوں سے ہوتی ہے جو عمل درآمد کے کردار سے منسلک ہوتی ہے جسے آپ SageMaker ٹریننگ جاب سے منسلک کرتے ہیں، یا یہ کہ آپ Studio سے کام کرنے والے صارف پروفائل سے منسلک ہوتے ہیں۔ سیج میکر کے عمل درآمد کے کردار کے بارے میں مزید معلومات کے لیے رجوع کریں۔ سیج میکر کے کردار.
پر IAM توثیق استعمال کرنے کے لیے API گیٹ وے کو ترتیب دے کر <MLFlow-Tracking-Server-URI>/api/*
وسائل، ہم SageMaker کے ایگزیکیوشن رول پر IAM پالیسیوں کے ایک سیٹ کی وضاحت کر سکتے ہیں جو SageMaker کو مخصوص رسائی کی سطح کے مطابق MLflow کے ساتھ تعامل کرنے کی اجازت دے گی۔
جب سیٹ کریں MLFLOW_TRACKING_AWS_SIGV4
کے لئے ماحولیاتی متغیر True
سٹوڈیو میں یا SageMaker ٹریننگ جاب میں کام کرنے کے دوران، MLflow Python SDK خود بخود تمام درخواستوں پر دستخط کر دے گا، جن کی توثیق API گیٹ وے سے کی جائے گی:
os.environ['MLFLOW_TRACKING_AWS_SIGV4'] = "True"
mlflow.set_tracking_uri(tracking_uri)
mlflow.set_experiment(experiment_name)
MLflow SDK کے ساتھ SageMaker کے ایگزیکیوشن رول کی جانچ کریں۔
اگر آپ اسٹوڈیو ڈومین تک رسائی حاصل کرتے ہیں جو تیار کیا گیا تھا، تو آپ کو تین صارفین ملیں گے:
- mlflow-admin - ایمیزون کوگنیٹو گروپ ایڈمنز میں صارف کے طور پر اسی طرح کی اجازتوں کے ساتھ عملدرآمد کے کردار سے وابستہ
- ایم ایل فلو ریڈر - ایمیزون کوگنیٹو گروپ کے قارئین میں صارف کے طور پر اسی طرح کی اجازتوں کے ساتھ عملدرآمد کے کردار سے وابستہ
- mlflow-model-approver - ایمیزون کوگنیٹو گروپ ماڈل منظور کنندگان میں صارف کی طرح کی اجازتوں کے ساتھ عمل درآمد کے کردار سے وابستہ
تین مختلف کرداروں کو جانچنے کے لیے، رجوع کریں۔ لیبز ہر صارف کے پروفائل پر اس نمونے کے حصے کے طور پر فراہم کیا گیا ہے۔
مندرجہ ذیل خاکہ MLflow کے ساتھ اسٹوڈیو صارف پروفائلز اور SageMaker جاب کی تصدیق کے لیے ورک فلو کی وضاحت کرتا ہے۔
اسی طرح، سیج میکر کے زیر انتظام انفراسٹرکچر پر سیج میکر جابز چلاتے وقت، اگر آپ ماحولیاتی متغیر سیٹ کرتے ہیں MLFLOW_TRACKING_AWS_SIGV4
کرنے کے لئے True
، اور نوکریوں کو بھیجے جانے والے سیج میکر کے عمل درآمد کے کردار میں API گیٹ وے تک رسائی کے لیے درست IAM پالیسی ہے، آپ اسناد کو خود سنبھالنے کی ضرورت کے بغیر اپنے MLflow ٹریکنگ سرور کے ساتھ محفوظ طریقے سے تعامل کر سکتے ہیں۔ SageMaker ٹریننگ جابز چلاتے وقت اور تخمینہ لگانے والی کلاس شروع کرتے وقت، آپ ماحولیاتی متغیرات کو پاس کر سکتے ہیں جو SageMaker انجیکشن کرے گا اور اسے ٹریننگ اسکرپٹ میں دستیاب کرائے گا، جیسا کہ درج ذیل کوڈ میں دکھایا گیا ہے:
environment={ "AWS_DEFAULT_REGION": region, "MLFLOW_EXPERIMENT_NAME": experiment_name, "MLFLOW_TRACKING_URI": tracking_uri, "MLFLOW_AMPLIFY_UI_URI": mlflow_amplify_ui, "MLFLOW_TRACKING_AWS_SIGV4": "true", "MLFLOW_USER": user
} estimator = SKLearn( entry_point='train.py', source_dir='source_dir', role=role, metric_definitions=metric_definitions, hyperparameters=hyperparameters, instance_count=1, instance_type='ml.m5.large', framework_version='1.0-1', base_job_name='mlflow', environment=environment
)
MLflow UI سے رنز اور تجربات کا تصور کریں۔
پہلی تعیناتی مکمل ہونے کے بعد، آئیے ایمیزون کوگنیٹو یوزر پول کو تین صارفین کے ساتھ آباد کریں، جن میں سے ہر ایک کا تعلق مختلف گروپ سے ہے، تاکہ ہم نے جو اجازتیں لاگو کی ہیں ان کی جانچ کریں۔ آپ اس اسکرپٹ کو استعمال کر سکتے ہیں۔ add_users_and_groups.py صارف کے تالاب کو سیڈ کرنے کے لیے۔ اسکرپٹ کو چلانے کے بعد، اگر آپ Amazon Cognito کنسول پر Amazon Cognito یوزر پول کو چیک کرتے ہیں، تو آپ کو تین صارفین کو تخلیق شدہ نظر آنا چاہیے۔
REST API گیٹ وے کی طرف، Lambda کا اختیار کنندہ پہلے Amazon Cognito صارف پول کلید کا استعمال کرتے ہوئے ٹوکن کے دستخط کی تصدیق کرے گا اور دعووں کی تصدیق کرے گا۔ اس کے بعد ہی یہ ایمیزون کوگنیٹو گروپ کو نکالے گا جس سے صارف تعلق رکھتا ہے JWT ٹوکن (cognito:groups
) اور اس گروپ کی بنیاد پر مختلف اجازتوں کا اطلاق کریں جو ہم نے پروگرام کیا ہے۔
ہمارے مخصوص کیس کے لیے، ہمارے پاس تین گروپ ہیں:
- ایڈمنز - دیکھ سکتے ہیں اور ہر چیز میں ترمیم کر سکتے ہیں۔
- قارئین - صرف سب کچھ دیکھ سکتا ہے۔
- ماڈل منظور کرنے والے - قارئین کی طرح، نیز ماڈلز کو رجسٹر کر سکتے ہیں، ورژن بنا سکتے ہیں، اور ماڈل ورژن کو اگلے مرحلے تک فروغ دے سکتے ہیں۔
گروپ پر منحصر ہے، Lambda کی اجازت دینے والا مختلف IAM پالیسیاں بنائے گا۔ یہ صرف ایک مثال ہے کہ اجازت کیسے حاصل کی جا سکتی ہے۔ لیمبڈا کے مجاز کے ساتھ، آپ اپنی ضرورت کی کوئی بھی منطق نافذ کر سکتے ہیں۔ ہم نے لیمبڈا فنکشن میں رن ٹائم پر IAM پالیسی بنانے کا انتخاب کیا ہے۔ تاہم، آپ مناسب IAM پالیسیوں کو پہلے سے تیار کر سکتے ہیں، انہیں ذخیرہ کر سکتے ہیں۔ ایمیزون ڈائنومو ڈی بی، اور انہیں اپنی کاروباری منطق کے مطابق رن ٹائم پر بازیافت کریں۔ تاہم، اگر آپ کارروائیوں کے صرف ذیلی سیٹ کو محدود کرنا چاہتے ہیں، تو آپ کو اس سے آگاہ ہونے کی ضرورت ہے۔ MLflow REST API کی تعریف.
آپ لیمبڈا اتھارٹی کے کوڈ کو تلاش کر سکتے ہیں۔ GitHub repo.
ملٹی اکاؤنٹ کے تحفظات
ڈیٹا سائنس ورک فلو کو متعدد مراحل سے گزرنا پڑتا ہے کیونکہ وہ تجربات سے پیداوار تک ترقی کرتے ہیں۔ ایک مشترکہ نقطہ نظر میں AI/ML ورک فلو (تجرب، ترقی، اور پیداوار) کے مختلف مراحل کے لیے وقف کردہ علیحدہ اکاؤنٹس شامل ہیں۔ تاہم، بعض اوقات یہ ضروری ہوتا ہے کہ ایک وقف شدہ اکاؤنٹ ہو جو ماڈلز کے لیے مرکزی ذخیرہ کے طور پر کام کرتا ہو۔ اگرچہ ہمارا فن تعمیر اور نمونہ ایک ہی اکاؤنٹ کا حوالہ دیتا ہے، لیکن اس آخری منظر نامے کو لاگو کرنے کے لیے اسے آسانی سے بڑھایا جا سکتا ہے۔ IAM کرداروں کو تبدیل کرنے کی صلاحیت یہاں تک کہ اکاؤنٹس میں بھی۔
مندرجہ ذیل خاکہ ایک الگ تھلگ AWS اکاؤنٹ میں MLflow کو مرکزی ذخیرہ کے طور پر استعمال کرتے ہوئے ایک فن تعمیر کی وضاحت کرتا ہے۔
اس استعمال کے معاملے کے لیے، ہمارے پاس دو اکاؤنٹس ہیں: ایک MLflow سرور کے لیے، اور دوسرا ڈیٹا سائنس ٹیم کے ذریعے قابل رسائی تجربات کے لیے۔ ڈیٹا سائنس اکاؤنٹ میں چلنے والی SageMaker ٹریننگ جاب سے کراس اکاؤنٹ تک رسائی کو فعال کرنے کے لیے، ہمیں درج ذیل عناصر کی ضرورت ہے:
- ڈیٹا سائنس AWS اکاؤنٹ میں SageMaker کا عمل درآمد ایک IAM پالیسی کے ساتھ منسلک ہے جو MLflow اکاؤنٹ میں مختلف کردار سنبھالنے کی اجازت دیتا ہے:
{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "<ARN-ROLE-IN-MLFLOW-ACCOUNT>" }
}
- MLflow اکاؤنٹ میں ایک IAM کردار صحیح IAM پالیسی کے ساتھ منسلک ہے جو MLflow ٹریکنگ سرور تک رسائی فراہم کرتا ہے، اور ڈیٹا سائنس اکاؤنٹ میں SageMaker کے عمل درآمد کے کردار کو یہ فرض کرنے کی اجازت دیتا ہے:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "<ARN-SAGEMAKER-EXECUTION-ROLE-IN-DATASCIENCE-ACCOUNT>" }, "Action": "sts:AssumeRole" } ]
}
ڈیٹا سائنس اکاؤنٹ میں چلنے والی ٹریننگ اسکرپٹ کے اندر، آپ MLflow کلائنٹ کو شروع کرنے سے پہلے اس مثال کو استعمال کر سکتے ہیں۔ آپ کو MLflow اکاؤنٹ میں کردار سنبھالنے اور عارضی اسناد کو ماحولیاتی متغیر کے طور پر ذخیرہ کرنے کی ضرورت ہے، کیونکہ اسناد کے اس نئے سیٹ کو MLflow کلائنٹ کے اندر شروع کیے گئے ایک نئے Boto3 سیشن کے ذریعے اٹھایا جائے گا۔
import boto3 # Session using the SageMaker Execution Role in the Data Science Account
session = boto3.Session()
sts = session.client("sts") response = sts.assume_role( RoleArn="<ARN-ROLE-IN-MLFLOW-ACCOUNT>", RoleSessionName="AssumedMLflowAdmin"
) credentials = response['Credentials']
os.environ['AWS_ACCESS_KEY_ID'] = credentials['AccessKeyId']
os.environ['AWS_SECRET_ACCESS_KEY'] = credentials['SecretAccessKey']
os.environ['AWS_SESSION_TOKEN'] = credentials['SessionToken'] # set remote mlflow server and initialize a new boto3 session in the context
# of the assumed role
mlflow.set_tracking_uri(tracking_uri)
experiment = mlflow.set_experiment(experiment_name)
اس مثال میں ، RoleArn
اس کردار کا ARN ہے جسے آپ فرض کرنا چاہتے ہیں، اور RoleSessionName
وہ نام ہے جسے آپ فرض شدہ سیشن کے لیے منتخب کرتے ہیں۔ دی sts.assume_role
طریقہ عارضی حفاظتی اسناد واپس کرتا ہے جسے MLflow کلائنٹ فرض کردہ کردار کے لیے ایک نیا کلائنٹ بنانے کے لیے استعمال کرے گا۔ پھر ایم ایل فلو کلائنٹ فرض کردہ کردار کے تناظر میں API گیٹ وے کو دستخط شدہ درخواستیں بھیجے گا۔
سیج میکر اسٹوڈیو کے اندر ایم ایل فلو رینڈر کریں۔
سیج میکر اسٹوڈیو JupyterLab پر مبنی ہے، اور بالکل اسی طرح جیسے JupyterLab میں، آپ اپنی پیداواری صلاحیت کو بڑھانے کے لیے ایکسٹینشنز انسٹال کر سکتے ہیں۔ اس لچک کی بدولت، MLflow اور SageMaker کے ساتھ کام کرنے والے ڈیٹا سائنسدان اسٹوڈیو کے ماحول سے MLflow UI تک رسائی حاصل کرکے اور تجربات اور لاگ ان رنز کو فوری طور پر دیکھ کر اپنے انضمام کو مزید بہتر بنا سکتے ہیں۔ مندرجہ ذیل اسکرین شاٹ اسٹوڈیو میں پیش کردہ MLflow کی ایک مثال دکھاتا ہے۔
سٹوڈیو میں JupyterLab ایکسٹینشنز انسٹال کرنے کے بارے میں معلومات کے لیے دیکھیں ایمیزون سیج میکر اسٹوڈیو اور سیج میکر نوٹ بک انسٹینس اب ڈویلپر کی پیداواری صلاحیت کو بڑھانے کے لیے JupyterLab 3 نوٹ بک کے ساتھ آتے ہیں۔. لائف سائیکل کنفیگریشنز کے ذریعے آٹومیشن شامل کرنے کے بارے میں تفصیلات کے لیے، دیکھیں لائف سائیکل کنفیگریشنز کا استعمال کرتے ہوئے ایمیزون سیج میکر اسٹوڈیو کو حسب ضرورت بنائیں.
اس پوسٹ کی حمایت کرنے والے نمونے کے ذخیرے میں، ہم فراہم کرتے ہیں۔ ہدایات انسٹال کرنے کے طریقہ پر jupyterlab-iframe
توسیع ایکسٹینشن انسٹال ہونے کے بعد، آپ ایمیزون کوگنیٹو یوزر پول میں محفوظ کردہ اسناد کے وہی سیٹ استعمال کرتے ہوئے اسٹوڈیو کو چھوڑے بغیر MLflow UI تک رسائی حاصل کر سکتے ہیں۔
اگلے مراحل
اس کام کو بڑھانے کے لیے کئی اختیارات ہیں۔ ایک خیال یہ ہے کہ SageMaker اسٹوڈیو اور MLflow UI دونوں کے لیے شناختی اسٹور کو مضبوط کیا جائے۔ دوسرا آپشن یہ ہوگا کہ ایمیزون کوگنیٹو کے ساتھ تھرڈ پارٹی آئیڈینٹی فیڈریشن سروس کا استعمال کریں، اور پھر استعمال کریں AWS IAM شناختی مرکز اسی تیسرے فریق کی شناخت کا استعمال کرتے ہوئے اسٹوڈیو تک رسائی فراہم کرنے کے لیے (AWS سنگل سائن آن کا جانشین)۔ ایک اور استعمال کرتے ہوئے مکمل آٹومیشن متعارف کرانا ہے۔ ایمیزون سیج میکر پائپ لائنز ماڈل بلڈنگ کے CI/CD حصے کے لیے، اور MLflow کو بطور سنٹرلائزڈ تجربہ ٹریکنگ سرور اور ماڈل رجسٹری کو مضبوط گورننس کی صلاحیتوں کے ساتھ استعمال کرنے کے ساتھ ساتھ SageMaker ہوسٹنگ اینڈ پوائنٹ پر منظور شدہ ماڈلز کو خود بخود تعینات کرنے کے لیے آٹومیشن۔
نتیجہ
اس پوسٹ کا مقصد ایم ایل فلو کے لیے انٹرپرائز لیول تک رسائی کا کنٹرول فراہم کرنا تھا۔ اس کو حاصل کرنے کے لیے، ہم نے تصدیق اور اجازت کے عمل کو ایم ایل فلو سرور سے الگ کیا اور انہیں API گیٹ وے پر منتقل کر دیا۔ ہم نے MLflow Python SDK اور MLflow UI دونوں کی ضروریات کو پورا کرنے کے لیے، API گیٹ وے، IAM اجازت دہندگان اور Lambda کی اجازت دہندگان کی طرف سے پیش کردہ اجازت کے دو طریقوں کا استعمال کیا۔ یہ سمجھنا ضروری ہے کہ صارفین ایم ایل فلو سے باہر ہیں، اس لیے ایک مستقل نظم و نسق کے لیے IAM پالیسیوں کو برقرار رکھنے کی ضرورت ہوتی ہے، خاص طور پر انتہائی دانے دار اجازتوں کی صورت میں۔ آخر میں، ہم نے سادہ ایکسٹینشنز کے ذریعے MLflow کو سٹوڈیو میں ضم کر کے ڈیٹا سائنسدانوں کے تجربے کو بڑھانے کا طریقہ دکھایا۔
تک رسائی حاصل کر کے خود ہی حل آزمائیں۔ GitHub repo اور اگر آپ کے پاس تبصرے میں کوئی سوالات ہیں تو ہمیں بتائیں!
اضافی وسائل
SageMaker اور MLflow کے بارے میں مزید معلومات کے لیے، درج ذیل دیکھیں:
مصنفین کے بارے میں
پاولو ڈی فرانسسکو ایمیزون ویب سروسز (AWS) میں ایک سینئر سولیوشن آرکیٹیکٹ ہے۔ انہوں نے ٹیلی کمیونیکیشن انجینئرنگ میں پی ایچ ڈی کی ہے اور سافٹ ویئر انجینئرنگ میں تجربہ ہے۔ وہ مشین لرننگ کے بارے میں پرجوش ہے اور فی الحال اپنے تجربے کو استعمال کرنے پر توجہ مرکوز کر رہا ہے تاکہ صارفین کو AWS پر اپنے اہداف تک پہنچنے میں مدد ملے، خاص طور پر MLOps کے بارے میں بات چیت میں۔ کام سے باہر، وہ فٹ بال کھیلنے اور پڑھنے میں لطف اندوز ہوتا ہے۔
کرس فریگلی۔ سان فرانسسکو، کیلیفورنیا میں واقع Amazon Web Services (AWS) میں AI اور مشین لرننگ کے لیے پرنسپل اسپیشلسٹ سولیوشن آرکیٹیکٹ ہیں۔ وہ O'Reilly کتاب، "AWS پر ڈیٹا سائنس" کے شریک مصنف ہیں۔ کرس Apache Spark، TensorFlow، Ray، اور KubeFlow پر مرکوز کئی عالمی ملاقاتوں کے بانی بھی ہیں۔ وہ دنیا بھر میں AI اور مشین لرننگ کانفرنسوں میں باقاعدگی سے بات کرتا ہے جس میں O'Reilly AI، اوپن ڈیٹا سائنس کانفرنس، اور بگ ڈیٹا اسپین شامل ہیں۔
ارشاد بوچھ Amazon Web Services (AWS) میں پرنسپل سولیوشن آرکیٹیکٹ ہیں۔ ارشاد بڑے AWS گلوبل ISV اور SI پارٹنرز کے ساتھ کام کرتا ہے اور ان کی کلاؤڈ حکمت عملی بنانے اور Amazon کے کلاؤڈ کمپیوٹنگ پلیٹ فارم کو وسیع پیمانے پر اپنانے میں مدد کرتا ہے۔ ارشاد CIOs، CTOs اور ان کے آرکیٹیکٹس کے ساتھ بات چیت کرتا ہے اور ان کی اور ان کے آخری صارفین کو اپنے کلاؤڈ ویژن کو نافذ کرنے میں مدد کرتا ہے۔ ارشاد سٹریٹجک اور تکنیکی مصروفیات کا مالک ہے اور مخصوص نفاذ کے منصوبوں کے ارد گرد حتمی کامیابی، اور Amazon Web Services ٹیکنالوجیز میں گہری مہارت پیدا کرنے کے ساتھ ساتھ Amazon Web Services پلیٹ فارم کا استعمال کرتے ہوئے ایپلی کیشنز اور سروسز کی تعمیر کے بارے میں وسیع معلومات کا حامل ہے۔
- SEO سے چلنے والا مواد اور PR کی تقسیم۔ آج ہی بڑھا دیں۔
- پلیٹوآئ اسٹریم۔ ویب 3 ڈیٹا انٹیلی جنس۔ علم میں اضافہ۔ یہاں تک رسائی حاصل کریں۔
- ایڈریین ایشلے کے ساتھ مستقبل کا نقشہ بنانا۔ یہاں تک رسائی حاصل کریں۔
- PREIPO® کے ساتھ PRE-IPO کمپنیوں میں حصص خریدیں اور بیچیں۔ یہاں تک رسائی حاصل کریں۔
- ماخذ: https://aws.amazon.com/blogs/machine-learning/securing-mlflow-in-aws-fine-grained-access-control-with-aws-native-services/
- : ہے
- : ہے
- : نہیں
- :کہاں
- $UP
- 1
- 100
- 30
- 7
- a
- ہمارے بارے میں
- تک رسائی حاصل
- قابل رسائی
- تک رسائی حاصل
- کے مطابق
- اکاؤنٹ
- اکاؤنٹس
- حاصل
- حاصل کیا
- کے پار
- عمل
- اعمال
- کام کرتا ہے
- شامل کریں
- انہوں نے مزید کہا
- پتہ
- جوڑتا ہے
- منتظم
- منہ بولابیٹا بنانے
- فائدہ
- کے بعد
- AI
- AI / ML
- مقصد
- تمام
- کی اجازت
- کی اجازت دیتا ہے
- پہلے ہی
- بھی
- اگرچہ
- ہمیشہ
- ایمیزون
- ایمیزون کاگنیٹو
- ایمیزون EC2
- ایمیزون سیج میکر
- ایمیزون سیج میکر اسٹوڈیو
- ایمیزون ویب سروسز
- ایمیزون ویب سروسز (AWS)
- an
- اور
- ایک اور
- کوئی بھی
- اپاچی
- اے پی آئی
- APIs
- اپلی کیشن
- ظاہر
- قابل اطلاق
- درخواست
- ایپلی کیشنز
- اطلاقی
- کا اطلاق کریں
- نقطہ نظر
- مناسب
- کی منظوری دے دی
- ایپس
- فن تعمیر
- کیا
- ارد گرد
- AS
- پہلوؤں
- تفویض
- ایسوسی ایٹ
- منسلک
- فرض کیا
- At
- آڈٹ
- ارورہ
- مصنف
- تصدیق
- تصدیق شدہ
- کی توثیق
- اجازت
- اختیار کرنا
- مجاز
- خود کار طریقے سے
- خود کار طریقے سے
- میشن
- دستیاب
- AWS
- پسدید
- بیس
- کی بنیاد پر
- BE
- بیئرر
- کیونکہ
- رہا
- اس سے پہلے
- پیچھے
- تعلق رکھتا ہے
- کے درمیان
- بگ
- بگ ڈیٹا
- بلاکس
- کتاب
- بڑھانے کے
- دونوں
- وسیع
- براؤزر
- تعمیر
- عمارت
- کاروبار
- لیکن
- by
- کیلی فورنیا
- کالر
- کر سکتے ہیں
- امیدوار
- صلاحیتوں
- کیس
- کھانا کھلانا
- مرکزی
- مرکزی
- چیلنج
- تبدیلیاں
- چیک کریں
- میں سے انتخاب کریں
- کرس
- کا دعوی
- دعوے
- طبقے
- کلائنٹ
- بادل
- کلاؤڈ کمپیوٹنگ
- شریک مصنف۔
- کوڈ
- مجموعہ
- جمع
- کس طرح
- کامن
- مکمل
- پیچیدگی
- جزو
- اجزاء
- کمپیوٹنگ
- کمپیوٹنگ
- کانفرنس
- کانفرنسوں
- کنکشن
- متواتر
- کنسول
- مضبوط
- کنٹینر
- سیاق و سباق
- کنٹرول
- آسان
- کور
- درست
- سرمایہ کاری مؤثر
- تخلیق
- بنائی
- کریڈینٹل
- اسناد
- اس وقت
- گاہکوں
- اعداد و شمار
- ڈیٹا سائنس
- ڈیٹا سائنسدان
- وقف
- گہری
- گہری مہارت
- گہرے
- کی وضاحت
- demonstrated,en
- ثبوت
- مظاہرین
- تعیناتی
- تعینات
- تعیناتی
- بیان کیا
- ڈیزائن
- ڈیزائن
- تفصیلی
- تفصیلات
- ڈیولپر
- ترقی
- ترقی
- مختلف
- براہ راست
- بات چیت
- بات چیت
- do
- میں Docker
- نہیں کرتا
- کر
- ڈومین
- نہیں
- ہر ایک
- آسانی سے
- یاد آتی ہے
- اثر
- کوشش
- عناصر
- کو چالو کرنے کے
- چالو حالت میں
- کے قابل بناتا ہے
- آخر
- آخر سے آخر تک
- اختتام پوائنٹ
- انجنیئرنگ
- بڑھانے کے
- کافی
- انٹرپرائز کی سطح
- اداروں
- ماحولیات
- خاص طور پر
- قائم ہے
- اندازہ
- بھی
- آخر میں
- ہر کوئی
- سب
- مثال کے طور پر
- مثال کے طور پر
- پھانسی
- وجود
- موجودہ
- توسیع
- تجربہ
- تجربہ
- تجربات
- مہارت
- تلاش
- توسیع
- مدت ملازمت میں توسیع
- ملانے
- وسیع
- بیرونی
- نکالنے
- سہولت
- ممکن
- نمایاں کریں
- فیڈریشن
- اعداد و شمار
- فائل
- فائلوں
- آخر
- مل
- پہلا
- لچک
- بہاؤ
- توجہ مرکوز
- توجہ مرکوز
- توجہ مرکوز
- پر عمل کریں
- کے بعد
- فٹ بال کے
- کے لئے
- ملا
- بانی
- چار
- فریم ورک
- فرانسسکو
- سے
- سامنے
- سامنے کے آخر میں
- فرنٹ اینڈ
- مکمل
- تقریب
- مزید
- گیٹ وے
- پیدا
- پیدا
- نسل
- GitHub کے
- دے دو
- دے
- گلوبل
- اہداف
- گورننس
- عطا
- گرانٹ
- سب سے بڑا
- بہت
- گروپ
- گروپ کا
- ہے
- ہونے
- he
- مدد
- مدد کرتا ہے
- یہاں
- ہائی
- اعلی سطحی
- انتہائی
- ان
- کی ڈگری حاصل کی
- میزبانی کی
- ہوسٹنگ
- کس طرح
- کیسے
- تاہم
- HTML
- HTTP
- HTTPS
- ID
- خیال
- شناخت
- شناختی
- if
- وضاحت کرتا ہے
- تصویر
- فوری طور پر
- اثر انداز کرنا
- پر عملدرآمد
- نفاذ
- عملدرآمد
- پر عمل درآمد
- عمل
- اہم
- کو بہتر بنانے کے
- کو بہتر بنانے کے
- in
- سمیت
- موصولہ
- صنعتوں
- معلومات
- انفراسٹرکچر
- انسٹال
- نصب
- انسٹال کرنا
- مثال کے طور پر
- ہدایات
- ضم
- انضمام کرنا
- انضمام
- انضمام
- بات چیت
- انٹرایکٹو
- انٹرفیسز
- میں
- متعارف کرانے
- متعارف کرواتا ہے
- الگ الگ
- جاری
- IT
- میں
- خود
- ایوب
- نوکریاں
- صرف
- Jwt
- رکھیں
- کلیدی
- چابیاں
- جان
- کیوب فلو
- بڑے
- آخری
- بعد
- سیکھنے
- چھوڑ کر
- دو
- سطح
- لائبریری
- زندگی کا دورانیہ
- کی طرح
- حدود
- منسلک
- لسٹ
- لوڈ
- لاگ ان کریں
- انکرنا
- لاگ ان
- منطق
- لاگ ان
- دیکھو
- کی طرح دیکھو
- مشین
- مشین لرننگ
- برقرار رکھنے
- بنا
- بناتا ہے
- بنانا
- انتظام
- میں کامیاب
- انتظام
- مینیجنگ
- بہت سے
- کا مطلب ہے کہ
- میکانزم
- نظام
- ملاقاتیں
- طریقہ
- طریقوں
- پیمائش کا معیار
- شاید
- کم سے کم
- ML
- ایم ایل اوپس
- ماڈل
- ماڈل
- نظر ثانی کرنے
- ماڈیولر
- زیادہ
- کثیر
- ایک سے زیادہ
- ضروری
- نام
- مقامی
- ضرورت ہے
- ضرورت
- ضرورت ہے
- ضروریات
- نئی
- اگلے
- نوٹ بک
- اب
- of
- کی پیشکش کی
- تجویز
- on
- ایک
- صرف
- کھول
- کھولیں ڈیٹا
- اوپن سورس
- اوپن سورس سافٹ ویئر
- آپریشنل
- آپریشنز
- اختیار
- آپشنز کے بھی
- or
- OS
- دیگر
- ہمارے
- باہر
- باہر
- پر
- خود
- مالک ہے
- حصہ
- خاص طور پر
- شراکت داروں کے
- منظور
- منظور
- جذباتی
- پیچ
- کامل
- کارکردگی کا مظاہرہ
- اجازت
- اجازتیں
- اٹھایا
- پائپ لائن
- مقام
- پلیٹ فارم
- پلاٹا
- افلاطون ڈیٹا انٹیلی جنس
- پلیٹو ڈیٹا
- کھیل
- علاوہ
- پوائنٹ
- پالیسیاں
- پالیسی
- پول
- امکان
- پوسٹ
- عملی طور پر
- پچھلا
- پرنسپل
- نجی
- عمل
- عمل
- پیداوار
- پیداوری
- پروفائل
- پروفائلز
- پروگراماتی۔
- پروگرام
- پیش رفت
- منصوبوں
- کو فروغ دینا
- مجوزہ
- فراہم
- فراہم
- فراہم کرتا ہے
- مقاصد
- ازگر
- سوالات
- رے
- تک پہنچنے
- جواب دیں
- قارئین
- پڑھنا
- کم
- خطے
- رجسٹر
- رجسٹرڈ
- رجسٹری
- باقاعدگی سے
- باضابطہ
- ریگولیٹڈ صنعتیں
- قابل اعتماد
- انحصار کرو
- ریموٹ
- رینڈرنگ
- ذخیرہ
- نمائندگی
- درخواست
- درخواستوں
- ضروریات
- کی ضرورت ہے
- وسائل
- وسائل
- بالترتیب
- جواب
- باقی
- محدود
- واپسی
- واپسی
- حقوق
- مضبوط
- کردار
- کردار
- رن
- چل رہا ہے
- sagemaker
- اسی
- سان
- سان فرانسسکو
- منظر نامے
- سائنس
- سائنسدان
- سائنسدانوں
- sdk
- بغیر کسی رکاوٹ کے
- محفوظ بنانے
- محفوظ طریقے سے
- محفوظ
- سیکورٹی
- دیکھنا
- بیج
- بھیجنے
- سینئر
- علیحدہ
- بے سرور
- سروس
- سروسز
- اجلاس
- مقرر
- قائم کرنے
- سیٹ اپ
- کئی
- ہونا چاہئے
- دکھائیں
- دکھایا گیا
- شوز
- کی طرف
- سائن ان کریں
- دستخط
- دستخط کی
- اسی طرح
- سادہ
- صرف
- بعد
- ایک
- So
- سافٹ ویئر کی
- سوفٹ ویئر کی نشوونما
- سافٹ ویئر انجینئرنگ
- حل
- حل
- سپین
- چنگاری
- بولی
- ماہر
- مخصوص
- مخصوص
- ڈھیر لگانا
- Stacks
- مراحل
- کھینچنا
- شروع
- بیان
- بیانات
- مرحلہ
- مراحل
- ابھی تک
- ذخیرہ
- ذخیرہ
- ذخیرہ
- براہ راست
- حکمت عملی
- حکمت عملی
- مضبوط
- سٹوڈیو
- سب نیٹ
- کامیابی
- اس طرح
- فراہمی
- حمایت
- تائید
- امدادی
- سوئچ کریں
- کے نظام
- موزوں
- لے لو
- ٹاسک
- کاموں
- ٹیم
- ٹیکنیکل
- ٹیکنالوجی
- ٹیلی مواصلات
- عارضی
- ٹیسسرور
- ٹیسٹ
- سے
- شکریہ
- کہ
- ۔
- دنیا
- ان
- ان
- تو
- اس طرح
- لہذا
- یہ
- وہ
- لگتا ہے کہ
- تیسری پارٹی
- اس
- تین
- کے ذریعے
- وقت
- کرنے کے لئے
- ٹوکن
- ٹوکن
- سب سے اوپر
- ٹریکنگ
- ٹرین
- ٹریننگ
- منتقل
- سچ
- ٹرن
- دو
- ui
- حتمی
- کے تحت
- سمجھ
- اپ ڈیٹ
- صلی اللہ علیہ وسلم
- us
- استعمال کی شرائط
- استعمال کیس
- رکن کا
- صارف کا تجربہ
- صارفین
- کا استعمال کرتے ہوئے
- استعمال
- استعمال کیا
- توثیقی
- تصدیق
- اس بات کی تصدیق
- تصدیق کرنا
- ورژن
- بہت
- کی طرف سے
- نقطہ نظر
- چاہتے ہیں
- تھا
- راستہ..
- طریقوں
- we
- ویب
- ویب خدمات
- اچھا ہے
- کیا
- جب
- چاہے
- جس
- جبکہ
- ڈبلیو
- پوری
- گے
- ساتھ
- کے اندر
- بغیر
- کام
- کام کے بہاؤ
- کام کر
- کام کرتا ہے
- دنیا
- فکر
- قابل
- گا
- ابھی
- تم
- اور
- اپنے آپ کو
- زیفیرنیٹ