ڈیٹا سائنسدان اکثر اپنے ماڈلز کو مقامی طور پر تربیت دیتے ہیں اور اپنے ماڈلز کو تعینات کرنے کے لیے ایک مناسب ہوسٹنگ سروس تلاش کرتے ہیں۔ بدقسمتی سے، کلاؤڈ پر پہلے سے تربیت یافتہ ماڈلز کی تعیناتی کے لیے کوئی بھی طریقہ کار یا رہنما نہیں ہے۔ اس پوسٹ میں، ہم تربیت یافتہ ماڈلز کو تعینات کرنے پر غور کرتے ہیں۔ ایمیزون سیج میکر آپ کی تعیناتی کے وقت کو کم کرنے کے لیے ہوسٹنگ۔
SageMaker ایک مکمل طور پر منظم مشین لرننگ (ML) سروس ہے۔ SageMaker کے ساتھ، آپ ایم ایل ماڈلز کو تیزی سے تیار اور تربیت دے سکتے ہیں اور انہیں براہ راست پروڈکشن کے لیے تیار میزبان ماحول میں تعینات کر سکتے ہیں۔ مزید برآں، آپ کو سرورز کا نظم کرنے کی ضرورت نہیں ہے۔ آپ کو اپنے ڈیٹا کے ذرائع تک آسان رسائی کے ساتھ ایک مربوط Jupyter نوٹ بک ماحول ملتا ہے۔ آپ ڈیٹا کا تجزیہ کر سکتے ہیں، اپنے ماڈلز کو تربیت دے سکتے ہیں، اور اپنے الگورتھم کا استعمال کرتے ہوئے ان کی جانچ کر سکتے ہیں یا SageMaker کے فراہم کردہ ML الگورتھم استعمال کر سکتے ہیں جو متعدد مشینوں میں پھیلے ہوئے بڑے ڈیٹاسیٹس کے خلاف موثر طریقے سے چلانے کے لیے موزوں ہیں۔ ٹریننگ اور ہوسٹنگ کا بل استعمال کے منٹوں کے حساب سے لیا جاتا ہے، جس میں کوئی کم از کم فیس نہیں ہوتی اور نہ ہی کوئی پیشگی وعدے ہوتے ہیں۔
حل جائزہ
ڈیٹا سائنسدان بعض اوقات اپنے IDE کا استعمال کرتے ہوئے مقامی طور پر ماڈلز کو تربیت دیتے ہیں اور یا تو ان ماڈلز کو ایم ایل انجینئرنگ ٹیم کو تعیناتی کے لیے بھیجتے ہیں یا صرف طاقتور مشینوں پر مقامی طور پر پیشین گوئیاں چلاتے ہیں۔ اس پوسٹ میں، ہم نے ایک Python لائبریری متعارف کرائی ہے جو SageMaker پر ماڈلز کی تعیناتی کے عمل کو آسان بناتی ہے۔ ہوسٹنگ ریئل ٹائم یا سرور لیس اینڈ پوائنٹس پر۔
یہ Python لائبریری ڈیٹا سائنسدانوں کو SageMaker پر تیزی سے شروع کرنے کے لیے ایک سادہ انٹرفیس فراہم کرتی ہے، بغیر کسی نچلے درجے کی SageMaker فعالیت کو جاننے کی ضرورت کے۔
اگر آپ کے پاس اپنے پسندیدہ IDE کا استعمال کرتے ہوئے مقامی طور پر تربیت یافتہ ماڈلز ہیں اور آپ کلاؤڈ کے پیمانے سے فائدہ اٹھانا چاہتے ہیں، تو آپ اپنے ماڈل کو SageMaker پر تعینات کرنے کے لیے اس لائبریری کا استعمال کر سکتے ہیں۔ سیج میکر کے ساتھ، کلاؤڈ بیسڈ ایم ایل پلیٹ فارم کے تمام اسکیلنگ فوائد کے علاوہ، آپ کو مقصد سے تیار کردہ تربیتی ٹولز (تقسیم شدہ تربیت، ہائپر پیرامیٹر ٹیوننگ)، تجرباتی انتظام، ماڈل مینجمنٹ، تعصب کا پتہ لگانے، ماڈل کی وضاحت، اور بہت سے دوسرے تک رسائی حاصل ہے۔ ایسی صلاحیتیں جو ایم ایل لائف سائیکل کے کسی بھی پہلو میں آپ کی مدد کر سکتی ہیں۔ آپ ML کے لیے تین سب سے مشہور فریم ورکس میں سے انتخاب کر سکتے ہیں: Scikit-learn، PyTorch، اور TensorFlow، اور اپنی مرضی کے مطابق کمپیوٹ کا انتخاب کر سکتے ہیں۔ ڈیفالٹس راستے میں فراہم کیے جاتے ہیں تاکہ اس لائبریری کے صارفین پیچیدہ فیصلے کرنے یا نئے تصورات سیکھنے کی ضرورت کے بغیر اپنے ماڈلز کو تعینات کر سکیں۔ اس پوسٹ میں، ہم آپ کو دکھاتے ہیں کہ اس لائبریری کے ساتھ کیسے شروعات کی جائے اور SageMaker ہوسٹنگ پر اپنے ML ماڈلز کی تعیناتی کو بہتر بنایا جائے۔
لائبریری میں پایا جا سکتا ہے GitHub ذخیرہ.
سیج میکر مائیگریشن ٹول کٹ
۔ SageMakerMigration
کلاس گٹ ہب پر شائع شدہ ازگر کی لائبریری کے ذریعے دستیاب ہے۔ اس لائبریری کو انسٹال کرنے کی ہدایات ریپوزٹری میں فراہم کی گئی ہیں۔ یقینی بنائیں کہ آپ اپنے ماحول کو درست طریقے سے ترتیب دینے کے لیے README کی پیروی کرتے ہیں۔ اس لائبریری کو انسٹال کرنے کے بعد، اس پوسٹ کا بقیہ حصہ اس بارے میں بات کرتا ہے کہ آپ اسے کیسے استعمال کر سکتے ہیں۔
۔ SageMakerMigration
کلاس سیج میکر APIs پر اعلی سطحی تجریدوں پر مشتمل ہے جو آپ کے ماڈل کو SageMaker میں تعینات کرنے کے لیے درکار اقدامات کو نمایاں طور پر کم کر دیتا ہے، جیسا کہ مندرجہ ذیل تصویر میں دکھایا گیا ہے۔ یہ تجربہ کے لیے ہے تاکہ ڈویلپرز جلدی شروع کر سکیں اور SageMaker کی جانچ کر سکیں۔ یہ پیداوار کی منتقلی کے لیے نہیں ہے۔
Scikit-learn، PyTorch، اور TensorFlow ماڈلز کے لیے، یہ لائبریری تربیت یافتہ ماڈلز کو SageMaker ریئل ٹائم اینڈ پوائنٹ یا سرور لیس اینڈ پوائنٹ پر تعینات کرنے میں معاونت کرتی ہے۔ سیج میکر میں تخمینہ کے اختیارات کے بارے میں مزید جاننے کے لیے، رجوع کریں۔ اندازہ کے لیے ماڈلز تعینات کریں۔.
ریئل ٹائم بمقابلہ سرور لیس اینڈ پوائنٹس
ریئل ٹائم انفرنس انفرنس ورک بوجھ کے لیے مثالی ہے جہاں آپ کے پاس ریئل ٹائم، انٹرایکٹو، کم تاخیر کے تقاضے ہیں۔ آپ اپنے ماڈل کو SageMaker ہوسٹنگ سروسز میں تعینات کر سکتے ہیں اور ایک اختتامی نقطہ حاصل کر سکتے ہیں جسے اندازہ لگانے کے لیے استعمال کیا جا سکتا ہے۔ یہ اینڈ پوائنٹس مکمل طور پر منظم ہیں اور آٹو اسکیلنگ کو سپورٹ کرتے ہیں۔
سیج میکر سرور لیس انفرنس ایک مقصد سے بنایا گیا انفرنس آپشن ہے جو آپ کے لیے ایم ایل ماڈلز کو تعینات کرنا اور اسکیل کرنا آسان بناتا ہے۔ سرور لیس انفرنس ان کام کے بوجھ کے لیے مثالی ہے جن میں ٹریفک کی تیز رفتاری کے درمیان وقفہ وقفہ ہوتا ہے اور وہ سرد آغاز کو برداشت کر سکتے ہیں۔ سرور لیس اینڈ پوائنٹس خود بخود کمپیوٹ وسائل کو لانچ کرتے ہیں اور ٹریفک کے لحاظ سے ان کو اندر اور باہر پیمانہ کرتے ہیں، مثال کی قسموں کو منتخب کرنے یا اسکیلنگ کی پالیسیوں کو منظم کرنے کی ضرورت کو ختم کرتے ہیں۔ یہ سرورز کو منتخب کرنے اور ان کا انتظام کرنے کی غیر متفرق بھاری لفٹنگ کو دور کرتا ہے۔
آپ کے استعمال کے معاملے پر منحصر ہے، ہو سکتا ہے کہ آپ اپنے ماڈل کو SageMaker پر فوری طور پر ہوسٹ کرنا چاہیں، بغیر کسی مثال کے اور لاگت اٹھائے، ایسی صورت میں سرور لیس اینڈ پوائنٹ ایک بہترین حل ہے۔
اپنا تربیت یافتہ ماڈل اور انفرنس اسکرپٹ تیار کریں۔
اس ماڈل کی شناخت کرنے کے بعد جسے آپ SageMaker پر تعینات کرنا چاہتے ہیں، آپ کو یقینی بنانا چاہیے کہ ماڈل SageMaker کو صحیح فارمیٹ میں پیش کیا گیا ہے۔ سیج میکر اینڈ پوائنٹس عام طور پر دو اجزاء پر مشتمل ہوتے ہیں: تربیت یافتہ ماڈل آرٹفیکٹ (.pth، .pkl، وغیرہ) اور ایک انفرنس اسکرپٹ۔ تخمینہ اسکرپٹ ہمیشہ لازمی نہیں ہوتا ہے، لیکن اگر فراہم نہیں کیا جاتا ہے، تو آپ جو سرونگ کنٹینر استعمال کر رہے ہیں اس کے ڈیفالٹ ہینڈلرز لاگو ہوتے ہیں۔ یہ اسکرپٹ فراہم کرنا ضروری ہے اگر آپ کو اندازہ لگانے کے لیے اپنی ان پٹ/آؤٹ پٹ فعالیت کو حسب ضرورت بنانا ہو۔
تربیت یافتہ ماڈل کا نمونہ محض ایک محفوظ کردہ Scikit-learn، PyTorch، یا TensorFlow ماڈل ہے۔ Scikit-learn کے لیے، یہ عام طور پر ایک اچار کی فائل ہے، PyTorch کے لیے یہ ایک .pt یا .pth فائل ہے، اور TensorFlow کے لیے یہ اثاثوں، .pb فائلوں اور دیگر متغیرات کے ساتھ ایک فولڈر ہے۔
عام طور پر، آپ کو یہ کنٹرول کرنے کی ضرورت ہوتی ہے کہ آپ کا ماڈل کس طرح ان پٹ پر کارروائی کرتا ہے اور انفرنس کو انجام دیتا ہے، اور آپ کے جواب کے لیے آؤٹ پٹ فارمیٹ کو کنٹرول کرتا ہے۔ SageMaker کے ساتھ، آپ ایک فراہم کر سکتے ہیں۔ تخمینہ سکرپٹ اس حسب ضرورت کو شامل کرنے کے لیے۔ SageMaker کے ذریعہ استعمال ہونے والی کسی بھی انفرنس اسکرپٹ میں درج ذیل چار ہینڈلر فنکشنز میں سے ایک یا زیادہ ہونا ضروری ہے: model_fn
, input_fn
, predict_fn
، اور output_fn
.
نوٹ کریں کہ یہ چار فنکشنز پر لاگو ہوتے ہیں۔ پی ٹورچ اور سکیٹ سیکھنا کنٹینرز خاص طور پر. TensorFlow میں قدرے مختلف ہینڈلرز ہیں کیونکہ یہ ان کے ساتھ مربوط ہے۔ TensorFlow سرونگ. TensorFlow کے ساتھ ایک انفرنس اسکرپٹ کے لیے، آپ کے پاس دو ہیں۔ ماڈل ہینڈلرز: input_handler اور output_handler۔ ایک بار پھر، ان کا وہی پری پروسیسنگ اور پوسٹ پروسیسنگ مقصد ہے جس کے ساتھ آپ کام کر سکتے ہیں، لیکن ان کے ساتھ ضم کرنے کے لیے انہیں قدرے مختلف طریقے سے ترتیب دیا گیا ہے۔ TensorFlow سرونگ. PyTorch ماڈلز کے لیے، model_fn ایک لازمی فنکشن ہے جس کا انفرنس اسکرپٹ میں ہونا ضروری ہے۔
ماڈل_ ایف این
یہ وہ فنکشن ہے جسے سب سے پہلے بلایا جاتا ہے جب آپ اپنے سیج میکر اینڈ پوائنٹ کو استعمال کرتے ہیں۔ یہ وہ جگہ ہے جہاں آپ ماڈل کو لوڈ کرنے کے لیے اپنا کوڈ لکھتے ہیں۔ مثال کے طور پر:
فریم ورک اور ماڈل کی قسم پر منحصر ہے، یہ کوڈ تبدیل ہو سکتا ہے، لیکن فنکشن کو ایک ابتدائی ماڈل واپس کرنا چاہیے۔
input_fn
یہ دوسرا فنکشن ہے جسے اس وقت کہا جاتا ہے جب آپ کے اختتامی نقطہ کی درخواست کی جاتی ہے۔ یہ فنکشن تخمینہ کے لیے اختتامی نقطہ پر بھیجے گئے ڈیٹا کو لے جاتا ہے اور اسے پیشین گوئی پیدا کرنے کے لیے ماڈل کے لیے درکار فارمیٹ میں پارس کرتا ہے۔ مثال کے طور پر:
۔ request_body
ماڈل سے تخمینہ پیدا کرنے کے لیے استعمال کیے جانے والے ڈیٹا پر مشتمل ہے اور اسے اس فنکشن میں پارس کیا جاتا ہے تاکہ یہ مطلوبہ فارمیٹ میں ہو۔
predict_fn
یہ تیسرا فنکشن ہے جسے اس وقت کہا جاتا ہے جب آپ کے ماڈل کو طلب کیا جاتا ہے۔ یہ فنکشن پہلے سے پروسیس شدہ ان پٹ ڈیٹا لیتا ہے جس سے واپس کیا گیا ہے۔ input_fn
اور اس سے لوٹا ہوا ماڈل استعمال کرتا ہے۔ model_fn
پیشن گوئی کرنے کے لئے. مثال کے طور پر:
آپ اختیاری طور پر شامل کر سکتے ہیں۔ output_fn
کے آؤٹ پٹ کو پارس کرنے کے لیے predict_fn
اسے کلائنٹ کو واپس کرنے سے پہلے۔ فنکشن دستخط ہے def output_fn(prediction, content_type)
.
اپنے پہلے سے تربیت یافتہ ماڈل کو SageMaker میں منتقل کریں۔
اپنی تربیت یافتہ ماڈل فائل اور انفرنس اسکرپٹ حاصل کرنے کے بعد، آپ کو ان فائلوں کو فولڈر میں درج ذیل کے طور پر رکھنا ہوگا:
اس فولڈر کے ڈھانچے میں آپ کے ماڈل اور انفرنس اسکرپٹ کے تیار اور محفوظ ہونے کے بعد، آپ کا ماڈل سیج میکر پر تعیناتی کے لیے تیار ہے۔ درج ذیل کوڈ دیکھیں:
اپنے اختتامی نقطہ کی تعیناتی کے بعد، کسی بھی وسائل کو صاف کرنا یقینی بنائیں جو آپ SageMaker کنسول کے ذریعے یا اس کے ذریعے استعمال نہیں کریں گے۔ ڈیلیٹ_اینڈ پوائنٹ Boto3 API کال۔
نتیجہ
سیج میکر مائیگریشن ٹول کٹ پروجیکٹ کا مقصد ڈیٹا سائنسدانوں کے لیے اپنے ماڈلز کو سیج میکر پر بھیجنا آسان بنانا ہے تاکہ کلاؤڈ بیسڈ انفرنس سے فائدہ اٹھایا جا سکے۔ ذخیرہ کاری جاری رکھے گی اور کام کے بوجھ کو SageMaker میں منتقل کرنے کے لیے مزید آپشنز کی مدد کرے گی۔ کوڈ اوپن سورس ہے اور ہم پل کی درخواستوں اور مسائل کے ذریعے کمیونٹی کے تعاون کا خیرمقدم کرتے ہیں۔
دیکھو GitHub ذخیرہ سیج میکر مائیگریشن ٹول کٹ کو استعمال کرنے کے بارے میں مزید دریافت کرنے کے لیے، اور پروجیکٹ میں شامل کرنے کے لیے مثالیں یا فیچر کی درخواستیں بھی دینے کے لیے آزاد محسوس کریں!
مصنفین کے بارے میں
کریٹ تھڈاکا ایک ایم ایل سلوشنز آرکیٹیکٹ ہے جو ایمیزون سیج میکر سروس SA ٹیم میں کام کر رہا ہے۔ AWS میں شامل ہونے سے پہلے، کریٹ نے ابتدائی مرحلے کے AI سٹارٹ اپس میں کام کرنے میں وقت گزارا جس کے بعد کچھ وقت AI ریسرچ، MLOps اور تکنیکی قیادت میں مختلف کرداروں میں مشاورت میں گزارا۔
رام ویگیراجو سیج میکر سروس ٹیم کے ساتھ ایم ایل آرکیٹیکٹ ہے۔ وہ ایمیزون سیج میکر پر صارفین کو ان کے AI/ML حل بنانے اور بہتر بنانے میں مدد کرنے پر توجہ مرکوز کرتا ہے۔ اپنے فارغ وقت میں، وہ سفر اور لکھنے سے محبت کرتا ہے.
- AI
- ai آرٹ
- AI آرٹ جنریٹر
- عی روبوٹ
- ایمیزون سیج میکر
- مصنوعی ذہانت
- مصنوعی ذہانت کا سرٹیفیکیشن
- بینکنگ میں مصنوعی ذہانت
- مصنوعی ذہانت والا روبوٹ
- مصنوعی ذہانت والے روبوٹ
- مصنوعی ذہانت سافٹ ویئر
- AWS مشین لرننگ
- blockchain
- بلاکچین کانفرنس
- coingenius
- بات چیت مصنوعی ذہانت
- crypto کانفرنس ai
- dall-e
- گہری سیکھنے
- گوگل عی
- انٹرمیڈیٹ (200)
- مشین لرننگ
- پلاٹا
- افلاطون اے
- افلاطون ڈیٹا انٹیلی جنس
- افلاطون گیم
- پلیٹو ڈیٹا
- پلیٹو گیمنگ
- پیمانہ ai
- نحو
- زیفیرنیٹ