ایمیزون سیج میکر ملٹی ماڈل اینڈ پوائنٹس (MMEs) SageMaker inference کی مکمل طور پر منظم صلاحیت ہے جو آپ کو ایک ہی اختتامی نقطہ پر ہزاروں ماڈلز کو تعینات کرنے کی اجازت دیتی ہے۔ اس سے پہلے، MMEs نے پہلے سے طے شدہ طور پر ماڈلز کے لیے CPU کمپیوٹنگ پاور مختص کی تھی، ماڈل ٹریفک کے بوجھ سے قطع نظر، استعمال کرتے ہوئے ملٹی ماڈل سرور (MMS) اس کے ماڈل سرور کے طور پر۔ اس پوسٹ میں، ہم ایک ایسے حل پر تبادلہ خیال کرتے ہیں جس میں ایک MME ماڈل کے ٹریفک پیٹرن کی بنیاد پر ہر ماڈل کو تفویض کردہ کمپیوٹ پاور کو متحرک طور پر ایڈجسٹ کر سکتا ہے۔ یہ حل آپ کو MMEs کے بنیادی کمپیوٹ کو زیادہ مؤثر طریقے سے استعمال کرنے اور اخراجات بچانے کے قابل بناتا ہے۔
MMEs اختتامی نقطہ پر آنے والی ٹریفک کی بنیاد پر ماڈلز کو متحرک طور پر لوڈ اور ان لوڈ کرتے ہیں۔ MMS کو بطور ماڈل سرور استعمال کرتے وقت، MMEs ہر ماڈل کے لیے ماڈل ورکرز کی ایک مقررہ تعداد مختص کرتے ہیں۔ مزید معلومات کے لیے رجوع کریں۔ ایمیزون سیج میکر میں ماڈل ہوسٹنگ پیٹرن، حصہ 3: ایمیزون سیج میکر ملٹی ماڈل اینڈ پوائنٹس کے ساتھ ملٹی ماڈل انفرنس کو چلائیں اور بہتر بنائیں.
تاہم، جب آپ کا ٹریفک پیٹرن متغیر ہوتا ہے تو یہ چند مسائل کا باعث بن سکتا ہے۔ فرض کریں کہ آپ کے پاس ایک واحد یا چند ماڈلز ہیں جو بڑی مقدار میں ٹریفک وصول کر رہے ہیں۔ آپ ان ماڈلز کے لیے زیادہ تعداد میں کارکنوں کو مختص کرنے کے لیے MMS کو ترتیب دے سکتے ہیں، لیکن یہ MME کے پیچھے موجود تمام ماڈلز کو تفویض کیا جاتا ہے کیونکہ یہ ایک جامد کنفیگریشن ہے۔ یہ ہارڈ ویئر کمپیوٹ کا استعمال کرنے والے کارکنوں کی ایک بڑی تعداد کی طرف لے جاتا ہے - یہاں تک کہ بیکار ماڈل بھی۔ اگر آپ کارکنوں کی تعداد کے لیے ایک چھوٹی قیمت مقرر کرتے ہیں تو اس کے برعکس مسئلہ ہو سکتا ہے۔ مقبول ماڈلز کے پاس ماڈل سرور کی سطح پر کافی کارکنان نہیں ہوں گے تاکہ ان ماڈلز کے اختتامی نقطہ کے پیچھے کافی ہارڈ ویئر کو مناسب طریقے سے مختص کیا جا سکے۔ اہم مسئلہ یہ ہے کہ اگر آپ کمپیوٹ کی ضروری رقم مختص کرنے کے لیے اپنے ورکرز کو ماڈل سرور کی سطح پر متحرک طور پر پیمانہ نہیں بنا سکتے ہیں تو ٹریفک پیٹرن کو اگنوسٹک رہنا مشکل ہے۔
ہم اس پوسٹ میں جس حل پر بات کرتے ہیں وہ استعمال کرتا ہے۔ DJLSserving ماڈل سرور کے طور پر، جو ان مسائل میں سے کچھ کو کم کرنے میں مدد کر سکتا ہے جن پر ہم نے بحث کی اور فی ماڈل اسکیلنگ کو فعال کر کے MMEs کو ٹریفک پیٹرن کو اجناسٹک بنانے کے قابل بناتا ہے۔
ایم ایم ای فن تعمیر
SageMaker MMEs آپ کو ایک ہی انفرنس اینڈ پوائنٹ کے پیچھے متعدد ماڈلز تعینات کرنے کے قابل بناتا ہے جس میں ایک یا زیادہ مثالیں ہوسکتی ہیں۔ ہر مثال کو اس کی میموری اور CPU/GPU کی گنجائش تک متعدد ماڈلز کو لوڈ اور پیش کرنے کے لیے ڈیزائن کیا گیا ہے۔ اس فن تعمیر کے ساتھ، ایک سافٹ ویئر بطور سروس (ساس) کاروبار ایک سے زیادہ ماڈلز کی میزبانی کی لکیری طور پر بڑھتی ہوئی لاگت کو توڑ سکتا ہے اور ایپلیکیشن اسٹیک میں کہیں اور لاگو کردہ کثیر کرایہ داری ماڈل کے مطابق انفراسٹرکچر کا دوبارہ استعمال حاصل کر سکتا ہے۔ مندرجہ ذیل خاکہ اس فن تعمیر کو واضح کرتا ہے۔
ایک سیج میکر ایم ایم ای متحرک طور پر ماڈلز سے لوڈ کرتا ہے۔ ایمیزون سادہ اسٹوریج سروس (Amazon S3) کی درخواست کرنے پر، تمام ماڈلز کو ڈاؤن لوڈ کرنے کے بجائے جب اختتامی نقطہ پہلی بار بنایا جاتا ہے۔ نتیجتاً، کسی ماڈل کے لیے ابتدائی درخواست میں بعد میں آنے والے انفرنسز کے مقابلے میں زیادہ قیاس میں تاخیر نظر آسکتی ہے، جو کم تاخیر کے ساتھ مکمل ہوتے ہیں۔ اگر ماڈل پہلے ہی کنٹینر پر لوڈ کیا جاتا ہے جب درخواست کی جاتی ہے، تو پھر ڈاؤن لوڈ کا مرحلہ چھوڑ دیا جاتا ہے اور ماڈل کم تاخیر کے ساتھ نتائج کو واپس کرتا ہے۔ مثال کے طور پر، فرض کریں کہ آپ کے پاس ایک ماڈل ہے جو دن میں صرف چند بار استعمال ہوتا ہے۔ یہ خود بخود ڈیمانڈ پر لوڈ ہو جاتا ہے، جبکہ اکثر رسائی حاصل کرنے والے ماڈلز کو میموری میں برقرار رکھا جاتا ہے اور مستقل طور پر کم تاخیر کے ساتھ طلب کیا جاتا ہے۔
ہر MME کے پیچھے ماڈل ہوسٹنگ مثالیں ہیں، جیسا کہ مندرجہ ذیل خاکہ میں دکھایا گیا ہے۔ یہ مثالیں ماڈلز کے ٹریفک پیٹرن کی بنیاد پر میموری میں اور ان سے متعدد ماڈلز کو لوڈ اور بے دخل کرتی ہیں۔
سیج میکر کسی ماڈل کے لیے انفرنس کی درخواستوں کو اس مثال تک پہنچانا جاری رکھتا ہے جہاں ماڈل پہلے ہی اس طرح سے لوڈ ہو کہ درخواستیں کیشڈ ماڈل کاپی سے پیش کی جائیں (مندرجہ ذیل خاکہ دیکھیں، جو کہ پہلی پیشین گوئی کی درخواست کے لیے درخواست کا راستہ دکھاتا ہے بمقابلہ کیش شدہ پیشن گوئی درخواست کا راستہ)۔ تاہم، اگر ماڈل کو درخواست کی بہت سی درخواستیں موصول ہوتی ہیں، اور MME کے لیے اضافی مثالیں موجود ہیں، SageMaker کچھ درخواستوں کو کسی اور مثال کے لیے روٹ کرتا ہے تاکہ اضافہ کو ایڈجسٹ کیا جا سکے۔ SageMaker میں خودکار ماڈل اسکیلنگ کا فائدہ اٹھانے کے لیے، یقینی بنائیں کہ آپ کے پاس موجود ہے۔ مثال کے طور پر آٹو اسکیلنگ سیٹ اپ اضافی مثال کی گنجائش فراہم کرنے کے لیے۔ اختتامی بیڑے میں مزید مثالیں شامل کرنے کے لیے اپنی اینڈ پوائنٹ لیول اسکیلنگ پالیسی کو حسب ضرورت پیرامیٹرز یا درخواست فی منٹ (تجویز کردہ) کے ساتھ ترتیب دیں۔
ماڈل سرور کا جائزہ
ایک ماڈل سرور ایک سافٹ ویئر کا جزو ہے جو مشین لرننگ (ML) ماڈلز کو تعینات کرنے اور پیش کرنے کے لیے رن ٹائم ماحول فراہم کرتا ہے۔ یہ تربیت یافتہ ماڈلز اور کلائنٹ ایپلی کیشنز کے درمیان ایک انٹرفیس کے طور پر کام کرتا ہے جو ان ماڈلز کا استعمال کرتے ہوئے پیشین گوئیاں کرنا چاہتے ہیں۔
ماڈل سرور کا بنیادی مقصد پیداواری نظاموں میں ایم ایل ماڈلز کی آسانی سے انضمام اور موثر تعیناتی کی اجازت دینا ہے۔ ماڈل کو براہ راست کسی ایپلیکیشن یا کسی مخصوص فریم ورک میں سرایت کرنے کے بجائے، ماڈل سرور ایک مرکزی پلیٹ فارم مہیا کرتا ہے جہاں متعدد ماڈلز کو تعینات، منظم اور پیش کیا جا سکتا ہے۔
ماڈل سرورز عام طور پر درج ذیل افعال پیش کرتے ہیں:
- ماڈل لوڈ ہو رہا ہے۔ - سرور تربیت یافتہ ML ماڈلز کو میموری میں لوڈ کرتا ہے، جس سے وہ پیشین گوئیاں پیش کرنے کے لیے تیار ہو جاتے ہیں۔
- انفرنس API - سرور ایک API کو بے نقاب کرتا ہے جو کلائنٹ ایپلی کیشنز کو ان پٹ ڈیٹا بھیجنے اور تعینات ماڈلز سے پیشین گوئیاں وصول کرنے کی اجازت دیتا ہے۔
- سکیلنگ - ماڈل سرورز کو متعدد کلائنٹس کی ہم آہنگی کی درخواستوں کو ہینڈل کرنے کے لیے ڈیزائن کیا گیا ہے۔ وہ متوازی پروسیسنگ کے لیے میکانزم فراہم کرتے ہیں اور وسائل کو مؤثر طریقے سے منظم کرتے ہیں تاکہ اعلی تھرو پٹ اور کم تاخیر کو یقینی بنایا جا سکے۔
- پسدید انجنوں کے ساتھ انضمام - ماڈل سرورز میں بیک اینڈ فریم ورک جیسے ڈیپ اسپیڈ اور فاسٹر ٹرانسفارمر کے ساتھ انضمام ہوتا ہے تاکہ بڑے ماڈلز کو تقسیم کیا جا سکے اور انتہائی بہتر انداز میں چلایا جا سکے۔
DJL فن تعمیر
DJL سرونگ ایک اوپن سورس، اعلیٰ کارکردگی، یونیورسل ماڈل سرور ہے۔ DJL سرونگ کے اوپر بنایا گیا ہے۔ ڈی جے ایل، جاوا پروگرامنگ زبان میں لکھی گئی ایک گہری سیکھنے والی لائبریری۔ یہ ایک گہری سیکھنے کا ماڈل، کئی ماڈلز، یا ورک فلو لے سکتا ہے اور انہیں HTTP اینڈ پوائنٹ کے ذریعے دستیاب کر سکتا ہے۔ DJL Serving PyTorch، TensorFlow، Apache MXNet، ONNX، TensorRT، Hugging Face Transformers، DeepSpeed، FasterTransformer، اور مزید جیسے متعدد فریم ورکس سے ماڈلز کی تعیناتی کی حمایت کرتا ہے۔
DJL سرونگ بہت ساری خصوصیات پیش کرتا ہے جو آپ کو اعلی کارکردگی کے ساتھ اپنے ماڈلز کو تعینات کرنے کی اجازت دیتا ہے:
- استعمال میں آسانی - DJL سرونگ زیادہ تر ماڈلز کو باکس سے باہر پیش کر سکتی ہے۔ بس ماڈل نمونے لائیں، اور DJL سرونگ ان کی میزبانی کر سکتا ہے۔
- ایک سے زیادہ ڈیوائس اور ایکسلریٹر سپورٹ - DJL سرونگ CPU، GPU، اور پر ماڈلز کی تعیناتی کی حمایت کرتا ہے۔ AWS Inferentia.
- کارکردگی - DJL سرونگ تھرو پٹ کو بڑھانے کے لیے ایک ہی JVM میں ملٹی تھریڈڈ انفرنس چلاتا ہے۔
- متحرک بیچنگ - DJL سرونگ تھرو پٹ بڑھانے کے لیے متحرک بیچنگ کو سپورٹ کرتا ہے۔
- آٹو اسکیلنگ - DJL سرونگ ٹریفک بوجھ کی بنیاد پر کارکنوں کو خود بخود اوپر اور نیچے کی پیمائش کرے گا۔
- ملٹی انجن سپورٹ - DJL سرونگ بیک وقت مختلف فریم ورک (جیسے PyTorch اور TensorFlow) کا استعمال کرتے ہوئے ماڈلز کی میزبانی کر سکتا ہے۔
- جوڑا اور ورک فلو ماڈل - DJL سرونگ متعدد ماڈلز پر مشتمل پیچیدہ ورک فلو کی تعیناتی کی حمایت کرتا ہے، اور ورک فلو کے کچھ حصے CPU پر اور حصوں کو GPU پر چلاتا ہے۔ ورک فلو کے اندر ماڈلز مختلف فریم ورک استعمال کر سکتے ہیں۔
خاص طور پر، DJL سرونگ کی آٹو اسکیلنگ کی خصوصیت یہ یقینی بناتی ہے کہ آنے والی ٹریفک کے لیے ماڈلز کی پیمائش مناسب طریقے سے کی جائے۔ ڈیفالٹ کے طور پر، DJL سرونگ ایک ماڈل کے لیے کارکنوں کی زیادہ سے زیادہ تعداد کا تعین کرتی ہے جسے دستیاب ہارڈ ویئر (CPU cores، GPU آلات) کی بنیاد پر سپورٹ کیا جا سکتا ہے۔ آپ ہر ماڈل کے لیے نچلی اور اوپری حدیں مقرر کر سکتے ہیں تاکہ یہ یقینی بنایا جا سکے کہ ٹریفک کی کم از کم سطح ہمیشہ پیش کی جا سکتی ہے، اور یہ کہ ایک ماڈل تمام دستیاب وسائل کو استعمال نہیں کرتا ہے۔
DJL سرونگ استعمال کرتا ہے a Netty بیک اینڈ ورکر تھریڈ پولز کے اوپر فرنٹ اینڈ۔ فرنٹ اینڈ متعدد کے ساتھ ایک ہی نیٹی سیٹ اپ کا استعمال کرتا ہے۔ HttpRequestHandlers. مختلف درخواست ہینڈلرز اس کے لیے مدد فراہم کریں گے۔ انفرنس API, مینجمنٹ API، یا دیگر APIs مختلف پلگ انز سے دستیاب ہیں۔
پسدید کے ارد گرد کی بنیاد پر ہے ورک لوڈ مینیجر (WLM) ماڈیول۔ WLM بیچنگ کے ساتھ ساتھ ہر ماڈل کے لیے متعدد ورکر تھریڈز کا خیال رکھتا ہے اور ان سے روٹنگ کی درخواست کرتا ہے۔ جب ایک سے زیادہ ماڈلز پیش کیے جاتے ہیں، WLM پہلے ہر ماڈل کی قیاس آرائی کی قطار کے سائز کو چیک کرتا ہے۔ اگر قطار کا سائز ماڈل کے بیچ سائز سے دو گنا زیادہ ہے، تو WLM اس ماڈل کو تفویض کردہ کارکنوں کی تعداد کو بڑھاتا ہے۔
حل جائزہ
MME کے ساتھ DJL کا نفاذ ڈیفالٹ MMS سیٹ اپ سے مختلف ہے۔ MME کے ساتھ DJL سرونگ کے لیے، ہم مندرجہ ذیل فائلوں کو model.tar.gz فارمیٹ میں کمپریس کرتے ہیں جس کی SageMaker Inference کی توقع ہے:
- model.joblib - اس نفاذ کے لیے، ہم ماڈل میٹا ڈیٹا کو براہ راست ٹربال میں دھکیلتے ہیں۔ اس معاملے میں، ہم ایک کے ساتھ کام کر رہے ہیں۔
.joblib
فائل، تو ہم اس فائل کو اپنے ٹربال میں فراہم کرتے ہیں تاکہ ہمارے انفرنس اسکرپٹ کو پڑھ سکے۔ اگر آرٹفیکٹ بہت بڑا ہے، تو آپ اسے Amazon S3 پر بھی دھکیل سکتے ہیں اور سرونگ کنفیگریشن میں اس کی طرف اشارہ کر سکتے ہیں جسے آپ DJL کے لیے بیان کرتے ہیں۔ - serving.properties - یہاں آپ سرور سے متعلق کسی بھی ماڈل کو ترتیب دے سکتے ہیں۔ ماحولیاتی تغیرات. یہاں DJL کی طاقت یہ ہے کہ آپ ترتیب دے سکتے ہیں۔
minWorkers
اورmaxWorkers
ہر ماڈل ٹربال کے لئے. یہ ہر ماڈل کو ماڈل سرور کی سطح پر اوپر اور نیچے کی پیمائش کرنے کی اجازت دیتا ہے۔ مثال کے طور پر، اگر ایک واحد ماڈل ایم ایم ای کے لیے زیادہ تر ٹریفک حاصل کر رہا ہے، تو ماڈل سرور کارکنوں کو متحرک طور پر بڑھا دے گا۔ اس مثال میں، ہم ان متغیرات کو کنفیگر نہیں کرتے ہیں اور DJL کو ہمارے ٹریفک پیٹرن کے لحاظ سے کارکنوں کی ضروری تعداد کا تعین کرنے دیتے ہیں۔ - model.py - یہ کسی بھی حسب ضرورت پری پروسیسنگ یا پوسٹ پروسیسنگ کے لیے انفرنس اسکرپٹ ہے جسے آپ لاگو کرنا چاہتے ہیں۔ model.py توقع کرتا ہے کہ آپ کی منطق کو بطور ڈیفالٹ ہینڈل طریقہ میں سمیٹ لیا جائے گا۔
- requirements.txt (اختیاری) - پہلے سے طے شدہ طور پر، DJL PyTorch کے ساتھ انسٹال ہوتا ہے، لیکن آپ کو کوئی بھی اضافی انحصار یہاں دھکیلا جا سکتا ہے۔
اس مثال کے لیے، ہم نمونہ SKLearn ماڈل لے کر MME کے ساتھ DJL کی طاقت کو ظاہر کرتے ہیں۔ ہم اس ماڈل کے ساتھ ایک تربیتی کام چلاتے ہیں اور پھر اپنے MME کی پشت پناہی کے لیے اس ماڈل کے نمونے کی 1,000 کاپیاں بناتے ہیں۔ اس کے بعد ہم یہ ظاہر کرتے ہیں کہ کس طرح DJL متحرک طور پر کسی بھی قسم کے ٹریفک پیٹرن کو سنبھالنے کے لیے پیمانہ بنا سکتا ہے جو آپ کے MME کو موصول ہو سکتا ہے۔ اس میں تمام ماڈلز میں ٹریفک کی یکساں تقسیم یا ٹریفک کی اکثریت حاصل کرنے والے چند مقبول ماڈلز بھی شامل ہو سکتے ہیں۔ آپ کو درج ذیل میں تمام کوڈ مل سکتے ہیں۔ GitHub repo.
شرائط
اس مثال کے لیے، ہم conda_python3 کرنل اور ml.c5.xlarge مثال کے ساتھ SageMaker نوٹ بک مثال استعمال کرتے ہیں۔ لوڈ ٹیسٹ کرنے کے لیے، آپ استعمال کر سکتے ہیں۔ ایمیزون لچکدار کمپیوٹ کلاؤڈ (ایمیزون EC2) مثال یا اس سے بڑی سیج میکر نوٹ بک مثال۔ اس مثال میں، ہم ایک ہزار سے زیادہ ٹرانزیکشنز فی سیکنڈ (TPS) تک پیمانہ کرتے ہیں، اس لیے ہم ایک بھاری EC2 مثال جیسے کہ ml.c5.18xlarge پر جانچ کرنے کی تجویز کرتے ہیں تاکہ آپ کے ساتھ کام کرنے کے لیے زیادہ کمپیوٹ ہو۔
ایک ماڈل آرٹفیکٹ بنائیں
ہمیں سب سے پہلے اپنا ماڈل آرٹفیکٹ اور ڈیٹا بنانے کی ضرورت ہے جو ہم اس مثال میں استعمال کرتے ہیں۔ اس معاملے کے لیے، ہم NumPy کے ساتھ کچھ مصنوعی ڈیٹا تیار کرتے ہیں اور درج ذیل کوڈ کے ٹکڑوں کے ساتھ SKLearn لکیری ریگریشن ماڈل کا استعمال کرتے ہوئے ٹرین کرتے ہیں:
پچھلے کوڈ کو چلانے کے بعد، آپ کے پاس ہونا چاہیے۔ model.joblib
آپ کے مقامی ماحول میں بنائی گئی فائل۔
DJL Docker امیج کو کھینچیں۔
ڈوکر امیج djl-inference:0.23.0-cpu-full-v1.0 اس مثال میں استعمال ہونے والا ہمارا DJL سرونگ کنٹینر ہے۔ آپ اپنے علاقے کے لحاظ سے درج ذیل URL کو ایڈجسٹ کر سکتے ہیں:
inference_image_uri = "474422712127.dkr.ecr.us-east-1.amazonaws.com/djl-serving-cpu:latest"
اختیاری طور پر، آپ اس تصویر کو بیس امیج کے طور پر بھی استعمال کر سکتے ہیں اور اپنی ڈوکر امیج کو آن بنانے کے لیے اسے بڑھا سکتے ہیں۔ ایمیزون لچکدار کنٹینر رجسٹری (ایمیزون ای سی آر) کسی دوسرے انحصار کے ساتھ جس کی آپ کو ضرورت ہے۔
ماڈل فائل بنائیں
سب سے پہلے، ہم نامی ایک فائل بناتے ہیں۔ serving.properties
. یہ DJLServing کو Python انجن استعمال کرنے کی ہدایت کرتا ہے۔ ہم اس کی بھی تعریف کرتے ہیں۔ max_idle_time
ایک کارکن کا 600 سیکنڈ ہونا۔ یہ اس بات کو یقینی بناتا ہے کہ ہم فی ماڈل کارکنوں کی تعداد کو کم کرنے میں زیادہ وقت لگائیں۔ ہم ایڈجسٹ نہیں کرتے minWorkers
اور maxWorkers
جس کی ہم وضاحت کر سکتے ہیں اور ہم DJL کو متحرک طور پر ہر ماڈل کو موصول ہونے والی ٹریفک کے لحاظ سے درکار کارکنوں کی تعداد کا حساب دینے دیتے ہیں۔ serving.properties کو مندرجہ ذیل دکھایا گیا ہے۔ ترتیب کے اختیارات کی مکمل فہرست دیکھنے کے لیے، رجوع کریں۔ انجن کنفیگریشن.
اگلا، ہم اپنی model.py فائل بناتے ہیں، جو ماڈل لوڈنگ اور انفرنس منطق کی وضاحت کرتی ہے۔ MMEs کے لیے، ہر model.py فائل ماڈل کے لیے مخصوص ہے۔ ماڈلز کو ان کے اپنے راستوں میں ماڈل اسٹور کے تحت محفوظ کیا جاتا ہے (عام طور پر /opt/ml/model/
)۔ ماڈلز کو لوڈ کرتے وقت، وہ ان کی اپنی ڈائرکٹری میں ماڈل سٹور کے راستے کے نیچے لوڈ کیے جائیں گے۔ اس ڈیمو میں مکمل model.py مثال میں دیکھی جا سکتی ہے۔ GitHub repo.
ہم بناتے ہیں a model.tar.gz
فائل جس میں ہمارا ماڈل شامل ہے (model.joblib
), model.py
، اور serving.properties
:
مظاہرے کے مقاصد کے لیے، ہم اس کی 1,000 کاپیاں بناتے ہیں۔ model.tar.gz
فائل کی میزبانی کرنے والے ماڈلز کی بڑی تعداد کی نمائندگی کرنے کے لئے۔ پیداوار میں، آپ کو ایک بنانے کی ضرورت ہے model.tar.gz
آپ کے ہر ماڈل کے لیے فائل۔
آخر میں، ہم ان ماڈلز کو Amazon S3 پر اپ لوڈ کرتے ہیں۔
سیج میکر ماڈل بنائیں
اب ہم ایک بناتے ہیں۔ سیج میکر ماڈل. SageMaker ماڈل بنانے کے لیے ہم پہلے بیان کردہ ECR امیج اور پچھلے مرحلے سے ماڈل آرٹفیکٹ کا استعمال کرتے ہیں۔ ماڈل سیٹ اپ میں، ہم موڈ کو ملٹی ماڈل کے طور پر تشکیل دیتے ہیں۔ یہ DJLServing کو بتاتا ہے کہ ہم ایک MME بنا رہے ہیں۔
سیج میکر اینڈ پوائنٹ بنائیں
اس ڈیمو میں، ہم 20 ml.c5d.18x بڑی مثالیں استعمال کرتے ہیں تاکہ ہزاروں کی حد میں TPS کی پیمائش کی جاسکے۔ اس بات کو یقینی بنائیں کہ آپ جس TPS کو ہدف بنا رہے ہیں اسے حاصل کرنے کے لیے، اگر ضروری ہو تو اپنی مثال کی قسم پر حد میں اضافہ کریں۔
لوڈ ٹیسٹنگ
لکھنے کے وقت، سیج میکر ان ہاؤس لوڈ ٹیسٹنگ ٹول Amazon SageMaker Inference Recommender مقامی طور پر MMEs کے لیے ٹیسٹنگ کی حمایت نہیں کرتا ہے۔ لہذا، ہم اوپن سورس Python ٹول استعمال کرتے ہیں۔ ٹڈڈی. لوکسٹ سیٹ اپ کرنے کے لیے سیدھا ہے اور ٹی پی ایس اور اینڈ ٹو اینڈ لیٹینسی جیسے میٹرکس کو ٹریک کر سکتا ہے۔ سیج میکر کے ساتھ اسے کیسے ترتیب دیا جائے اس کی مکمل تفہیم کے لیے، دیکھیں ایمیزون سیج میکر ریئل ٹائم انفرنس اینڈ پوائنٹس کو لوڈ کرنے کے بہترین طریقے.
اس استعمال کے معاملے میں، ہمارے پاس تین مختلف ٹریفک پیٹرن ہیں جنہیں ہم MMEs کے ساتھ نقل کرنا چاہتے ہیں، لہذا ہمارے پاس مندرجہ ذیل تین Python اسکرپٹس ہیں جو ہر پیٹرن کے ساتھ ہم آہنگ ہیں۔ یہاں ہمارا مقصد یہ ثابت کرنا ہے کہ ہمارا ٹریفک پیٹرن کچھ بھی ہو، ہم وہی ہدف TPS حاصل کر سکتے ہیں اور مناسب طریقے سے پیمانہ حاصل کر سکتے ہیں۔
ہم اپنے ماڈلز کے مختلف حصوں میں ٹریفک تفویض کرنے کے لیے اپنی Locust اسکرپٹ میں ایک وزن کی وضاحت کر سکتے ہیں۔ مثال کے طور پر، ہمارے سنگل ہاٹ ماڈل کے ساتھ، ہم مندرجہ ذیل دو طریقے نافذ کرتے ہیں:
اس کے بعد ہم ہر طریقہ کو ایک خاص وزن تفویض کر سکتے ہیں، جو کہ اس وقت ہوتا ہے جب ایک مخصوص طریقہ ٹریفک کا ایک مخصوص فیصد وصول کرتا ہے:
20 ml.c5d.18x بڑی مثالوں کے لیے، ہم مندرجہ ذیل انوکیشن میٹرکس کو دیکھتے ہیں ایمیزون کلاؤڈ واچ تسلی. یہ اقدار ٹریفک کے تینوں نمونوں میں کافی حد تک مطابقت رکھتی ہیں۔ سیج میکر ریئل ٹائم انفرنس اور ایم ایم ای کے لیے کلاؤڈ واچ میٹرکس کو بہتر طور پر سمجھنے کے لیے، دیکھیں سیج میکر اینڈ پوائنٹ انوکیشن میٹرکس.
آپ ٹڈی کے باقی اسکرپٹ کو میں تلاش کر سکتے ہیں۔ locust-utils ڈائریکٹری GitHub ذخیرے میں۔
خلاصہ
اس پوسٹ میں، ہم نے بحث کی کہ کس طرح ایک MME ماڈل کے ٹریفک پیٹرن کی بنیاد پر ہر ماڈل کو تفویض کردہ کمپیوٹ پاور کو متحرک طور پر ایڈجسٹ کر سکتا ہے۔ یہ نئی لانچ کردہ خصوصیت تمام AWS علاقوں میں دستیاب ہے جہاں SageMaker دستیاب ہے۔ نوٹ کریں کہ اعلان کے وقت، صرف CPU مثالوں کی حمایت کی جاتی ہے۔ مزید جاننے کے لیے رجوع کریں۔ تعاون یافتہ الگورتھم، فریم ورک، اور مثالیں۔.
مصنفین کے بارے میں
رام ویگیراجو سیج میکر سروس ٹیم کے ساتھ ایم ایل آرکیٹیکٹ ہے۔ وہ ایمیزون سیج میکر پر صارفین کو ان کے AI/ML حل بنانے اور بہتر بنانے میں مدد کرنے پر توجہ مرکوز کرتا ہے۔ اپنے فارغ وقت میں، وہ سفر اور لکھنے سے محبت کرتا ہے.
چنگ وی لی ایمیزون ویب سروسز میں مشین لرننگ کا ماہر ہے۔ انہوں نے پی ایچ ڈی کی ڈگری حاصل کی۔ آپریشنز ریسرچ میں جب اس نے اپنے مشیر کے ریسرچ گرانٹ اکاؤنٹ کو توڑا اور نوبل انعام دینے میں ناکام رہے جس کا اس نے وعدہ کیا تھا۔ فی الحال وہ مالیاتی خدمات اور انشورنس انڈسٹری میں صارفین کو AWS پر مشین لرننگ سلوشنز بنانے میں مدد کرتا ہے۔ اپنے فارغ وقت میں وہ پڑھنا اور پڑھانا پسند کرتے ہیں۔
جیمز وو AWS میں ایک سینئر AI/ML ماہر حل آرکیٹیکٹ ہے۔ AI/ML سلوشنز کو ڈیزائن اور بنانے میں صارفین کی مدد کرنا۔ جیمز کا کام ایم ایل کے استعمال کے کیسز کی ایک وسیع رینج پر محیط ہے، جس میں کمپیوٹر ویژن، گہری سیکھنے، اور پورے انٹرپرائز میں ایم ایل کی پیمائش میں بنیادی دلچسپی ہے۔ AWS میں شامل ہونے سے پہلے، جیمز 10 سال سے زائد عرصے تک ایک معمار، ڈویلپر، اور ٹیکنالوجی لیڈر تھے، جس میں 6 سال انجینئرنگ اور 4 سال مارکیٹنگ اور اشتہاری صنعتوں میں شامل تھے۔
سوربھ تریکنڈے Amazon SageMaker Inference کے لیے ایک سینئر پروڈکٹ مینیجر ہے۔ وہ صارفین کے ساتھ کام کرنے کا شوق رکھتا ہے اور مشین لرننگ کو جمہوری بنانے کے مقصد سے حوصلہ افزائی کرتا ہے۔ وہ پیچیدہ ایم ایل ایپلی کیشنز، ملٹی ٹیننٹ ایم ایل ماڈلز، لاگت کی اصلاح، اور ڈیپ لرننگ ماڈلز کی تعیناتی کو مزید قابل رسائی بنانے سے متعلق بنیادی چیلنجوں پر توجہ مرکوز کرتا ہے۔ اپنے فارغ وقت میں، سوربھ کو پیدل سفر کرنا، اختراعی ٹیکنالوجیز کے بارے میں سیکھنا، TechCrunch کی پیروی کرنا اور اپنے خاندان کے ساتھ وقت گزارنا پسند ہے۔
سو ڈینگ SageMaker ٹیم کے ساتھ سافٹ ویئر انجینئر مینیجر ہے۔ وہ صارفین کو ایمیزون سیج میکر پر ان کے AI/ML تخمینے کے تجربے کو بنانے اور بہتر بنانے میں مدد کرنے پر توجہ مرکوز کرتا ہے۔ اپنے فارغ وقت میں، وہ سفر اور سنو بورڈنگ سے محبت کرتا ہے.
سدھارتھ وینکٹیشن اے ڈبلیو ایس ڈیپ لرننگ میں سافٹ ویئر انجینئر ہے۔ وہ فی الحال بڑے ماڈل کے تخمینے کے حل کی تعمیر پر توجہ مرکوز کرتا ہے۔ AWS سے پہلے اس نے Amazon Grocery org میں دنیا بھر کے صارفین کے لیے ادائیگی کی نئی خصوصیات بنانے میں کام کیا۔ کام سے باہر، وہ اسکیئنگ، باہر، اور کھیل دیکھنے سے لطف اندوز ہوتا ہے۔
روہت نلامادی AWS میں سافٹ ویئر ڈویلپمنٹ انجینئر ہے۔ وہ GPUs پر گہرے سیکھنے کے کام کے بوجھ کو بہتر بنانے، اعلی کارکردگی کے ایم ایل کا اندازہ لگانے اور حل پیش کرنے پر کام کرتا ہے۔ اس سے پہلے، اس نے ایمیزون F3 کاروبار کے لیے AWS پر مبنی مائیکرو سروسز بنانے پر کام کیا۔ کام سے باہر وہ کھیل کود اور دیکھ کر لطف اندوز ہوتا ہے۔
- SEO سے چلنے والا مواد اور PR کی تقسیم۔ آج ہی بڑھا دیں۔
- پلیٹو ڈیٹا ڈاٹ نیٹ ورک ورٹیکل جنریٹو اے آئی۔ اپنے آپ کو بااختیار بنائیں۔ یہاں تک رسائی حاصل کریں۔
- پلیٹوآئ اسٹریم۔ ویب 3 انٹیلی جنس۔ علم میں اضافہ۔ یہاں تک رسائی حاصل کریں۔
- پلیٹو ای ایس جی۔ کاربن، کلین ٹیک، توانائی ، ماحولیات، شمسی، ویسٹ مینجمنٹ یہاں تک رسائی حاصل کریں۔
- پلیٹو ہیلتھ۔ بائیوٹیک اینڈ کلینیکل ٹرائلز انٹیلی جنس۔ یہاں تک رسائی حاصل کریں۔
- ماخذ: https://aws.amazon.com/blogs/machine-learning/run-ml-inference-on-unplanned-and-spiky-traffic-using-amazon-sagemaker-multi-model-endpoints/
- : ہے
- :کہاں
- $UP
- 000
- 1
- 10
- 100
- 116
- 118
- 12
- 16
- 17
- 20
- 23
- 31
- 600
- 7
- 9
- a
- ہمارے بارے میں
- مسرع
- رسائی
- قابل رسائی
- ایڈجسٹ کریں
- اکاؤنٹ
- حاصل
- کے پار
- کام کرتا ہے
- شامل کریں
- ایڈیشنل
- فائدہ
- اشتہار.
- کے بعد
- AI / ML
- یلگوردمز
- سیدھ کریں
- تمام
- مختص
- مختص
- کی اجازت
- کی اجازت دیتا ہے
- ساتھ
- پہلے ہی
- بھی
- ہمیشہ
- ایمیزون
- ایمیزون EC2
- ایمیزون سیج میکر
- ایمیزون ویب سروسز
- رقم
- an
- اور
- اعلان
- ایک اور
- کوئی بھی
- اپاچی
- اے پی آئی
- APIs
- درخواست
- ایپلی کیشنز
- اطلاقی
- مناسب طریقے سے
- فن تعمیر
- کیا
- ارد گرد
- مصنوعی
- AS
- تفویض
- فرض کرو
- At
- آٹو
- آٹومیٹڈ
- خود کار طریقے سے
- دستیاب
- AWS
- واپس
- پسدید
- بیس
- کی بنیاد پر
- بیچنے والا
- BE
- کیونکہ
- پیچھے
- بہتر
- کے درمیان
- جسم
- بڑھانے کے
- حد
- باکس
- توڑ
- لانے
- توڑ دیا
- تعمیر
- عمارت
- تعمیر
- کاروبار
- لیکن
- by
- کہا جاتا ہے
- کر سکتے ہیں
- صلاحیت
- اہلیت
- پرواہ
- کیس
- مقدمات
- سیل
- مرکزی
- کچھ
- چیلنجوں
- چیک
- طبقے
- کلائنٹ
- کلائنٹس
- کوڈ
- آتا ہے
- مکمل
- مکمل
- پیچیدہ
- جزو
- پر مشتمل
- کمپیوٹنگ
- کمپیوٹر
- کمپیوٹر ویژن
- کمپیوٹنگ
- کمپیوٹنگ طاقت
- سمورتی
- ترتیب
- متواتر
- مسلسل
- کنسول
- بسم
- پر مشتمل ہے
- کنٹینر
- سیاق و سباق
- جاری ہے
- کور
- قیمت
- اخراجات
- کا احاطہ کرتا ہے
- تخلیق
- بنائی
- تخلیق
- اس وقت
- اپنی مرضی کے
- گاہکوں
- اعداد و شمار
- دن
- گہری
- گہری سیکھنے
- پہلے سے طے شدہ
- وضاحت
- کی وضاحت
- وضاحت کرتا ہے
- نجات
- ڈیمانڈ
- ڈیمو
- جمہوری بنانا
- انحصار
- منحصر ہے
- دکھایا گیا ہے
- تعیناتی
- تعینات
- تعینات
- تعیناتی
- ڈیزائن
- ڈیزائن
- اس بات کا تعین
- یہ تعین
- ڈیولپر
- ترقی
- آلہ
- کے الات
- آریھ
- مختلف
- مشکل
- براہ راست
- ڈائرکٹری
- بات چیت
- بات چیت
- تقسیم
- میں Docker
- نہیں کرتا
- نہیں
- نیچے
- ڈاؤن لوڈ، اتارنا
- ڈاؤن لوڈ کرنے
- متحرک
- متحرک طور پر
- ہر ایک
- اس سے قبل
- ہنر
- مؤثر طریقے سے
- بے سہل
- یا تو
- دوسری جگہوں پر
- سرایت کرنا
- کو چالو کرنے کے
- کے قابل بناتا ہے
- منسلک
- آخر سے آخر تک
- اختتام پوائنٹ
- انجن
- انجینئر
- انجنیئرنگ
- کافی
- کو یقینی بنانے کے
- انٹرپرائز
- ماحولیات
- خرابی
- بھی
- مثال کے طور پر
- رعایت
- توقع
- امید ہے
- تجربہ
- توسیع
- چہرہ
- ناکام
- کافی
- خاندان
- نمایاں کریں
- خصوصیات
- چند
- فائل
- فائلوں
- مالی
- مالی خدمات
- مل
- پہلا
- مقرر
- فلیٹ
- توجہ مرکوز
- کے بعد
- مندرجہ ذیل ہے
- کے لئے
- فارمیٹ
- فریم ورک
- فریم ورک
- اکثر
- سے
- فرنٹ اینڈ
- مکمل
- مکمل طور پر
- افعال
- پیدا
- حاصل
- ملتا
- GitHub کے
- مقصد
- GPU
- GPUs
- عطا
- زیادہ سے زیادہ
- ہینڈل
- ہو
- ہارڈ ویئر
- ہے
- he
- مدد
- مدد
- مدد کرتا ہے
- یہاں
- ہائی
- اعلی
- انتہائی
- ان
- میزبان
- میزبانی کی
- ہوسٹنگ
- HOT
- کس طرح
- کیسے
- تاہم
- HTML
- HTTP
- HTTPS
- ناقابل یقین
- if
- وضاحت کرتا ہے
- تصویر
- پر عملدرآمد
- نفاذ
- درآمد
- in
- شامل
- شامل ہیں
- سمیت
- موصولہ
- اضافہ
- اضافہ
- صنعتوں
- صنعت
- معلومات
- انفراسٹرکچر
- ابتدائی
- جدید
- جدید ٹیکنالوجیز
- ان پٹ
- نصب
- مثال کے طور پر
- کے بجائے
- انشورنس
- انضمام
- انضمام
- دلچسپی
- انٹرفیس
- میں
- درخواست کی
- مسئلہ
- مسائل
- IT
- میں
- جیمز
- اعلی درجے کا Java
- ایوب
- شمولیت
- فوٹو
- صرف
- زبان
- بڑے
- بڑے
- تاخیر
- تازہ ترین
- شروع
- قیادت
- رہنما
- لیڈز
- جانیں
- سیکھنے
- دو
- سطح
- لائبریری
- کی طرح
- پسند
- LIMIT
- لکیری
- لسٹ
- لوڈ
- لوڈ کر رہا ہے
- بوجھ
- مقامی
- منطق
- اب
- سے محبت کرتا ہے
- لو
- کم
- مشین
- مشین لرننگ
- مین
- اکثریت
- بنا
- بناتا ہے
- بنانا
- میں کامیاب
- مینیجر
- مینیجنگ
- بہت سے
- مارکیٹنگ
- مارکیٹنگ اور اشتہار بازی
- زیادہ سے زیادہ
- مئی..
- نظام
- یاد داشت
- میٹا ڈیٹا
- طریقہ
- طریقوں
- پیمائش کا معیار
- مائکروسافٹ
- شاید
- کم سے کم
- منٹ
- تخفیف کریں
- ML
- موڈ
- ماڈل
- ماڈل
- ماڈیول
- زیادہ
- سب سے زیادہ
- حوصلہ افزائی
- ایک سے زیادہ
- نام
- natively
- ضروری
- ضرورت ہے
- ضرورت
- نئی
- نیا
- نوبل انعام
- کوئی بھی نہیں
- براہ مہربانی نوٹ کریں
- نوٹ بک
- اب
- تعداد
- عجیب
- of
- پیش کرتے ہیں
- تجویز
- on
- ایک
- صرف
- کھول
- اوپن سورس
- آپریشنز
- اس کے برعکس
- اصلاح
- کی اصلاح کریں
- اصلاح
- اصلاح
- آپشنز کے بھی
- or
- دیگر
- ہمارے
- باہر
- باہر
- پیداوار
- باہر
- پر
- خود
- متوازی
- پیرامیٹرز
- حصہ
- خاص طور پر
- حصے
- جذباتی
- راستہ
- راستے
- پاٹرن
- پیٹرن
- ادائیگی
- فی
- فیصد
- انجام دیں
- کارکردگی
- پائپ
- پلیٹ فارم
- پلاٹا
- افلاطون ڈیٹا انٹیلی جنس
- پلیٹو ڈیٹا
- کھیل
- پلگ ان
- پوائنٹ
- پالیسی
- پول
- مقبول
- پوسٹ
- طاقت
- طریقوں
- پہلے
- کی پیشن گوئی
- پیشن گوئی
- پچھلا
- پہلے
- پرائمری
- پہلے
- انعام
- مسئلہ
- عمل
- پروسیسنگ
- مصنوعات
- پروڈکٹ مینیجر
- پیداوار
- پروگرامنگ
- وعدہ
- مناسب طریقے سے
- خصوصیات
- ثابت کریں
- فراہم
- فراہم کرتا ہے
- پراجیکٹ
- مقصد
- مقاصد
- پش
- دھکیل دیا
- ازگر
- pytorch
- بے ترتیب
- رینج
- پڑھیں
- پڑھنا
- تیار
- اصل وقت
- وصول
- موصول
- موصول
- وصول کرنا
- سفارش کی
- کا حوالہ دیتے ہیں
- بے شک
- خطے
- خطوں
- متعلقہ
- رہے
- کی جگہ
- ذخیرہ
- کی نمائندگی
- درخواست
- درخواستوں
- ضروریات
- تحقیق
- وسائل
- جواب
- باقی
- نتیجہ
- واپسی
- دوبارہ استعمال
- روٹ
- راستے
- روٹنگ
- رن
- چلتا ہے
- رن ٹائم
- ساس
- sagemaker
- سیج میکر کا اندازہ
- اسی
- نمونہ
- محفوظ کریں
- کا کہنا ہے کہ
- پیمانے
- چھوٹا ہوا
- ترازو
- سکیلنگ
- اسکرپٹ
- سکرپٹ
- دوسری
- سیکنڈ
- دیکھنا
- دیکھا
- SELF
- بھیجنے
- سینئر
- خدمت
- خدمت کی
- سرور
- سرورز
- سروس
- سروسز
- خدمت
- مقرر
- سیٹ
- سیٹ اپ
- کئی
- ہونا چاہئے
- نمائش
- دکھایا گیا
- شوز
- سادہ
- نقلی
- بیک وقت
- ایک
- واحد
- سائز
- چھوٹے
- ٹکڑا
- So
- سافٹ ویئر کی
- ایک خدمت کے طور پر سافٹ ویئر
- سوفٹ ویئر کی نشوونما
- سافٹ ویئر انجنیئر
- حل
- حل
- کچھ
- ماخذ
- ماہر
- مخصوص
- خرچ کرنا۔
- تقسیم
- اسپورٹس
- ڈھیر لگانا
- مستحکم
- مرحلہ
- ذخیرہ
- ذخیرہ
- ذخیرہ
- براہ راست
- بعد میں
- اس طرح
- مشورہ
- حمایت
- تائید
- کی حمایت کرتا ہے
- اس بات کا یقین
- سسٹمز
- لے لو
- لیتا ہے
- لینے
- ہدف
- ھدف بندی
- پڑھانا
- ٹیم
- TechCrunch
- ٹیکنالوجی
- ٹیکنالوجی
- بتاتا ہے
- ٹیسسرور
- ٹیسٹنگ
- ٹیسٹ
- سے
- کہ
- ۔
- ان
- ان
- تو
- وہاں.
- لہذا
- یہ
- وہ
- اس
- ان
- ہزار
- ہزاروں
- تین
- کے ذریعے
- تھرو پٹ
- وقت
- اوقات
- کرنے کے لئے
- بھی
- کے آلے
- سب سے اوپر
- کی طرف
- ٹی پی
- ٹریک
- ٹریفک
- ٹرین
- تربیت یافتہ
- ٹریننگ
- معاملات
- ٹرانسفارمرز
- سفر
- کوشش
- دو
- قسم
- عام طور پر
- کے تحت
- بنیادی
- سمجھ
- افہام و تفہیم
- یونیورسل
- URL
- استعمال کی شرائط
- استعمال کیس
- استعمال کیا جاتا ہے
- استعمال
- کا استعمال کرتے ہوئے
- عام طور پر
- استعمال کرنا۔
- قیمت
- اقدار
- متغیر
- مختلف
- نقطہ نظر
- vs
- چاہتے ہیں
- تھا
- دیکھ
- we
- ویب
- ویب خدمات
- وزن
- کیا
- جب
- جبکہ
- جس
- وسیع
- وسیع رینج
- گے
- ساتھ
- کے اندر
- کام
- کام کیا
- کارکن
- کارکنوں
- کام کا بہاؤ
- کام کے بہاؤ
- کام کر
- کام کرتا ہے
- گا
- تحریری طور پر
- لکھا
- X
- سال
- تم
- اور
- زیفیرنیٹ