ہم نے حال ہی میں ایک نئی صلاحیت متعارف کرائی ہے۔ Amazon SageMaker Python SDK جو ڈیٹا سائنسدانوں کو اپنے ترجیحی انٹیگریٹڈ ڈویلپر ماحول (IDE) میں تحریر کردہ مشین لرننگ (ML) کوڈ اور متعلقہ رن ٹائم انحصار کے ساتھ نوٹ بک چلانے دیتا ہے۔ ایمیزون سیج میکر مقامی طور پر کیے جانے والے تجربات میں کم سے کم کوڈ تبدیلیوں کے ساتھ تربیتی ملازمتیں ڈیٹا سائنس دان عام طور پر ڈیٹا پروسیسنگ اور ٹریننگ ماڈلز میں کسی بھی ایم ایل مسئلے پر کام کرتے ہوئے کئی بار تجربات کرتے ہیں۔ وہ اس ML کوڈ کو چلانا چاہتے ہیں اور استعمال میں آسانی اور کم سے کم کوڈ کی تبدیلی کے ساتھ تجربہ کرنا چاہتے ہیں۔ ایمیزون سیج میکر ماڈل ٹریننگ ڈیٹا سائنسدانوں کو AWS کے کمپیوٹ انفراسٹرکچر پر مکمل طور پر منظم بڑے پیمانے پر تربیتی ملازمتیں چلانے میں مدد کرتا ہے۔ سیج میکر ٹریننگ ڈیٹا سائنسدانوں کو جدید ٹولز جیسے کہ مدد کرتی ہے۔ ایمیزون سیج میکر ڈیبگر اور پروفائلر اپنے بڑے پیمانے پر تربیتی کاموں کو ڈیبگ اور تجزیہ کرنے کے لیے۔
چھوٹے بجٹ، چھوٹی ٹیموں، اور سخت ٹائم لائنز والے صارفین کے لیے، SageMaker پر چلنے کے لیے دوبارہ لکھے گئے کوڈ کی ہر ایک نیا تصور اور لائن انھیں اپنے بنیادی کاموں، یعنی ڈیٹا پروسیسنگ اور ایم ایل ماڈلز کی تربیت کے لیے کم نتیجہ خیز بناتی ہے۔ وہ اپنی پسند کے فریم ورک میں ایک بار کوڈ لکھنا چاہتے ہیں اور SageMaker کی صلاحیتوں کا استعمال کرتے ہوئے اپنی نوٹ بک یا لیپ ٹاپ میں چلنے والے کوڈ سے بڑے پیمانے پر چلنے والے کوڈ تک بغیر کسی رکاوٹ کے آگے بڑھ سکتے ہیں۔
SageMaker Python SDK کی اس نئی صلاحیت کے ساتھ، ڈیٹا سائنسدان اپنے ML کوڈ کو چند منٹوں میں SageMaker ٹریننگ پلیٹ فارم پر بھیج سکتے ہیں۔ آپ کو صرف اپنے ML کوڈ میں کوڈ کی ایک لائن شامل کرنے کی ضرورت ہے، اور SageMaker آپ کے کوڈ کو ڈیٹاسیٹس اور ورک اسپیس کے ماحول کے سیٹ اپ کے ساتھ سمجھتا ہے اور اسے SageMaker ٹریننگ جاب کے طور پر چلاتا ہے۔ اس کے بعد آپ سیج میکر ٹریننگ پلیٹ فارم کی کلیدی صلاحیتوں سے فائدہ اٹھا سکتے ہیں، جیسے ملازمتوں کو آسانی سے سکیل کرنے کی صلاحیت، اور دیگر متعلقہ ٹولز جیسے ڈیبگر اور پروفائلر۔ اس ریلیز میں، آپ اپنے مقامی مشین لرننگ (ML) Python کوڈ کو سنگل نوڈ Amazon SageMaker ٹریننگ جاب یا متعدد متوازی جاب کے طور پر چلا سکتے ہیں۔ تقسیم شدہ تربیتی ملازمتیں (متعدد نوڈس پر) ریموٹ فنکشنز کے ذریعے تعاون یافتہ نہیں ہیں۔
اس پوسٹ میں، ہم آپ کو دکھاتے ہیں کہ مقامی ایم ایل کوڈ کو سیج میکر ٹریننگ جاب کے طور پر چلانے کے لیے اس نئی صلاحیت کو کیسے استعمال کیا جائے۔
حل جائزہ
اب آپ اپنے IDE یا نوٹ بک میں لکھے ہوئے اپنے ML کوڈ کو SageMaker ٹریننگ جاب کے طور پر فنکشن کی تشریح کر کے چلا سکتے ہیں، جو کہ ایک سادہ ڈیکوریٹر کے ساتھ صارف کے کوڈ بیس میں داخلے کے نقطہ کے طور پر کام کرتا ہے۔ درخواست کرنے پر، یہ اہلیت خود بخود آپ کے ML کوڈ سے تمام متعلقہ متغیرات، فنکشنز، پیکجز، ماحولیاتی متغیرات، اور رن ٹائم کے دیگر تقاضوں کا سنیپ شاٹ لیتی ہے، انہیں سیریلائز کرتی ہے، اور انہیں SageMaker ٹریننگ جاب کے طور پر جمع کراتی ہے۔ یہ حال ہی میں اعلان کردہ کے ساتھ ضم ہے۔ پیرامیٹرز کے لیے ڈیفالٹ ویلیوز سیٹ کرنے کے لیے SageMaker Python SDK فیچر. یہ صلاحیت سیج میکر کی تعمیرات کو آسان بناتی ہے جو آپ کو سیج میکر ٹریننگ کا استعمال کرتے ہوئے کوڈ چلانے کے قابل ہونے کے لیے سیکھنے کی ضرورت ہے۔ ڈیٹا سائنسدان اپنے کوڈ کو کسی بھی ترجیحی IDE میں لکھ سکتے ہیں، ڈیبگ کر سکتے ہیں اور اعادہ کر سکتے ہیں (جیسے ایمیزون سیج میکر اسٹوڈیو، نوٹ بک، VS کوڈ، یا PyCharm)۔ تیار ہونے پر، آپ اپنے Python فنکشن کی تشریح کر سکتے ہیں۔ @remote
ڈیکوریٹر اور اسکیل پر سیج میکر کام کے طور پر چلائیں۔
یہ صلاحیت مانوس اوپن سورس ازگر اشیاء کو بطور دلیل اور آؤٹ پٹ لیتی ہے۔ مزید برآں، آپ کو کنٹینر لائف سائیکل مینجمنٹ کو سمجھنے کی ضرورت نہیں ہے اور کم سے کم کنفیگریشن اوور ہیڈز کے ساتھ مختلف کمپیوٹ سیاق و سباق (جیسے مقامی IDE، اسٹوڈیو، یا ٹریننگ جابز) میں اپنے کام کے بوجھ کو آسانی سے چلا سکتے ہیں۔ کسی بھی مقامی کوڈ کو سیج میکر ٹریننگ جاب کے طور پر چلانے کے لیے، یہ صلاحیت ملازمتوں کو چلانے کے لیے درکار کنفیگریشنز کا اندازہ لگاتی ہے، جیسے AWS شناخت اور رسائی کا انتظام (IAM) رول، انکرپشن کلید، اور نیٹ ورک کنفیگریشن، سٹوڈیو یا IDE سیٹنگز سے (جو ہو سکتا ہے پہلے سے طے شدہ ترتیبات) اور انہیں بطور ڈیفالٹ پلیٹ فارم پر منتقل کرتا ہے۔ آپ کے پاس قیاس کنفیگریشن کا استعمال کرتے ہوئے SageMaker کے زیر انتظام انفراسٹرکچر میں اپنے رن ٹائم کو حسب ضرورت بنانے یا ڈیکوریٹر کو دلائل کے طور پر بھیج کر SDK کی سطح پر اوور رائڈ کرنے کی لچک ہے۔
SageMaker Python SDK کی یہ نئی صلاحیت آپ کے ML کوڈ کو موجودہ ورک اسپیس ماحول اور کسی بھی متعلقہ ڈیٹا پروسیسنگ کوڈ اور ڈیٹا سیٹس کو SageMaker ٹریننگ جاب میں تبدیل کر دیتی ہے۔ یہ صلاحیت a کے اندر لپیٹے ہوئے ML کوڈ کی تلاش کرتی ہے۔ @remote
ڈیکوریٹر اور خود بخود اس کا ایک ایسی نوکری میں ترجمہ کرتا ہے جو اسٹوڈیو یا مقامی IDE جیسے PyCharm میں چلتا ہے۔
مندرجہ ذیل حصوں میں، ہم اس نئی صلاحیت کی خصوصیات اور سیج میکر ٹریننگ جابز کے طور پر python کے فنکشنز کو شروع کرنے کے طریقہ پر چلتے ہیں۔
شرائط
اس نئی SageMaker Python SDK کی صلاحیت کو استعمال کرنے اور اس پوسٹ سے وابستہ کوڈ کو چلانے کے لیے، آپ کو درج ذیل شرائط کی ضرورت ہے:
- AWS اکاؤنٹ جس میں آپ کے تمام AWS وسائل شامل ہوں گے۔
- SageMaker تک رسائی کے لیے IAM کا کردار
- اسٹوڈیو یا سیج میکر نوٹ بک مثال یا IDE جیسے PyCharm تک رسائی
اسٹوڈیو اور سیج میکر نوٹ بک سے SDK استعمال کریں۔
آپ اسٹوڈیو سے اس صلاحیت کو ایک نوٹ بک لانچ کرکے اور اپنے کوڈ کو a کے ساتھ لپیٹ کر استعمال کرسکتے ہیں۔ @remote
نوٹ بک کے اندر ڈیکوریٹر۔ آپ کو پہلے درج ذیل کوڈ کا استعمال کرتے ہوئے ریموٹ فنکشن کو درآمد کرنے کی ضرورت ہے۔
from sagemaker.remote_function import remote
جب آپ ڈیکوریٹر فنکشن استعمال کرتے ہیں، تو یہ صلاحیت خود بخود آپ کے کوڈ کے فنکشن کی تشریح کرے گی اور اسے سیج میکر ٹریننگ جاب کے طور پر چلائے گی۔
آپ اس صلاحیت کو SageMaker نوٹ بک مثال سے بھی استعمال کر سکتے ہیں۔ آپ کو پہلے ایک نوٹ بک مثال شروع کرنے کی ضرورت ہے، اس پر Jupyter یا Jupyter Lab کھولیں، اور ایک نوٹ بک لانچ کریں۔ پھر ریموٹ فنکشن کو درآمد کریں جیسا کہ پچھلے کوڈ میں دکھایا گیا ہے اور اپنے کوڈ کو اس کے ساتھ لپیٹیں۔ @remote
ڈیکوریٹر ہم اس پوسٹ میں بعد میں ڈیکوریٹر فنکشن اور متعلقہ سیٹنگز کو استعمال کرنے کے طریقے کی ایک مثال شامل کرتے ہیں۔
اپنے مقامی ماحول سے SDK استعمال کریں۔
آپ اس صلاحیت کو اپنے مقامی IDE سے بھی استعمال کر سکتے ہیں۔ شرط کے طور پر، آپ کے پاس ہونا ضروری ہے۔ AWS کمانڈ لائن انٹرفیس (AWS CLI)، SageMaker Python SDK، اور AWS SDK برائے Python (Boto3) آپ کے مقامی ماحول میں نصب۔ آپ کو ان لائبریریوں کو اپنے کوڈ میں درآمد کرنے، سیج میکر سیشن کو سیٹ کرنے، ترتیبات کی وضاحت کرنے اور اپنے فنکشن کو اس کے ساتھ سجانے کی ضرورت ہے۔ @remote
ڈیکوریٹر درج ذیل مثال کے کوڈ میں، ہم سیج میکر ٹریننگ جاب کے طور پر ایک سادہ تقسیم فنکشن چلاتے ہیں:
import boto3
import sagemaker
from sagemaker.remote_function import remote sm_session = sagemaker.Session(boto_session=boto3.session.Session(region_name="us-west-2"))
settings = dict(
sagemaker_session=sm_session,
role=<IAM_ROLE_NAME>
instance_type="ml.m5.xlarge",
)
@remote(**settings)
def divide(x, y):
return x / y
if __name__ == "__main__":
print(divide(2, 3.0))
جیسا کہ اگلے حصے میں دکھایا گیا ہے، ہم تربیتی ملازمتوں کے طور پر جدید افعال کو چلانے کے لیے اسی طرح کا طریقہ کار استعمال کر سکتے ہیں۔
Python فنکشنز کو SageMaker جابز کے بطور لانچ کریں۔
SageMaker Python SDK کی نئی خصوصیت آپ کو Python فنکشنز کو چلانے کی اجازت دیتی ہے۔ سیج میکر ٹریننگ کی نوکریاں. کوئی بھی Python کوڈ، ML ٹریننگ کوڈ جو ڈیٹا سائنسدانوں نے اپنے ترجیحی مقامی IDEs (PyCharm، VS Code) کا استعمال کرتے ہوئے تیار کیا ہے، SageMaker نوٹ بکس، یا سٹوڈیو نوٹ بکس کو منظم SageMaker جاب کے طور پر لانچ کیا جا سکتا ہے۔
اس صلاحیت کا استعمال کرتے ہوئے ایم ایل ورک لوڈز میں، متعلقہ ڈیٹاسیٹس، انحصار، اور ورک اسپیس کے ماحول کے سیٹ اپ کو ایم ایل کوڈ کا استعمال کرتے ہوئے سیریلائز کیا جاتا ہے اور ہم وقت سازی اور متضاد طور پر سیج میکر جاب کے طور پر چلایا جاتا ہے۔
آپ شامل کرسکتے ہیں a @remote
کسی بھی Python کوڈ کی ڈیکوریٹر تشریح جس میں مقامی ML پروسیسنگ یا ٹریننگ فنکشن شامل ہے تاکہ اسے منظم SageMaker ٹریننگ جاب کے طور پر شروع کیا جا سکے، اس طرح SageMaker کے پیمانے، کارکردگی اور لاگت کے فوائد سے فائدہ اٹھایا جا سکے۔ یہ Python فنکشن کوڈ میں ڈیکوریٹر کو شامل کرکے کم سے کم کوڈ تبدیلیوں کے ساتھ حاصل کیا جا سکتا ہے۔ سجے ہوئے فنکشن کی درخواست ہم وقتی طور پر چلائی جاتی ہے، اور فنکشن رن اس وقت تک انتظار کرتا ہے جب تک SageMaker کام مکمل نہ ہو جائے۔
مندرجہ ذیل مثال میں، ہم استعمال کرتے ہیں @remote
ڈیکوریٹر ml.m5.large مثال کا استعمال کرتے ہوئے ڈیکوریٹر موڈ میں SageMaker جابز شروع کرے گا۔ سیج میکر اس فنکشن کو ایک منظم کام کے طور پر شروع کرنے کے لیے تربیتی ملازمتوں کا استعمال کرتا ہے۔
from sagemaker.remote_function import remote
from numpy as np @remote(instance_type="ml.m5.large")
def matrix_multiply(a, b): return np.matmul(a, b) a = np.array([[1, 0], [0, 1]])
b = np.array([1, 2]) assert matrix_multiply(a, b) == np.array([1,2])
آپ SageMaker جابز، Python پیکجز، اور انحصار شروع کرنے کے لیے ڈیکوریٹر موڈ بھی استعمال کر سکتے ہیں۔ آپ سیج میکر کی تربیتی ملازمتیں شروع کرنے کے لیے ماحولیاتی متغیرات جیسے VPC، سب نیٹس، اور سیکیورٹی گروپس کو شامل کر سکتے ہیں۔ environment.yml
فائل یہ ML انجینئرز اور منتظمین کو ان ماحولیاتی متغیرات کو ترتیب دینے کی اجازت دیتا ہے تاکہ ڈیٹا سائنسدان ایم ایل ماڈل کی تعمیر پر توجہ مرکوز کر سکیں اور تیزی سے اعادہ کر سکیں۔ درج ذیل کوڈ دیکھیں:
from sagemaker.remote_function import remote @remote(instance_type="ml.g4dn.xlarge",dependencies = "./environment.yml")
def train_hf_model(
train_input_path,test_input_path,s3_output_path = None,
*,epochs = 1, train_batch_size = 32, eval_batch_size = 64,
warmup_steps = 500,learning_rate = 5e-5
):
model_name = "distilbert-base-uncased"
model = AutoModelForSequenceClassification.from_pretrained(model_name)
... <TRUCNATED>
return os.path.join(s3_output_path, model_dir), eval_result
آپ استعمال کر سکتے ہیں RemoteExecutor
Python فنکشنز کو SageMaker جابز کے طور پر متضاد طور پر لانچ کرنا۔ ایگزیکیوٹر کام کی حیثیت کو اپ ڈیٹ کرنے کے لیے SageMaker ٹریننگ جابز کو غیر مطابقت پذیر طور پر پول کرتا ہے۔ دی RemoteExecutor
کلاس کا نفاذ ہے۔ concurrent.futures.Executor، جو SageMaker ٹریننگ جابز کو متضاد طور پر جمع کرانے کے لیے استعمال ہوتا ہے۔ درج ذیل کوڈ دیکھیں:
from sagemaker.remote_function import RemoteExecutor def train_hf_model(
train_input_path,test_input_path,s3_output_path = None,
*,epochs = 1, train_batch_size = 32, eval_batch_size = 64,
warmup_steps = 500,learning_rate = 5e-5
):
model_name = "distilbert-base-uncased"
model = AutoModelForSequenceClassification.from_pretrained(model_name)
...<TRUNCATED>
return os.path.join(s3_output_path, model_dir), eval_result with RemoteExecutor(instance_type="ml.g4dn.xlarge", dependencies = './requirements.txt') as e:
future = e.submit(train_hf_model, train_input_path,test_input_path,s3_output_path,
epochs, train_batch_size, eval_batch_size,warmup_steps,learning_rate)
رن ٹائم ماحول کو اپنی مرضی کے مطابق بنائیں
ڈیکوریٹر موڈ اور RemoteExecutor
آپ کو سیج میکر جاب کے لیے رن ٹائم ماحول کی وضاحت اور تخصیص کرنے کی اجازت دیتا ہے۔ رن ٹائم انحصار، بشمول Python پیکجز اور SageMaker جابز کے لیے ماحولیاتی متغیرات، کو رن ٹائم کو اپنی مرضی کے مطابق کرنے کے لیے مخصوص کیا جا سکتا ہے۔ SageMaker کے زیر انتظام کام کے طور پر مقامی Python کوڈ کو چلانے کے لیے، Python پیکیج اور انحصار کو SageMaker کو دستیاب کرانا ضروری ہے۔ ایم ایل انجینئرز یا ڈیٹا سائنس ایڈمنسٹریٹرز نیٹ ورکنگ اور سیکیورٹی کنفیگریشنز جیسے کہ VPC، سب نیٹس، اور سیکیورٹی گروپس کو SageMaker جابز کے لیے کنفیگر کر سکتے ہیں، اس لیے ڈیٹا سائنسدان SageMaker جابز کو لانچ کرتے وقت ان مرکزی طور پر منظم کنفیگریشنز کو استعمال کر سکتے ہیں۔ آپ یا تو استعمال کر سکتے ہیں a requirements.txt
فائل یا اے Conda environment.yaml
فائل.
جب انحصار کی تعریف کی جاتی ہے۔ requirements.txt
، پیکجز کو نوکری کے رن ٹائم میں پائپ کا استعمال کرتے ہوئے انسٹال کیا جائے گا۔ اگر کام کو چلانے کے لیے استعمال ہونے والی تصویر کونڈا ماحول کے ساتھ آتی ہے، تو پیکجز کونڈا ماحول میں نصب کیے جائیں گے جنہیں ملازمتوں کے لیے استعمال کرنے کا اعلان کیا گیا ہے۔ مندرجہ ذیل کوڈ ایک مثال دکھاتا ہے۔ requirements.txt
فائل:
datasets
transformers
torch
scikit-learn
s3fs==0.4.2
sagemaker>=2.148.0
آپ اپنا پاس کر سکتے ہیں۔ Conda environment.yaml
کونڈا ماحول بنانے کے لیے فائل آپ چاہیں گے کہ آپ کا کوڈ ٹریننگ جاب کے دوران چلائے۔ اگر کام کو چلانے کے لیے استعمال ہونے والی تصویر میں کوڈ کو چلانے کے لیے کونڈا ماحول کا اعلان کیا گیا ہے، تو ہم دی گئی تفصیلات کے ساتھ اعلان کردہ کونڈا ماحول کو اپ ڈیٹ کریں گے۔ درج ذیل کوڈ ایک کی مثال ہے۔ Conda environment.yaml
فائل:
name: sagemaker_example
channels: - conda-forge
dependencies: - python=3.10 - pandas - pip: - sagemaker
متبادل طور پر، آپ سیٹ کر سکتے ہیں۔ dependencies=”auto_capture”
SageMaker Python SDK کو فعال کونڈا ماحول میں انسٹال کردہ انحصار کو حاصل کرنے دیں۔ آپ کے لیے ایک فعال کونڈا ماحول ہونا چاہیے۔ auto_capture
کام کرنا. نوٹ کریں کہ اس کے لیے شرائط ہیں۔ auto_capture
کام کرنا؛ ہم تجویز کرتے ہیں کہ آپ اپنے انحصار کو بطور a پاس کریں۔ requirement.txt
or Conda environment.yml
فائل جیسا کہ پچھلے حصے میں بیان کیا گیا ہے۔
مزید تفصیلات کے لئے ملاحظہ کریں اپنے مقامی کوڈ کو سیج میکر ٹریننگ جاب کے طور پر چلائیں۔.
سیج میکر جابز کے لیے کنفیگریشنز
انفراسٹرکچر سے متعلق سیٹنگز کو کنفیگریشن فائل میں آف لوڈ کیا جا سکتا ہے جسے ایڈمن صارفین سیٹ اپ کرنے میں مدد کر سکتے ہیں۔ آپ کو اسے صرف ایک بار ترتیب دینے کی ضرورت ہے۔ بنیادی ڈھانچے کی ترتیبات نیٹ ورک کنفیگریشن، IAM رولز، کا احاطہ کرتی ہیں۔ ایمیزون سادہ اسٹوریج سروس ان پٹ، آؤٹ پٹ ڈیٹا، اور ٹیگز کے لیے (ایمیزون S3) فولڈر۔ کا حوالہ دیتے ہیں SageMaker Python SDK کے ساتھ ڈیفالٹس کو ترتیب دینا اور استعمال کرنا مزید تفصیلات کے لئے.
SchemaVersion: '1.0'
SageMaker:
PythonSDK:
Modules:
RemoteFunction:
Dependencies: path/to/requirements.txt
EnvironmentVariables: {"EnvVarKey": "EnvVarValue"}
ImageUri: 366666666666.dkr.ecr.us-west-2.amazonaws.com/my-image:latest
InstanceType: ml.m5.large
RoleArn: arn:aws:iam::366666666666:role/MyRole
S3KmsKeyId: somekmskeyid
S3RootUri: s3://my-bucket/my-project
SecurityGroupIds:
- sg123
Subnets:
- subnet-1234
Tags:
- {"Key": "someTagKey", "Value": "someTagValue"}
VolumeKmsKeyId: somekmskeyid
عمل
PyTorch یا TensorFlow جیسے ڈیپ لرننگ ماڈلز کو اسٹوڈیو کے اندر بھی کوڈ کو نوٹ بک کے اندر تربیتی کام کے طور پر چلا کر چلایا جا سکتا ہے۔ اسٹوڈیو میں اس صلاحیت کو ظاہر کرنے کے لیے، آپ اس ریپو کو اپنے اسٹوڈیو میں کلون کرسکتے ہیں اور اس میں موجود نوٹ بک کو چلا سکتے ہیں۔ GitHub کے ذخیرہ.
یہ مثال آخر سے آخر تک بائنری ٹیکسٹ کی درجہ بندی کے استعمال کے معاملے کو ظاہر کرتی ہے۔ ہم بائنری ٹیکسٹ کی درجہ بندی پر پہلے سے تربیت یافتہ ٹرانسفارمر کو ٹھیک کرنے کے لیے ہگنگ فیس ٹرانسفارمرز اور ڈیٹاسیٹس لائبریری کا استعمال کر رہے ہیں۔ خاص طور پر، پہلے سے تربیت یافتہ ماڈل کا استعمال کرتے ہوئے ٹھیک بنایا جائے گا۔ آئی ایم ڈی بی ڈیٹاسیٹ.
جب آپ ذخیرہ کلون کرتے ہیں، تو آپ کو درج ذیل فائلوں کو تلاش کرنا چاہیے:
- config.yaml - بنیادی ڈھانچے سے متعلق ترتیبات کو کوڈ بیس سے الگ کرنے کے لیے ڈیکوریٹر کے زیادہ تر دلائل کو کنفیگریشن فائل میں آف لوڈ کیا جا سکتا ہے۔
- huggingface.ipynb - اس میں پہلے سے تربیت یافتہ HuggingFace ماڈل کو تربیت دینے کا کوڈ ہے، جسے IMDB ڈیٹاسیٹ کا استعمال کرتے ہوئے ٹھیک بنایا جائے گا۔
- conditions.txt - اس فائل میں اس فنکشن کو چلانے کے لیے تمام انحصار شامل ہیں جو اس نوٹ بک میں کوڈ کو چلانے اور ٹریننگ جاب کے طور پر GPU مثال میں دور سے ٹریننگ چلانے کے لیے استعمال کیے جائیں گے۔
جب آپ نوٹ بک کھولیں گے، آپ کو نوٹ بک کا ماحول ترتیب دینے کا کہا جائے گا۔ آپ نوٹ بک کوڈ کو چلانے کے لیے Python 3.0 کرنل اور ml.m3.large کے ساتھ ڈیٹا سائنس 5 امیج کو تیز لانچ مثال کے طور پر منتخب کر سکتے ہیں۔ اس مثال کی قسم ماحول کو گھماؤ میں نمایاں طور پر تیز ہے۔
تربیت کا کام ml.g4dn.xlarge مثال میں چلایا جائے گا جیسا کہ اس میں بیان کیا گیا ہے۔ config.yaml
فائل:
SchemaVersion: '1.0'
SageMaker:
PythonSDK:
Modules:
RemoteFunction:
# role arn is not required if in SageMaker Notebook instance or SageMaker Studio
# Uncomment the following line and replace with the right execution role if in a local IDE
# RoleArn: <IAM_ROLE_ARN>
InstanceType: ml.g4dn.xlarge
Dependencies: ./requirements.txt
۔ requirements.txt
ہگنگ فیس ماڈل کی تربیت کے لیے فنکشن کو چلانے کے لیے فائل انحصار میں درج ذیل شامل ہیں:
datasets
transformers
torch
scikit-learn
# lock s3fs to this specific version as more recent ones introduce dependency on aiobotocore, which is not compatible with botocore
s3fs==0.4.2
sagemaker>=2.148.0,<3
ہگنگ فیس نوٹ بک دکھاتی ہے کہ تربیت کو دور سے کیسے چلایا جائے۔ @remote
فنکشن، جو ہم وقت سازی سے چلایا جاتا ہے۔ لہذا، ماڈل کی تربیت کے لیے چلایا جانے والا فنکشن SageMaker ٹریننگ کا کام مکمل ہونے تک انتظار کرے گا۔ تربیت ایک GPU مثال کے ساتھ دور سے چلائی جائے گی جس میں مثال کی قسم کی وضاحت سابقہ کنفیگریشن فائل میں کی گئی ہے۔
آپ کے تربیتی کام کو چلانے کے بعد، آپ تشخیصی میٹرکس کا معائنہ کرنے اور ہمارے تربیت یافتہ ماڈل پر متن کی درجہ بندی کرنے کے لیے نوٹ بک کے باقی سیلز چلا سکتے ہیں۔
آپ SageMaker کنسول پر واپس نیویگیٹ کرکے SageMaker ڈیش بورڈ پر GPU مثال میں دور سے متحرک ہونے والی تربیتی ملازمت کی حیثیت بھی دیکھ سکتے ہیں۔
جیسے ہی تربیتی کام مکمل ہو جاتا ہے، یہ تشخیص اور درجہ بندی کے لیے نوٹ بک میں ہدایات کو چلانا جاری رکھتا ہے۔ اسی طرح کی ملازمتوں کو سٹوڈیو نوٹ بک کے اندر ایمبیڈڈ ریموٹ ایگزیکیوٹر فنکشن کے ذریعے تربیت دی جا سکتی ہے اور چلائی جا سکتی ہے تاکہ رن کو متضاد طریقے سے انجام دیا جا سکے۔
@remote فنکشن کے اندر SageMaker تجربات کے ساتھ انضمام
آپ SageMaker تجربات کو چلانے کے لیے اپنے تجربے کا نام، رن کا نام، اور دیگر پیرامیٹرز کو اپنے ریموٹ فنکشن میں منتقل کر سکتے ہیں۔ درج ذیل کوڈ کی مثال تجربے کا نام، رن کا نام، اور ہر رن کے لیے لاگ کرنے کے لیے پیرامیٹرز درآمد کرتی ہے۔
from sagemaker.remote_function import remote
from sagemaker.experiments.run import Run
# Define your remote function
@remote
def train(value_1, value_2, exp_name, run_name):
...
...
#Creates the experiment
with Run( experiment_name=exp_name, run_name=run_name, sagemaker_session=sagemaker_session
) as run:
...
...
#Define values for the parameters to log
run.log_parameter("param_1", value_1)
run.log_parameter("param_2", value_2)
...
...
#Define metrics to log
run.log_metric("metric_a", 0.5)
run.log_metric("metric_b", 0.1) # Invoke your remote function
train(1.0, 2.0, "my-exp-name", "my-run-name")
پچھلی مثال میں، پیرامیٹرز p1
اور p2
ٹریننگ لوپ کے اندر وقت کے ساتھ لاگ ان ہوتے ہیں۔ عام پیرامیٹرز میں بیچ سائز یا عہد شامل ہو سکتے ہیں۔ مثال کے طور پر، میٹرکس A
اور B
ٹریننگ لوپ کے اندر وقت کے ساتھ رن کے لیے لاگ ان ہوتے ہیں۔ عام میٹرکس میں درستگی یا نقصان شامل ہوسکتا ہے۔ مزید معلومات کے لیے دیکھیں ایمیزون سیج میکر تجربہ بنائیں.
نتیجہ
اس پوسٹ میں، ہم نے SageMaker Python SDK کی ایک نئی صلاحیت متعارف کرائی ہے جو ڈیٹا سائنسدانوں کو اپنے ML کوڈ کو SageMaker ٹریننگ جابز کے طور پر اپنی ترجیحی IDE میں چلانے کے قابل بناتی ہے۔ ہم نے اس کی خصوصیات کے ساتھ اس صلاحیت کو استعمال کرنے کے لیے ضروری شرائط پر تبادلہ خیال کیا۔ ہم نے یہ بھی دکھایا کہ اس صلاحیت کو اسٹوڈیو، سیج میکر نوٹ بک مثالوں اور آپ کے مقامی IDE میں کیسے استعمال کیا جائے۔ اس کے علاوہ، ہم نے نمونہ کوڈ کی مثالیں فراہم کی ہیں تاکہ یہ ظاہر کیا جا سکے کہ اس صلاحیت کو کیسے استعمال کیا جائے۔ اگلے قدم کے طور پر، ہم آپ کے IDE یا SageMaker میں اس صلاحیت کو آزمانے کی تجویز کرتے ہیں۔ کوڈ کی مثالیں اس پوسٹ میں حوالہ دیا گیا ہے۔
مصنفین کے بارے میں
دیپانکر پیٹرو AWS SageMaker میں سافٹ ویئر ڈویلپمنٹ انجینئر ہے، MLOps کے حل کو اختراعی اور تعمیر کرتا ہے تاکہ صارفین کو AI/ML حل کو پیمانے پر اپنانے میں مدد ملے۔ اس نے کمپیوٹر سائنس میں ایم ایس کیا ہے اور اس کی دلچسپی کے شعبے کمپیوٹر سیکیورٹی، ڈسٹری بیوٹڈ سسٹمز اور AI/ML ہیں۔
فاروق صابر AWS میں ایک سینئر مصنوعی ذہانت اور مشین لرننگ اسپیشلسٹ سولیوشن آرکیٹیکٹ ہیں۔ انہوں نے آسٹن کی یونیورسٹی آف ٹیکساس سے الیکٹریکل انجینئرنگ میں پی ایچ ڈی اور ایم ایس کی ڈگریاں اور جارجیا انسٹی ٹیوٹ آف ٹیکنالوجی سے کمپیوٹر سائنس میں ایم ایس کی ڈگریاں حاصل کیں۔ اس کے پاس 15 سال سے زیادہ کام کا تجربہ ہے اور وہ کالج کے طلباء کو پڑھانا اور ان کی رہنمائی کرنا بھی پسند کرتا ہے۔ AWS میں، وہ صارفین کو ڈیٹا سائنس، مشین لرننگ، کمپیوٹر ویژن، مصنوعی ذہانت، عددی اصلاح، اور متعلقہ ڈومینز میں اپنے کاروباری مسائل کی تشکیل اور حل کرنے میں مدد کرتا ہے۔ ڈیلاس، ٹیکساس میں مقیم، وہ اور اس کا خاندان سفر کرنا اور طویل سڑک کے سفر پر جانا پسند کرتا ہے۔
منوج روی ایمیزون سیج میکر کے سینئر پروڈکٹ مینیجر ہیں۔ وہ اگلی نسل کے AI پروڈکٹس بنانے کا شوق رکھتا ہے اور صارفین کے لیے بڑے پیمانے پر مشین لرننگ کو آسان بنانے کے لیے سافٹ ویئر اور ٹولز پر کام کرتا ہے۔ انہوں نے ہاس اسکول آف بزنس سے ایم بی اے اور کارنیگی میلن یونیورسٹی سے انفارمیشن سسٹم مینجمنٹ میں ماسٹرز کیا۔ اپنے فارغ وقت میں، منوج کو ٹینس کھیلنا اور لینڈ اسکیپ فوٹوگرافی کا شوق ہے۔
شیکھر کواترا ایمیزون ویب سروسز میں ایک AI/ML ماہر حل آرکیٹیکٹ ہے، جو ایک معروف گلوبل سسٹم انٹیگریٹر کے ساتھ کام کر رہا ہے۔ اس نے AI/ML اور IoT ڈومینز میں 500 سے زیادہ پیٹنٹ کے ساتھ سب سے کم عمر ہندوستانی ماسٹر موجد کا خطاب حاصل کیا ہے۔ شیکھر آرکیٹیکٹنگ، تعمیر، اور آرگنائزیشن کے لیے لاگت کے قابل، قابل توسیع کلاؤڈ ماحول کو برقرار رکھنے میں مدد کرتا ہے، اور AWS پر اسٹریٹجک انڈسٹری سلوشنز بنانے میں GSI پارٹنر کی مدد کرتا ہے۔ شیکھر کو اپنے فارغ وقت میں گٹار بجانا، موسیقی ترتیب دینا اور ذہن سازی کی مشق کرنا پسند ہے۔
وکرم ایلنگو AWS میں Sr. AI/ML ماہر حل آرکیٹیکٹ ہے، جو ورجینیا، US میں مقیم ہے۔ وہ فی الحال جنریٹو AI، LLMs، پرامپٹ انجینئرنگ، بڑے ماڈل کے انفرنس آپٹیمائزیشن، اور انٹرپرائزز میں ML کی پیمائش پر مرکوز ہے۔ وکرم مالیاتی اور انشورنس انڈسٹری کے صارفین کو ڈیزائن اور سوچی سمجھی قیادت کے ساتھ مشین لرننگ ایپلی کیشنز کو بڑے پیمانے پر بنانے اور تعینات کرنے میں مدد کرتا ہے۔ اپنے فارغ وقت میں، وہ سفر، پیدل سفر، کھانا پکانے اور کیمپنگ سے لطف اندوز ہوتا ہے۔
- SEO سے چلنے والا مواد اور PR کی تقسیم۔ آج ہی بڑھا دیں۔
- پلیٹوآئ اسٹریم۔ ویب 3 ڈیٹا انٹیلی جنس۔ علم میں اضافہ۔ یہاں تک رسائی حاصل کریں۔
- ایڈریین ایشلے کے ساتھ مستقبل کا نقشہ بنانا۔ یہاں تک رسائی حاصل کریں۔
- ماخذ: https://aws.amazon.com/blogs/machine-learning/run-your-local-machine-learning-code-as-amazon-sagemaker-training-jobs-with-minimal-code-changes/
- : ہے
- : ہے
- : نہیں
- $UP
- 1
- 10
- 100
- 15 سال
- 500
- 7
- a
- کی صلاحیت
- قابلیت
- ہمارے بارے میں
- تک رسائی حاصل
- اکاؤنٹ
- درستگی
- حاصل کیا
- کے پار
- فعال
- کام کرتا ہے
- شامل کریں
- انہوں نے مزید کہا
- اس کے علاوہ
- منتظم
- منتظمین
- اپنانے
- اعلی درجے کی
- فائدہ
- AI
- AI / ML
- ایڈز
- تمام
- کی اجازت دیتا ہے
- ساتھ
- بھی
- ایمیزون
- ایمیزون سیج میکر
- ایمیزون ویب سروسز
- an
- تجزیے
- اور
- کا اعلان کیا ہے
- کوئی بھی
- ایپلی کیشنز
- کیا
- علاقوں
- دلائل
- مصنوعی
- مصنوعی ذہانت
- مصنوعی انٹیلی جنس اور مشین سیکھنا
- AS
- منسلک
- At
- آسٹن، ٹیکساس
- خود کار طریقے سے
- دستیاب
- AWS
- واپس
- بیس
- کی بنیاد پر
- BE
- فوائد
- بجٹ
- تعمیر
- عمارت
- کاروبار
- by
- کر سکتے ہیں
- صلاحیتوں
- قبضہ
- کارنیگی میلون
- لے جانے کے
- کیس
- خلیات
- تبدیل
- تبدیلیاں
- چینل
- انتخاب
- طبقے
- درجہ بندی
- درجہ بندی کرنا۔
- بادل
- کوڈ
- کوڈ بیس
- کالج
- آتا ہے
- کامن
- ہم آہنگ
- مکمل
- کمپیوٹنگ
- کمپیوٹر
- کمپیوٹر سائنس
- کمپیوٹر سیکورٹی
- کمپیوٹر ویژن
- تصور
- ترتیب
- کنسول
- پر مشتمل ہے
- کنٹینر
- پر مشتمل ہے
- سیاق و سباق
- جاری ہے
- کور
- قیمت
- سکتا ہے
- احاطہ
- تخلیق
- اس وقت
- گاہکوں
- اپنی مرضی کے مطابق
- ڈلاس
- ڈیش بورڈ
- اعداد و شمار
- ڈیٹا پروسیسنگ
- ڈیٹا سائنس
- ڈیٹاسیٹس
- اعلان کرتا ہے
- پہلے سے طے شدہ
- غلطی
- کی وضاحت
- مظاہرہ
- ثبوت
- انحصار
- تعیناتی
- بیان کیا
- ڈیزائن
- تفصیلات
- ترقی یافتہ
- ڈیولپر
- ترقی
- مختلف
- بات چیت
- تقسیم کئے
- تقسیم شدہ نظام
- تقسیم کی تربیت
- ڈومینز
- کیا
- نہیں
- کے دوران
- e
- ہر ایک
- حاصل
- استعمال میں آسانی
- آسان
- آسانی سے
- یا تو
- ایمبیڈڈ
- کے قابل بناتا ہے
- خفیہ کاری
- آخر سے آخر تک
- انجینئر
- انجنیئرنگ
- انجینئرز
- اداروں
- اندراج
- ماحولیات
- ماحول
- عہد
- زمانے
- تشخیص
- ہر کوئی
- مثال کے طور پر
- مثال کے طور پر
- پھانسی
- موجودہ
- تجربہ
- تجربہ
- چہرہ
- واقف
- خاندان
- فاسٹ
- تیز تر
- نمایاں کریں
- خصوصیات
- چند
- فائل
- فائلوں
- مالی
- پہلا
- لچک
- توجہ مرکوز
- توجہ مرکوز
- کے بعد
- کے لئے
- فریم ورک
- سے
- مکمل طور پر
- تقریب
- افعال
- مزید برآں
- مستقبل
- فیوچرز
- پیداواری
- پیداواری AI۔
- جارجیا
- دی
- گلوبل
- Go
- GPU
- گروپ کا
- ہے
- he
- مدد
- مدد کرتا ہے
- ان
- کی ڈگری حاصل کی
- کس طرح
- کیسے
- HTML
- HTTP
- HTTPS
- گلے لگانے والا چہرہ
- شناختی
- if
- تصویر
- نفاذ
- درآمد
- درآمدات
- in
- شامل
- سمیت
- بھارتی
- صنعت
- معلومات
- انفارمیشن سسٹمز
- انفراسٹرکچر
- بدعت
- ان پٹ
- نصب
- مثال کے طور پر
- انسٹی ٹیوٹ
- ہدایات
- انشورنس
- ضم
- انٹیگریٹٹس
- انٹیلی جنس
- دلچسپی
- میں
- متعارف کرانے
- متعارف
- موجد
- IOT
- IT
- تکرار
- میں
- ایوب
- نوکریاں
- فوٹو
- صرف
- کلیدی
- لیب
- زمین کی تزئین کی
- لیپ ٹاپ
- بڑے
- بڑے پیمانے پر
- تازہ ترین
- شروع
- شروع
- شروع
- قیادت
- معروف
- جانیں
- سیکھنے
- دو
- آو ہم
- لائبریریوں
- لائبریری
- زندگی کا دورانیہ
- کی طرح
- پسند
- لائن
- لنکڈ
- مقامی
- مقامی طور پر
- واقع ہے
- لاگ ان کریں
- انکرنا
- لانگ
- دیکھنا
- بند
- محبت
- مشین
- مشین لرننگ
- بنا
- برقرار رکھنے
- بنا
- بناتا ہے
- میں کامیاب
- انتظام
- مینیجر
- ماسٹر
- مئی..
- میلن
- طریقہ کار
- پیمائش کا معیار
- Mindfulness
- کم سے کم
- منٹ
- ML
- ایم ایل اوپس
- موڈ
- ماڈل
- ماڈل
- ماڈیولز
- زیادہ
- سب سے زیادہ
- منتقل
- MS
- ایک سے زیادہ
- موسیقی
- نام
- یعنی
- تشریف لے جارہا ہے
- ضرورت ہے
- ضرورت
- نیٹ ورک
- نیٹ ورکنگ
- نئی
- اگلے
- نوڈس
- نوٹ بک
- اب
- عجیب
- اشیاء
- of
- on
- جہاز
- ایک بار
- ایک
- صرف
- کھول
- اوپن سورس
- اصلاح کے
- or
- حکم
- تنظیم
- OS
- دیگر
- ہمارے
- باہر
- پیداوار
- پر
- منسوخی
- پیکج
- پیکجوں کے
- pandas
- متوازی
- پیرامیٹرز
- خاص طور پر
- پارٹنر
- منظور
- گزرتا ہے
- پاسنگ
- جذباتی
- پیٹنٹ
- راستہ
- کارکردگی
- فوٹو گرافی
- پلیٹ فارم
- پلاٹا
- افلاطون ڈیٹا انٹیلی جنس
- پلیٹو ڈیٹا
- کھیل
- پوائنٹ
- پوسٹ
- کو ترجیح دی
- ضروریات
- پچھلا
- مسئلہ
- مسائل
- پروسیسنگ
- مصنوعات
- پروڈکٹ مینیجر
- پیداواری
- حاصل
- فراہم
- ازگر
- pytorch
- تیار
- حال ہی میں
- حال ہی میں
- سفارش
- متعلقہ
- جاری
- ریموٹ
- کی جگہ
- ذخیرہ
- ضرورت
- ضروریات
- باقی
- واپسی
- سڑک
- کردار
- کردار
- رن
- چل رہا ہے
- sagemaker
- توسیع پذیر
- پیمانے
- سکیلنگ
- سکول
- سائنس
- سائنسدانوں
- سائنٹ سیکھنا
- sdk
- بغیر کسی رکاوٹ کے
- سیکشن
- سیکشنز
- سیکورٹی
- دیکھنا
- سینئر
- علیحدہ
- سروسز
- اجلاس
- مقرر
- قائم کرنے
- ترتیبات
- سیٹ اپ
- کئی
- ہونا چاہئے
- دکھائیں
- نمائش
- دکھایا گیا
- شوز
- نمایاں طور پر
- اسی طرح
- سادہ
- صرف
- ایک
- سائز
- چھوٹے
- سنیپشاٹ
- So
- سافٹ ویئر کی
- سوفٹ ویئر کی نشوونما
- حل
- حل
- ماہر
- مخصوص
- تصریح
- مخصوص
- شروع کریں
- شروع
- درجہ
- مرحلہ
- ذخیرہ
- حکمت عملی
- طلباء
- سٹوڈیو
- جمع
- ذیلی نیٹ
- اس طرح
- تائید
- کی حمایت کرتا ہے
- کے نظام
- سسٹمز
- لے لو
- لیتا ہے
- لینے
- کاموں
- ٹیموں
- ٹیکنالوجی
- ٹیسسرور
- ٹیکساس
- متن کی درجہ بندی
- کہ
- ۔
- ان
- ان
- تو
- وہاں.
- اس طرح
- لہذا
- یہ
- وہ
- اس
- سوچا
- سوچا قیادت۔
- کے ذریعے
- وقت
- عنوان
- کرنے کے لئے
- اوزار
- مشعل
- کی طرف
- ٹرین
- تربیت یافتہ
- ٹریننگ
- ٹرانسفارمرز
- سفر
- سفر
- متحرک
- قسم
- عام طور پر
- کے تحت
- سمجھ
- یونیورسٹی
- اپ ڈیٹ کریں
- us
- استعمال کی شرائط
- استعمال کیس
- استعمال کیا جاتا ہے
- صارفین
- کا استعمال کرتے ہوئے
- قیمت
- اقدار
- ورژن
- کی طرف سے
- لنک
- ورجینیا
- نقطہ نظر
- vs
- بمقابلہ کوڈ
- انتظار
- چاہتے ہیں
- we
- ویب
- ویب خدمات
- جب
- جس
- جبکہ
- گے
- ساتھ
- کے اندر
- کام
- کام کر
- کام کرتا ہے
- گا
- لپیٹو
- لپیٹ
- لکھنا
- کوڈ لکھیں
- لکھا
- X
- سال
- تم
- سب سے کم عمر
- اور
- زیفیرنیٹ