تنظیموں کے لیے کوڈنگ ساتھیوں کو حسب ضرورت بنانا | ایمیزون ویب سروسز

تنظیموں کے لیے کوڈنگ ساتھیوں کو حسب ضرورت بنانا | ایمیزون ویب سروسز

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

کوڈنگ ساتھیوں کے لیے تخلیقی AI ماڈلز زیادہ تر عوامی طور پر دستیاب سورس کوڈ اور قدرتی زبان کے متن پر تربیت یافتہ ہیں۔ اگرچہ ٹریننگ کارپس کا بڑا سائز ماڈلز کو عام طور پر استعمال ہونے والی فعالیت کے لیے کوڈ تیار کرنے کے قابل بناتا ہے، لیکن یہ ماڈل نجی ذخیروں میں موجود کوڈ اور اس سے منسلک کوڈنگ اسٹائل سے ناواقف ہیں جو ان کے ساتھ ترقی کرتے وقت نافذ کیے جاتے ہیں۔ نتیجتاً، تیار کردہ تجاویز کو داخلی ذخیرہ میں شامل کرنے کے لیے موزوں ہونے سے پہلے دوبارہ لکھنے کی ضرورت پڑ سکتی ہے۔

ہم اس فرق کو پورا کر سکتے ہیں اور عوامی کوڈ پر تربیت یافتہ لینگویج ماڈل کے اوپر پرائیویٹ ریپوزٹریز سے کوڈ کے علم کو سرایت کر کے اضافی دستی ترمیم کو کم کر سکتے ہیں۔ یہی وجہ ہے کہ ہم نے حسب ضرورت بنانے کی صلاحیت تیار کی۔ ایمیزون کوڈ وِسپرر. اس پوسٹ میں، ہم آپ کو بازیافت بڑھا ہوا جنریشن اور فائن ٹیوننگ کا استعمال کرتے ہوئے کوڈنگ ساتھیوں کو حسب ضرورت بنانے کے دو ممکنہ طریقے دکھاتے ہیں۔

CodeWhisperer حسب ضرورت کی صلاحیت کے ساتھ ہمارا مقصد تنظیموں کو ان کے نجی ذخیروں اور لائبریریوں کا استعمال کرتے ہوئے CodeWhisperer ماڈل کو تیار کرنے کے قابل بنانا ہے تاکہ تنظیم کے لیے مخصوص کوڈ کی سفارشات تیار کی جا سکیں جو وقت کی بچت کرتے ہیں، تنظیمی طرز اور کنونشنوں کی پیروی کرتے ہیں، اور کیڑے یا حفاظتی خطرات سے بچتے ہیں۔ اس سے انٹرپرائز سافٹ ویئر کی ترقی کو فائدہ ہوتا ہے اور درج ذیل چیلنجوں پر قابو پانے میں مدد ملتی ہے:

  1. داخلی لائبریریوں اور APIs کے لیے ویرل دستاویزات یا معلومات جو ڈویلپرز کو استعمال کی نقل تیار کرنے کے لیے پہلے سے لکھے گئے کوڈ کی جانچ کرنے میں وقت گزارنے پر مجبور کرتی ہیں۔
  2. انٹرپرائز کے لیے مخصوص کوڈنگ کے طریقوں، طرزوں اور نمونوں کو نافذ کرنے میں بیداری اور مستقل مزاجی کا فقدان۔
  3. ڈیولپرز کے ذریعے فرسودہ کوڈ اور APIs کا نادانستہ استعمال۔

اضافی تربیت کے لیے داخلی کوڈ کے ذخیروں کا استعمال کرتے ہوئے جو پہلے ہی کوڈ کے جائزے سے گزر چکے ہیں، زبان کا ماڈل اندرونی APIs اور کوڈ بلاکس کے استعمال کو ظاہر کر سکتا ہے جو مسائل کی پچھلی فہرست پر قابو پاتے ہیں۔ چونکہ ریفرنس کوڈ کا پہلے ہی جائزہ لیا جاتا ہے اور یہ گاہک کے اعلیٰ بار کو پورا کرتا ہے، اس لیے کیڑے یا حفاظتی کمزوریوں کے متعارف ہونے کا امکان بھی کم ہو جاتا ہے۔ اور، حسب ضرورت کے لیے استعمال ہونے والی سورس فائلوں کا احتیاط سے انتخاب کرکے، تنظیمیں فرسودہ کوڈ کے استعمال کو کم کرسکتی ہیں۔

ڈیزائن چیلنجز

کسی تنظیم کے نجی ذخیروں کی بنیاد پر کوڈ کی تجاویز کو حسب ضرورت بنانے میں بہت سے دلچسپ ڈیزائن چیلنجز ہیں۔ سرفیس کوڈ کی تجاویز پر بڑے لینگویج ماڈلز (LLMs) کی تعیناتی میں دستیابی اور متغیر اخراجات کے لیے مقررہ لاگتیں ہیں جو کہ پیدا کردہ ٹوکنز کی تعداد کی بنیاد پر لگتے ہیں۔ اس لیے، ہر گاہک کے لیے الگ الگ تخصیصات کا ہونا اور انفرادی طور پر ان کی میزبانی کرنا، اس طرح اضافی مقررہ اخراجات اٹھانا، ممنوعہ طور پر مہنگا ہو سکتا ہے۔ دوسری طرف، ایک ہی سسٹم پر بیک وقت متعدد تخصیصات ہونے سے ہر گاہک کے لیے ملکیتی کوڈ کو الگ کرنے کے لیے کثیر کرایہ دار انفراسٹرکچر کی ضرورت ہوتی ہے۔ مزید برآں، حسب ضرورت کی صلاحیت کو مختلف میٹرکس کا استعمال کرتے ہوئے اندرونی ریپوزٹری سے مناسب ٹریننگ سبسیٹ کے انتخاب کو فعال کرنے کے لیے نوبس کو سطح پر لانا چاہیے (مثال کے طور پر، کم کیڑے یا کوڈ کی تاریخ والی فائلیں جو حال ہی میں ریپوزٹری میں دی گئی ہیں)۔ ان میٹرکس پر مبنی کوڈ کو منتخب کرکے، اعلیٰ معیار کے کوڈ کا استعمال کرتے ہوئے حسب ضرورت کو تربیت دی جاسکتی ہے جو کوڈ کی تجاویز کے معیار کو بہتر بنا سکتا ہے۔ آخر میں، مسلسل تیار ہوتے کوڈ ریپوزٹریوں کے باوجود، حسب ضرورت سے منسلک لاگت کم سے کم ہونی چاہیے تاکہ کاروباری اداروں کو ڈویلپر کی بڑھتی ہوئی پیداواری صلاحیت سے لاگت کی بچت کا احساس ہو سکے۔

حسب ضرورت بنانے کے لیے ایک بنیادی نقطہ نظر یہ ہو سکتا ہے کہ ماڈل کو ایک واحد تربیتی کارپس پر پہلے سے تربیت دی جائے جو (نجی) انٹرپرائز کوڈ کے ساتھ موجودہ (عوامی) پری ٹریننگ ڈیٹاسیٹ پر مشتمل ہو۔ اگرچہ یہ نقطہ نظر عملی طور پر کام کرتا ہے، اس کے لیے ہر انٹرپرائز کے لیے عوامی ڈیٹاسیٹ کا استعمال کرتے ہوئے (بے کار) انفرادی تربیت کی ضرورت ہوتی ہے۔ اس کے لیے ہر گاہک کے لیے حسب ضرورت ماڈل کی میزبانی کے ساتھ منسلک بے کار تعیناتی اخراجات کی بھی ضرورت ہوتی ہے جو صرف اس گاہک کی طرف سے آنے والی کلائنٹ کی درخواستوں کو پورا کرتا ہے۔ پبلک اور پرائیویٹ کوڈ کی تربیت کو ڈی جوپل کرکے اور ایک کثیر کرایہ دار نظام پر حسب ضرورت تعینات کرکے، ان بے کار اخراجات سے بچا جا سکتا ہے۔

کس طرح اپنی مرضی کے مطابق

اعلیٰ سطح پر، دو قسم کی ممکنہ تخصیص کی تکنیکیں ہیں: بازیافت بڑھا ہوا جنریشن (RAG) اور فائن ٹیوننگ (FT)۔

  • بازیافت بڑھا ہوا نسل: RAG کو ایک ریپوزٹری کے اندر کوڈ کے مماثل ٹکڑے ملتے ہیں جو دیئے گئے کوڈ کے ٹکڑے سے ملتا جلتا ہے (مثال کے طور پر، کوڈ جو IDE میں فوری طور پر کرسر سے پہلے ہوتا ہے) اور ان مماثل کوڈ کے ٹکڑوں کے ساتھ LLM سے استفسار کرنے کے لیے استعمال ہونے والے پرامپٹ کو بڑھاتا ہے۔ اس سے ماڈل کو مزید متعلقہ کوڈ بنانے میں مدد کرنے کے لیے پرامپٹ کو تقویت ملتی ہے۔ ان خطوط کے ساتھ ادب میں کچھ تکنیکیں دریافت کی گئی ہیں۔ دیکھیں علم پر مبنی این ایل پی ٹاسکس کے لیے بازیافت سے بڑھا ہوا جنریشن, واقعی, kNN-LM اور ریٹرو.

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

  • فائن ٹیوننگ: FT ایک پہلے سے تربیت یافتہ LLM لیتا ہے اور اسے ایک مخصوص، چھوٹے کوڈبیس (پہلے سے تربیتی ڈیٹاسیٹ کے مقابلے) پر مزید تربیت دیتا ہے تاکہ اسے مناسب ذخیرہ کے لیے ڈھال سکے۔ فائن ٹیوننگ اس ٹریننگ کی بنیاد پر LLM کے وزن کو ایڈجسٹ کرتی ہے، جس سے اسے تنظیم کی منفرد ضروریات کے مطابق بنایا جاتا ہے۔

LLM پر مبنی حسب ضرورت کی کارکردگی کو بڑھانے کے لیے RAG اور فائن ٹیوننگ دونوں ہی طاقتور ٹولز ہیں۔ RAG کم تربیتی پیچیدگی اور لاگت کے ساتھ نجی لائبریریوں یا APIs کے ساتھ تیزی سے ڈھل سکتا ہے۔ تاہم، بازیافت شدہ کوڈ کے ٹکڑوں کو پرامپٹ پر تلاش کرنا اور بڑھانا رن ٹائم میں تاخیر کو بڑھاتا ہے۔ اس کے بجائے، فائن ٹیوننگ کے لیے سیاق و سباق کو بڑھانے کی ضرورت نہیں ہے کیونکہ ماڈل پہلے سے ہی نجی لائبریریوں اور APIs پر تربیت یافتہ ہے۔ تاہم، یہ اعلیٰ تربیتی اخراجات اور ماڈل کی خدمت میں پیچیدگیوں کا باعث بنتا ہے، جب متعدد کسٹم ماڈلز کو متعدد انٹرپرائز صارفین کے لیے سپورٹ کرنا پڑتا ہے۔ جیسا کہ ہم بعد میں بات کریں گے، ان خدشات کو مزید بہتر بنانے کے ذریعے دور کیا جا سکتا ہے۔

بازیافت بڑھا ہوا نسل

RAG میں چند مراحل شامل ہیں:

انڈیکسنگ

منتظم کی طرف سے ان پٹ کے طور پر ایک پرائیویٹ ریپوزٹری کو دیکھتے ہوئے، سورس کوڈ فائلوں کو ٹکڑوں میں تقسیم کرکے ایک انڈیکس بنایا جاتا ہے۔ سیدھے الفاظ میں، چنکنگ کوڈ کے ٹکڑوں کو قابل ہضم ٹکڑوں میں بدل دیتا ہے جو ممکنہ طور پر ماڈل کے لیے سب سے زیادہ معلوماتی ہوتے ہیں اور سیاق و سباق کے پیش نظر بازیافت کرنا آسان ہوتا ہے۔ کسی ٹکڑے کا سائز اور اسے فائل سے کیسے نکالا جاتا ہے وہ ڈیزائن کے انتخاب ہیں جو حتمی نتیجہ کو متاثر کرتے ہیں۔ مثال کے طور پر، ٹکڑوں کو کوڈ کی لائنوں کی بنیاد پر یا نحوی بلاکس کی بنیاد پر تقسیم کیا جا سکتا ہے، وغیرہ۔

ایڈمنسٹریٹر ورک فلو

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.
سیاق و سباق کی تلاش۔

کرسر کے اوپر کوڈ کی چند لائنوں کی بنیاد پر انڈیکس شدہ کوڈ کے ٹکڑوں کا ایک سیٹ تلاش کریں اور متعلقہ کوڈ کے ٹکڑوں کو بازیافت کریں۔ یہ بازیافت مختلف الگورتھم کا استعمال کرتے ہوئے ہو سکتی ہے۔ ان انتخاب میں شامل ہو سکتے ہیں:

  • الفاظ کا تھیلا (BM25) - الفاظ کی بازیافت کا ایک فنکشن جو استفسار کی اصطلاح کی تعدد اور کوڈ کے ٹکڑوں کی لمبائی کی بنیاد پر کوڈ کے ٹکڑوں کے سیٹ کی درجہ بندی کرتا ہے۔

BM25 پر مبنی بازیافت

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

مندرجہ ذیل تصویر بتاتی ہے کہ BM25 کیسے کام کرتا ہے۔ BM25 استعمال کرنے کے لیے، پہلے ایک الٹا انڈیکس بنایا جاتا ہے۔ یہ ڈیٹا کا ڈھانچہ ہے جو مختلف اصطلاحات کو کوڈ کے ٹکڑوں میں نقشہ بناتا ہے جس میں وہ اصطلاحات پائے جاتے ہیں۔ تلاش کے وقت، ہم استفسار میں موجود اصطلاحات کی بنیاد پر کوڈ کے ٹکڑوں کو تلاش کرتے ہیں اور تعدد کی بنیاد پر ان کو اسکور کرتے ہیں۔

معنوی بازیافت

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

BM25 لغوی ملاپ پر مرکوز ہے۔ لہذا، "شامل کریں" کو "حذف" کے ساتھ تبدیل کرنے سے سوال میں موجود شرائط کی بنیاد پر BM25 سکور تبدیل نہیں ہو سکتا، لیکن بازیافت شدہ فعالیت مطلوبہ چیز کے برعکس ہو سکتی ہے۔ اس کے برعکس، سیمنٹک بازیافت کوڈ کے ٹکڑوں کی فعالیت پر توجہ مرکوز کرتی ہے حالانکہ متغیر اور API کے نام مختلف ہو سکتے ہیں۔ عام طور پر، بہتر نتائج فراہم کرنے کے لیے BM25 اور معنوی بازیافتوں کا ایک ساتھ مل کر کام کر سکتا ہے۔

بڑھا ہوا تخمینہ

جب ڈویلپرز کوڈ لکھتے ہیں، تو ان کے موجودہ پروگرام کو ایک استفسار بنانے کے لیے استعمال کیا جاتا ہے جو بازیافت انڈیکس کو بھیجی جاتی ہے۔ اوپر دی گئی تکنیکوں میں سے کسی ایک کو استعمال کرتے ہوئے متعدد کوڈ کے ٹکڑوں کو بازیافت کرنے کے بعد، ہم انہیں اصل پرامپٹ پر پیش کرتے ہیں۔ یہاں بہت سے ڈیزائن کے انتخاب ہیں، بشمول بازیافت کیے جانے والے ٹکڑوں کی تعداد، پرامپٹ میں ٹکڑوں کی متعلقہ جگہ، اور ٹکڑوں کا سائز۔ حتمی ڈیزائن کا انتخاب بنیادی طور پر بنیادی زبان کے ماڈل کے ساتھ مختلف طریقوں کو تلاش کرکے تجرباتی مشاہدے سے چلتا ہے اور نقطہ نظر کی درستگی کا تعین کرنے میں کلیدی کردار ادا کرتا ہے۔ واپس کیے گئے ٹکڑوں کے مواد اور اصل کوڈ کو ملا کر ماڈل کو بھیج دیا جاتا ہے تاکہ حسب ضرورت کوڈ کی تجاویز حاصل کی جاسکیں۔

ڈویلپر ورک فلو

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

ٹھیک ٹیوننگ:

عمدہ ٹیوننگ کے لیے ایک زبان کا ماڈل بنایا گیا ہے۔ منتقلی سیکھنے جس میں پہلے سے تربیت یافتہ ماڈل کے وزن کو نئے ڈیٹا پر تربیت دی جاتی ہے۔ مقصد یہ ہے کہ ایک بڑے کارپس پر پہلے سے تربیت یافتہ ماڈل سے مناسب علم کو برقرار رکھنا اور نئے کارپس سے نئے علم کو بہتر، بدلنا یا شامل کرنا ہے — ہمارے معاملے میں، ایک نیا کوڈ بیس۔ بس ایک نئے کوڈ بیس پر تربیت کی طرف جاتا ہے۔ تباہ کن بھول. مثال کے طور پر، زبان کا ماڈل ہو سکتا ہے۔ حفاظت کے بارے میں اس کے علم کو "بھول جائیں" یا APIs جو آج تک انٹرپرائز کوڈبیس میں بہت کم استعمال ہوتے ہیں۔ کی طرح کی تکنیک کی ایک قسم ہیں دوبارہ چلانے کا تجربہ کریں۔, GEM، اور PP-TF جو اس چیلنج سے نمٹنے کے لیے کام کر رہے ہیں۔

عمدہ ٹیوننگ

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

فائن ٹیوننگ کے دو طریقے ہیں۔ ایک طریقہ یہ ہے کہ ماڈل کو ٹھیک کرنے کے لیے پرامپٹ کو بڑھاے بغیر اضافی ڈیٹا کا استعمال کیا جائے۔ ایک اور نقطہ نظر متعلقہ کوڈ کی تجاویز کو بازیافت کرکے فائن ٹیوننگ کے دوران پرامپٹ کو بڑھانا ہے۔ اس سے بازیافت شدہ کوڈ کے ٹکڑوں کی موجودگی میں بہتر تجاویز فراہم کرنے کی ماڈل کی صلاحیت کو بہتر بنانے میں مدد ملتی ہے۔ اس کے بعد ماڈل کو تربیت دینے کے بعد مثالوں کے رکھے ہوئے سیٹ پر جانچا جاتا ہے۔ اس کے بعد، اپنی مرضی کے مطابق ماڈل کو تعینات کیا جاتا ہے اور کوڈ کی تجاویز تیار کرنے کے لیے استعمال کیا جاتا ہے۔

نجی ذخیروں پر کوڈ تیار کرنے کے لیے وقف شدہ LLMs کے استعمال کے فوائد کے باوجود، چھوٹے اور درمیانے درجے کی تنظیموں کے لیے اخراجات ممنوع ہو سکتے ہیں۔ اس کی وجہ یہ ہے کہ سرشار کمپیوٹ وسائل ضروری ہیں حالانکہ ٹیموں کے سائز کے پیش نظر ان کا استعمال کم کیا جا سکتا ہے۔ لاگت کی کارکردگی کو حاصل کرنے کا ایک طریقہ ایک ہی کمپیوٹ پر متعدد ماڈلز پیش کرنا ہے (مثال کے طور پر، سیج میکر ملٹی کرایہ داری)۔ تاہم، لیٹینسی اور تھرو پٹ رکاوٹوں کو سنبھالنے کے لیے زبان کے ماڈلز کو متعدد زونز میں ایک یا زیادہ وقف شدہ GPUs کی ضرورت ہوتی ہے۔ لہذا، ہر GPU پر مکمل ماڈل ہوسٹنگ کی کثیر کرایہ داری ناقابل عمل ہے۔

ہم چھوٹے کا استعمال کرکے ایک ہی کمپیوٹ پر متعدد صارفین کی خدمت کرکے اس مسئلے پر قابو پا سکتے ہیں۔ اڈاپٹر ایل ایل ایم تک پیرامیٹر سے موثر فائن ٹیوننگ (PEFT) تکنیک جیسے فوری ٹیوننگ, سابقہ ​​ٹیوننگ، اور کم درجہ کی موافقت (LoRA) درستگی کے بغیر کسی نقصان کے تربیتی اخراجات کو کم کرنے کے لیے استعمال کیا جاتا ہے۔ LoRA نے، خاص طور پر، فل ماڈل فائن ٹیوننگ کے مقابلے میں اسی طرح کی (یا بہتر) درستگی حاصل کرنے میں بڑی کامیابی دیکھی ہے۔ بنیادی خیال یہ ہے کہ کم درجے کے میٹرکس کو ڈیزائن کیا جائے جسے پھر ماڈل کی ٹارگٹڈ لیئرز کے اصل میٹرکس وزن کے ساتھ میٹرکس میں شامل کیا جائے۔ عام طور پر، ان اڈیپٹرز کو سرونگ کے لیے اصل ماڈل کے وزن کے ساتھ ملا دیا جاتا ہے۔ یہ اصل عصبی نیٹ ورک کی طرح سائز اور فن تعمیر کی طرف جاتا ہے۔ اڈیپٹرز کو الگ رکھتے ہوئے، ہم ایک ہی بیس ماڈل کو کئی ماڈل اڈاپٹر کے ساتھ پیش کر سکتے ہیں۔ یہ ہمارے چھوٹے اور درمیانے درجے کے صارفین کے لیے پیمانے کی معیشتوں کو واپس لاتا ہے۔

کم درجہ کی موافقت (LoRA)

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.

حسب ضرورت کی تاثیر کی پیمائش

ہمیں حسب ضرورت حل کی افادیت کا اندازہ لگانے کے لیے تشخیصی میٹرکس کی ضرورت ہے۔ آف لائن ایویلیویشن میٹرکس شپنگ کی تخصیصات کے خلاف نگہبانی کے طور پر کام کرتی ہیں جو پہلے سے طے شدہ ماڈل کے مقابلے میں کم ہیں۔ فراہم کردہ ریپوزٹری کے اندر سے ہولڈ آؤٹ ڈیٹاسیٹ سے ڈیٹاسیٹ بنا کر، تاثیر کی پیمائش کے لیے اس ڈیٹاسیٹ پر حسب ضرورت اپروچ کا اطلاق کیا جا سکتا ہے۔ اپنی مرضی کے مطابق کوڈ کی تجویز کے ساتھ موجودہ سورس کوڈ کا موازنہ حسب ضرورت کی افادیت کو درست کرتا ہے۔ اس مقدار کے لیے استعمال کیے جانے والے عام اقدامات میں میٹرکس جیسے شامل ہیں۔ مماثلت میں ترمیم کریں، عین مطابق مماثلت، اور کوڈبلیو.

کسٹمائزیشن کے ذریعہ اندرونی APIs کو کتنی بار طلب کیا جاتا ہے اور اس کا پہلے سے موجود ماخذ میں درخواستوں سے موازنہ کرکے افادیت کی پیمائش کرنا بھی ممکن ہے۔ یقیناً، دونوں پہلوؤں کو درست کرنا ایک کامیاب تکمیل کے لیے ضروری ہے۔ اپنی تخصیص کاری کے نقطہ نظر کے لیے، ہم نے حسب ضرورت کوالٹی انڈیکس (CQI) کے نام سے ایک موزوں میٹرک ڈیزائن کیا ہے، جو کہ 1 اور 10 کے درمیان ایک واحد صارف دوست پیمانہ ہے۔ ایک عام عوامی ماڈل کے ساتھ تجاویز۔

خلاصہ

ہم نے اس بلاگ پوسٹ میں زیر بحث معروف تکنیکی تکنیکوں کے مرکب کی بنیاد پر Amazon CodeWhisperer حسب ضرورت بنانے کی صلاحیت بنائی ہے اور اس کا جائزہ ڈویلپر کی پیداواری صلاحیت پر صارف کے مطالعے کے ساتھ کیا ہے، جو پرسسٹنٹ سسٹمز کے ذریعے کیا گیا ہے۔ AWS کی طرف سے شروع کردہ ان دو مطالعات میں، ڈویلپرز کو جاوا میں ایک میڈیکل سافٹ ویئر ایپلی کیشن بنانے کے لیے کہا گیا تھا جس کے لیے ان کی اندرونی لائبریریوں کے استعمال کی ضرورت تھی۔ پہلی تحقیق میں، CodeWhisperer تک رسائی کے بغیر ڈویلپرز نے ٹاسک کو مکمل کرنے میں (اوسط) ~ 8.2 گھنٹے کا وقت لیا، جب کہ CodeWhisperer کا استعمال کرنے والوں نے (اوسط طور پر) ~ 62 گھنٹے میں 3.1 فیصد تیزی سے کام مکمل کیا۔

ڈویلپر کوہورٹس کے ایک مختلف سیٹ کے ساتھ دوسری تحقیق میں، CodeWhisperer کا استعمال کرنے والے ڈویلپرز جو اپنے نجی کوڈ بیس کا استعمال کرتے ہوئے اپنی مرضی کے مطابق بنائے گئے تھے، اوسطاً 2.5 گھنٹے میں کام مکمل کیا، ان لوگوں کے مقابلے میں 28 فیصد زیادہ تیزی سے جو CodeWhisperer کو بغیر حسب ضرورت استعمال کر رہے تھے اور ~ 3.5 میں کام مکمل کیا۔ اوسطا گھنٹے. ہمیں پختہ یقین ہے کہ CodeWhisperer جیسے ٹولز جو کہ آپ کے کوڈ بیس کے مطابق بنائے گئے ہیں ڈویلپر کی پیداواری صلاحیت کو مزید بڑھانے میں کلیدی کردار ادا کرتے ہیں اور اسے چلانے کی تجویز کرتے ہیں۔ مزید معلومات کے لیے اور شروع کرنے کے لیے، ملاحظہ کریں۔ Amazon CodeWhisperer صفحہ.


مصنفین کے بارے میں

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.کنگ سن AWS AI لیبز میں ایک سینئر اپلائیڈ سائنٹسٹ ہیں اور AWS CodeWhisperer پر کام کرتے ہیں، ایک جنریٹو AI سے چلنے والا کوڈنگ اسسٹنٹ۔ اس کی تحقیقی دلچسپیاں نیچرل لینگویج پروسیسنگ، AI4Code اور جنریٹیو AI میں ہیں۔ ماضی میں، اس نے NLP پر مبنی کئی خدمات جیسے کمپریہنڈ میڈیکل، ایمیزون ہیلتھ AI میں طبی تشخیص کا نظام اور Meta AI میں مشین ٹرانسلیشن سسٹم پر کام کیا تھا۔ اس نے 2017 میں ورجینیا ٹیک سے پی ایچ ڈی کی ڈگری حاصل کی۔

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.عرش فرحانی Amazon CodeWhisperer کے ساتھ ایک اپلائیڈ سائنٹسٹ ہے۔ اس کی موجودہ دلچسپیاں تخلیقی AI، تلاش اور ذاتی بنانے میں ہیں۔ آرش ایسے حل تیار کرنے کے بارے میں پرجوش ہے جو ڈویلپر کے درد کے نکات کو حل کرتے ہیں۔ اس نے CodeWhisperer کے اندر متعدد خصوصیات پر کام کیا ہے، اور مختلف اندرونی ورک اسٹریمز میں NLP حل متعارف کروائے ہیں جو تمام Amazon ڈویلپرز کو چھوتے ہیں۔ اس نے 2017 میں Urbana-Champaign میں یونیورسٹی آف الینوائے سے پی ایچ ڈی کی ڈگری حاصل کی۔

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.Xiaofei Ma AWS AI لیبز میں اپلائیڈ سائنس مینیجر ہے۔ اس نے 2016 میں SCOT تنظیم کے اندر ایک اپلائیڈ سائنٹسٹ کے طور پر Amazon میں شمولیت اختیار کی اور پھر 2018 میں AWS AI Labs میں Amazon Kendra پر کام کیا۔ Xiaofei کئی سروسز بشمول Kendra، Contact Lens، اور حال ہی میں CodeWhisperer اور CodeGuru سیکیورٹی کے لیے سائنس مینیجر کے طور پر خدمات انجام دے رہا ہے۔ اس کی تحقیقی دلچسپیاں AI4Code اور نیچرل لینگویج پروسیسنگ کے شعبے میں ہیں۔ انہوں نے 2010 میں یونیورسٹی آف میری لینڈ، کالج پارک سے پی ایچ ڈی کی ڈگری حاصل کی۔

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.مرلی کرشنا رامناتھن AWS AI لیبز میں ایک پرنسپل اپلائیڈ سائنٹسٹ ہے اور AWS CodeWhisperer کو لیڈ کرتا ہے، جو AI سے چلنے والا کوڈنگ ساتھی ہے۔ وہ سافٹ ویئر ٹولز اور ورک فلو بنانے کے بارے میں پرجوش ہے جو ڈویلپر کی پیداواری صلاحیت کو بہتر بنانے میں مدد کرتے ہیں۔ ماضی میں، اس نے پرانہہ بنایا، جو کہ کوڈ کو حذف کرنے کے لیے ایک خودکار ریفیکٹرنگ ٹول ہے جس کی وجہ سے کوڈ کو ڈیلیٹ کیا جا سکتا ہے اور Uber انجینئرنگ میں کوڈ کے معیار کے اقدامات کی وجہ سے۔ وہ گوگل فیکلٹی ایوارڈ (2015)، ACM SIGSOFT Distinguished Paper Award (ISTA 2016) اور Maurice Halstead Award (Purdue 2006) کے وصول کنندہ ہیں۔ انہوں نے 2008 میں پرڈیو یونیورسٹی سے کمپیوٹر سائنس میں پی ایچ ڈی کی ڈگری حاصل کی۔

Customizing coding companions for organizations | Amazon Web Services PlatoBlockchain Data Intelligence. Vertical Search. Ai.رمیش نالہ پتی۔ AWS AI لیبز میں ایک سینئر پرنسپل اپلائیڈ سائنٹسٹ ہیں اور CodeWhisperer، ایک جنریٹو AI سے چلنے والے کوڈنگ ساتھی، اور AWS میں Titan Large Language Models کی شریک رہنمائی کرتے ہیں۔ اس کی دلچسپی بنیادی طور پر نیچرل لینگویج پروسیسنگ اور جنریٹو اے آئی کے شعبوں میں ہے۔ ماضی میں، رمیش نے کئی NLP پر مبنی AWS پروڈکٹس جیسے کیندر، Quicksight Q اور Contact Lens کی فراہمی میں سائنس کی قیادت فراہم کی ہے۔ انہوں نے سٹینفورڈ، سی ایم یو اور آئی بی ایم ریسرچ میں تحقیقی عہدوں پر فائز رہے اور پی ایچ ڈی کی ڈگری حاصل کی۔ 2006 میں یونیورسٹی آف میساچوسٹس ایمہرسٹ سے کمپیوٹر سائنس میں۔

ٹائم اسٹیمپ:

سے زیادہ AWS مشین لرننگ