سافٹ ویئر ڈویلپمنٹ کی دنیا میں، کوڈ کا جائزہ اور منظوری سافٹ ویئر تیار کیے جانے والے سافٹ ویئر کے معیار، حفاظت اور فعالیت کو یقینی بنانے کے لیے اہم عمل ہیں۔ تاہم، ان اہم عملوں کی نگرانی کے ذمہ دار مینیجرز کو اکثر متعدد چیلنجوں کا سامنا کرنا پڑتا ہے، جیسے کہ درج ذیل:
- تکنیکی مہارت کا فقدان - مینیجرز کو استعمال شدہ پروگرامنگ زبان کی گہرائی تکنیکی سمجھ نہیں ہو سکتی ہے یا ہو سکتا ہے کہ وہ سافٹ ویئر انجینئرنگ میں توسیع شدہ مدت کے لیے شامل نہ ہوں۔ اس کے نتیجے میں علمی خلا پیدا ہوتا ہے جو ان کے لیے مجوزہ کوڈ کی تبدیلیوں کے اثرات اور درستگی کا درست اندازہ لگانا مشکل بنا سکتا ہے۔
- وقت کی پابندی - کوڈ کا جائزہ اور منظوری ایک وقت طلب عمل ہو سکتا ہے، خاص طور پر بڑے یا زیادہ پیچیدہ منصوبوں میں۔ مینیجرز کو جائزے کی مکملیت بمقابلہ پروجیکٹ کی ٹائم لائنز کو پورا کرنے کے دباؤ کے درمیان توازن قائم کرنے کی ضرورت ہے۔
- تبدیلی کی درخواستوں کا حجم - مینیجرز کے لیے بہت زیادہ تبدیلی کی درخواستوں سے نمٹنا ایک عام چیلنج ہے، خاص طور پر اگر وہ متعدد ٹیموں اور پروجیکٹس کی نگرانی کر رہے ہوں۔ وقت کی پابندی کے چیلنج کی طرح، مینیجرز کو ان درخواستوں کو مؤثر طریقے سے سنبھالنے کے قابل ہونے کی ضرورت ہے تاکہ پروجیکٹ کی پیشرفت کو روکا نہ جاسکے۔
- دستی کوشش - کوڈ کا جائزہ لینے کے لیے مینیجرز کی دستی کوشش کی ضرورت ہوتی ہے، اور آٹومیشن کی کمی اس عمل کو پیمانہ بنانا مشکل بنا سکتی ہے۔
- دستاویزی - شفافیت اور جوابدہی کے لیے کوڈ کے جائزے اور منظوری کے عمل کی مناسب دستاویزات اہم ہیں۔
اضافہ کے ساتھ تخلیقی مصنوعی ذہانت (AI)، مینیجرز اب اس تبدیلی کی ٹیکنالوجی کا استعمال کر سکتے ہیں اور اسے AWS سوٹ آف ڈیپلائمنٹ ٹولز اور سروسز کے ساتھ ضم کر سکتے ہیں تاکہ جائزہ اور منظوری کے عمل کو اس انداز میں ہموار کیا جا سکے جو پہلے ممکن نہیں تھا۔ اس پوسٹ میں، ہم ایک ایسا حل تلاش کرتے ہیں جو ایک مربوط اختتام سے آخر تک تعیناتی ورک فلو پیش کرتا ہے جس میں منظوری کے ورک فلو کی فعالیت کے ساتھ خودکار تبدیلی کے تجزیے اور خلاصہ شامل ہوتا ہے۔ ہم استعمال کرتے ہیں ایمیزون بیڈرک, ایک مکمل طور پر منظم سروس جو کہ ایک API کے ذریعے سرکردہ AI سٹارٹ اپس اور Amazon سے فاؤنڈیشن ماڈلز (FMs) دستیاب کرتی ہے، تاکہ آپ FMs کی ایک وسیع رینج میں سے اس ماڈل کو تلاش کر سکیں جو آپ کے استعمال کے معاملے کے لیے موزوں ہو۔ ایمیزون بیڈروک سرور لیس تجربے کے ساتھ، آپ تیزی سے شروع کر سکتے ہیں، ذاتی طور پر اپنے ڈیٹا کے ساتھ ایف ایم کو اپنی مرضی کے مطابق بنا سکتے ہیں، اور بغیر کسی بنیادی ڈھانچے کا انتظام کیے بغیر AWS ٹولز کا استعمال کرتے ہوئے انہیں اپنی ایپلی کیشنز میں ضم اور تعینات کر سکتے ہیں۔
حل جائزہ
مندرجہ ذیل خاکہ حل کے فن تعمیر کی وضاحت کرتا ہے۔
ورک فلو مندرجہ ذیل مراحل پر مشتمل ہے:
- ایک ڈویلپر اپنے کوڈ کے ذخیرے میں کوڈ کی نئی تبدیلیوں کو آگے بڑھاتا ہے (جیسے AWS CodeCommit)، جو خود بخود ایک کے آغاز کو متحرک کرتا ہے۔ AWS کوڈ پائپ لائن تعیناتی.
- ایپلیکیشن کوڈ کوڈ بنانے کے عمل سے گزرتا ہے، کمزوری کے اسکین کرتا ہے، اور آپ کے پسندیدہ ٹولز کا استعمال کرتے ہوئے یونٹ ٹیسٹ کرواتا ہے۔
- AWS کوڈ بلڈ۔ ریپوزٹری کو بازیافت کرتا ہے اور موجودہ کمٹ ورژن اور پچھلے کمٹ ورژن کے مابین کوڈ کے فرق کو نکالنے کے لئے گٹ شو کمانڈ انجام دیتا ہے۔ یہ ایک لائن بہ لائن آؤٹ پٹ تیار کرتا ہے جو اس ریلیز میں کی گئی کوڈ کی تبدیلیوں کی نشاندہی کرتا ہے۔
- کوڈ بلڈ آؤٹ پٹ کو محفوظ کرتا ہے۔ ایمیزون ڈائنومو ڈی بی اضافی حوالہ معلومات کے ساتھ جدول:
- کوڈ پائپ لائن رن ID
- AWS علاقہ
- کوڈ پائپ لائن کا نام
- کوڈ بلڈ بلڈ نمبر
- تاریخ اور وقت
- درجہ
- Amazon DynamoDB اسٹریمز ڈیٹا میں تبدیلیوں کو پکڑتا ہے۔ میز پر بنایا.
- An او ڈبلیو ایس لامبڈا۔ کیپچر کیے گئے ریکارڈ پر کارروائی کرنے کے لیے DynamoDB سٹریم کے ذریعے فنکشن کو متحرک کیا جاتا ہے۔
- یہ فنکشن ایمیزون بیڈرک کے ذریعے ایمیزون بیڈرک پر اینتھروپک کلاڈ v2 ماڈل کو طلب کرتا ہے۔ InvokeModel API کال کوڈ کے فرق، ایک پرامپٹ کے ساتھ، تجزیہ کے لیے ماڈل کو ان پٹ کے طور پر فراہم کیے جاتے ہیں، اور کوڈ کی تبدیلیوں کا خلاصہ آؤٹ پٹ کے طور پر واپس کیا جاتا ہے۔
- ماڈل سے آؤٹ پٹ واپس اسی DynamoDB ٹیبل پر محفوظ ہو جاتا ہے۔
- مینیجر کو بذریعہ اطلاع دی جاتی ہے۔ ایمیزون سادہ ای میل سروس (ایمیزون SES) کوڈ کی تبدیلیوں کا خلاصہ اور یہ کہ تعیناتی کے لیے ان کی منظوری درکار ہے۔
- مینیجر ای میل کا جائزہ لیتا ہے اور CodePipeline کنسول کے ذریعے کسی بھی جائزے کے تبصروں کے ساتھ اپنا فیصلہ (یا تو منظور یا مسترد) فراہم کرتا ہے۔
- منظوری کے فیصلے اور نظرثانی کے تبصرے کی طرف سے پکڑے گئے ہیں ایمیزون ایونٹ برج، جو انہیں واپس DynamoDB میں محفوظ کرنے کے لیے لیمبڈا فنکشن کو متحرک کرتا ہے۔
- منظور ہونے پر، پائپ لائن آپ کے پسندیدہ ٹولز کا استعمال کرتے ہوئے ایپلیکیشن کوڈ کو تعینات کرتی ہے۔ مسترد ہونے پر، ورک فلو ختم ہو جاتا ہے اور تعیناتی مزید آگے نہیں بڑھتی ہے۔
مندرجہ ذیل حصوں میں، آپ حل کو متعین کرتے ہیں اور آخر سے آخر تک ورک فلو کی تصدیق کرتے ہیں۔
شرائط
اس حل میں دی گئی ہدایات پر عمل کرنے کے لیے، آپ کو درج ذیل شرائط کی ضرورت ہے:
حل تعینات کریں۔
حل کو تعینات کرنے کے لیے، درج ذیل مراحل کو مکمل کریں:
- میں سے انتخاب کریں اسٹیک لانچ کریں۔ ایک CloudFormation اسٹیک شروع کرنے کے لیے
us-east-1
: - کے لئے ای میل اڈریس، ایک ای میل پتہ درج کریں جس تک آپ کو رسائی حاصل ہے۔ کوڈ کی تبدیلیوں کا خلاصہ اس ای میل ایڈریس پر بھیجا جائے گا۔
- کے لئے ماڈل آئی ڈی، بطور ڈیفالٹ anthropic.claude-v2 چھوڑ دیں، جو کہ Anthropic Claude v2 ماڈل ہے۔
ٹیمپلیٹ کی تعیناتی میں تقریباً 4 منٹ لگیں گے۔
- جب آپ کو اپنے ای میل ایڈریس کی تصدیق کے لیے Amazon SES سے ای میل موصول ہوتی ہے، تو اپنے ای میل ایڈریس کی اجازت دینے کے لیے فراہم کردہ لنک کا انتخاب کریں۔
- آپ کو CodeCommit میں نمونے کے ذخیرے کی ابتدائی کمٹ کے لیے "تبدیلیوں کا خلاصہ" کے عنوان سے ایک ای میل موصول ہوگا۔
- AWS CloudFormation کنسول پر، نیویگیٹ کریں۔ نتائج تعینات اسٹیک کا ٹیب۔
- RepoCloneURL کی قدر کاپی کریں۔ نمونہ کوڈ کے ذخیرے تک رسائی کے لیے آپ کو اس کی ضرورت ہے۔
حل کی جانچ کریں۔
آپ ڈویلپر کا کردار ادا کر کے اور کوڈ میں کچھ تبدیلیاں کر کے ورک فلو کو اینڈ ٹو اینڈ ٹیسٹ کر سکتے ہیں۔ CodeCommit میں آپ کے لیے نمونہ کوڈز کا ایک سیٹ تیار کیا گیا ہے۔ کو CodeCommit ذخیرہ تک رسائی حاصل کریں۔اپنے IDE پر درج ذیل کمانڈز درج کریں:
آپ کو ایک کے لیے درج ذیل ڈائریکٹری کا ڈھانچہ ملے گا۔ AWS کلاؤڈ ڈویلپمنٹ کٹ (AWS CDK) ایپلی کیشن جو عدد کی ایک تار پر ببل ترتیب دینے کے لیے لیمبڈا فنکشن بناتی ہے۔ لیمبڈا فنکشن عوامی طور پر دستیاب یو آر ایل کے ذریعے قابل رسائی ہے۔
آپ ایپلیکیشن کوڈز میں تین تبدیلیاں کرتے ہیں۔
- فوری ترتیب اور ببل ترتیب الگورتھم دونوں کو سپورٹ کرنے کے لیے فنکشن کو بڑھانے کے لیے، الگورتھم کے انتخاب کو استعمال کرنے کی اجازت دینے کے لیے ایک پیرامیٹر لیں، اور آؤٹ پٹ میں استعمال شدہ اور ترتیب شدہ دونوں الگورتھم کو واپس کریں، کے پورے مواد کو تبدیل کریں۔
lambda/index.py
درج ذیل کوڈ کے ساتھ:
- فنکشن کی ٹائم آؤٹ سیٹنگ کو 10 منٹ سے 5 سیکنڈ تک کم کرنے کے لیے (کیونکہ ہم توقع نہیں کرتے کہ فنکشن چند سیکنڈ سے زیادہ چلے گا)، لائن 47 کو اپ ڈیٹ کریں۔
my_sample_project/my_sample_project_stack.py
مندرجہ ذیل ہے:
- اضافی سیکیورٹی کے لیے IAM کا استعمال کرتے ہوئے فنکشن کی درخواست کو محدود کرنے کے لیے، لائن 56 کو اپ ڈیٹ کریں۔
my_sample_project/my_sample_project_stack.py
مندرجہ ذیل ہے:
- درج ذیل کمانڈز داخل کرکے کوڈ کی تبدیلیوں کو دبائیں:
اس سے CodePipeline کی تعیناتی کا ورک فلو مرحلہ 1-9 سے شروع ہوتا ہے جیسا کہ حل کے جائزہ میں بتایا گیا ہے۔ ایمیزون بیڈروک ماڈل کی درخواست کرتے وقت، ہم نے درج ذیل پرامپٹ فراہم کیا:
- SEO سے چلنے والا مواد اور PR کی تقسیم۔ آج ہی بڑھا دیں۔
- پلیٹو ڈیٹا ڈاٹ نیٹ ورک ورٹیکل جنریٹو اے آئی۔ اپنے آپ کو بااختیار بنائیں۔ یہاں تک رسائی حاصل کریں۔
- پلیٹوآئ اسٹریم۔ ویب 3 انٹیلی جنس۔ علم میں اضافہ۔ یہاں تک رسائی حاصل کریں۔
- پلیٹو ای ایس جی۔ کاربن، کلین ٹیک، توانائی ، ماحولیات، شمسی، ویسٹ مینجمنٹ یہاں تک رسائی حاصل کریں۔
- پلیٹو ہیلتھ۔ بائیوٹیک اینڈ کلینیکل ٹرائلز انٹیلی جنس۔ یہاں تک رسائی حاصل کریں۔
- ماخذ: https://aws.amazon.com/blogs/machine-learning/enhance-code-review-and-approval-efficiency-with-generative-ai-using-amazon-bedrock/
- : ہے
- : ہے
- : نہیں
- $UP
- 1
- 10
- 100
- 11
- 17
- 200
- 27
- 58
- 7
- 8
- 9
- a
- قابلیت
- ہمارے بارے میں
- رفتار کو تیز تر
- تک رسائی حاصل
- قابل رسائی
- احتساب
- درست طریقے سے
- حاصل
- اصل میں
- شامل کیا
- اس کے علاوہ
- ایڈیشنل
- پتہ
- جوڑتا ہے
- فائدہ
- AI
- یلگورتم
- یلگوردمز
- کی اجازت
- ساتھ
- ایمیزون
- ایمیزون ویب سروسز
- an
- تجزیہ
- تجزیہ
- تجزیے
- اور
- بشری
- کوئی بھی
- اے پی آئی
- اپلی کیشن
- درخواست
- ایپلی کیشنز
- منظوری
- منظور
- کی منظوری دے دی
- فن تعمیر
- کیا
- ارد گرد
- لڑی
- مصنوعی
- AS
- تشخیص کریں
- مدد
- اسسٹنٹ
- اوصاف
- اضافہ
- تصدیق شدہ
- کی توثیق
- اختیار کرنا
- آٹومیٹڈ
- خود کار طریقے سے
- میشن
- دستیاب
- AWS
- AWS کلاؤڈ فارمیشن
- واپس
- متوازن
- کی بنیاد پر
- BE
- کیونکہ
- رہا
- کیا جا رہا ہے
- BEST
- کے درمیان
- جسم
- دونوں
- لانے
- بلبلا
- تعمیر
- عمارت
- by
- فون
- کر سکتے ہیں
- حاصل کر سکتے ہیں
- پر قبضہ کر لیا
- کیس
- CD
- چیلنج
- چیلنجوں
- تبدیل
- تبدیل کر دیا گیا
- تبدیلیاں
- میں سے انتخاب کریں
- صاف
- بادل
- کوڈ
- کوڈ کا جائزہ
- کوڈ
- تبصروں
- وعدہ کرنا
- کامن
- مکمل
- پیچیدہ
- جامع
- سلوک
- انعقاد کرتا ہے
- نتائج
- خیالات
- مشتمل
- کنسول
- مواد
- سیاق و سباق
- بنائی
- پیدا
- اہم
- موجودہ
- اپنی مرضی کے مطابق
- اعداد و شمار
- بیٹی
- معاملہ
- فیصلہ
- پہلے سے طے شدہ
- کی وضاحت
- تعیناتی
- تعینات
- تعینات
- تعیناتی
- تعینات کرتا ہے
- ڈیزائن
- مطلوبہ
- تفصیل
- اس بات کا تعین
- ترقی یافتہ
- ڈیولپر
- ترقی
- آریھ
- اختلافات
- مختلف
- مشکل
- ڈائرکٹری
- دستاویزات
- کرتا
- نہیں
- مدت
- کو کم
- کارکردگی
- مؤثر طریقے سے
- کوشش
- یا تو
- اور
- ای میل
- آخر
- آخر سے آخر تک
- ختم ہو جاتا ہے
- انجنیئرنگ
- بڑھانے کے
- کو یقینی بنانے ہے
- درج
- اندر
- پوری
- ماحولیات
- خاص طور پر
- واقعہ
- مثال کے طور پر
- اس کے علاوہ
- توقع ہے
- تجربہ
- تجربات
- تلاش
- دریافت کرتا ہے
- توسیع
- نکالنے
- چہرہ
- سامنا
- خاندان
- چند
- مالی
- مالیاتی ادارے
- مل
- لچک
- پر عمل کریں
- کے بعد
- مندرجہ ذیل ہے
- کے لئے
- فاؤنڈیشن
- مفت
- سے
- مکمل طور پر
- تقریب
- فنکشنل
- فعالیت
- مزید
- فرق
- پیدا
- پیداواری
- پیداواری AI۔
- حاصل
- حاصل کرنے
- جاؤ
- Go
- جاتا ہے
- زیادہ سے زیادہ
- رہنمائی
- ہینڈل
- کنٹرول
- ہے
- ہونے
- he
- ہائی
- انتہائی
- ان
- پکڑو
- کس طرح
- تاہم
- HTML
- HTTP
- HTTPS
- انسانی
- i
- ID
- if
- وضاحت کرتا ہے
- اثر
- نفاذ
- پر عمل درآمد
- اثرات
- اہم
- کو بہتر بنانے کے
- in
- میں گہرائی
- شامل
- انڈکس
- اشارہ کرتا ہے
- معلومات
- انفراسٹرکچر
- ابتدائی
- ان پٹ
- اداروں
- ہدایات
- ضم
- ضم
- انٹیگریٹٹس
- میں
- متعارف کرواتا ہے
- پکارتے ہیں۔
- ملوث
- IT
- JSON
- جان
- علم
- نہیں
- زبان
- بڑے
- شروع
- معروف
- چھوڑ دو
- کم
- دو
- لائن
- LINK
- لنکڈ
- لسٹ
- اب
- بنا
- مین
- اہم
- بنا
- بناتا ہے
- انتظام
- میں کامیاب
- مینیجر
- مینیجر
- انداز
- دستی
- مئی..
- مراد
- سے ملو
- میٹا ڈیٹا
- شاید
- منٹ
- ماڈل
- ماڈل
- ترمیم
- زیادہ
- سب سے زیادہ
- ایک سے زیادہ
- تشریف لے جائیں
- ضرورت ہے
- نئی
- اگلے
- نہیں
- کوئی بھی نہیں
- اب
- تعداد
- متعدد
- of
- تجویز
- اکثر
- on
- صرف
- or
- دیگر
- دوسری صورت میں
- باہر
- بیان کیا
- پیداوار
- باہر
- مجموعی طور پر
- نگرانی
- مجموعی جائزہ
- خود
- پیرامیٹر
- زیر التواء
- انجام دیں
- کارکردگی کا مظاہرہ
- مدت
- پائپ لائن
- محور
- پلاٹا
- افلاطون ڈیٹا انٹیلی جنس
- پلیٹو ڈیٹا
- ممکن
- پوسٹ
- ممکنہ
- طاقت
- کو ترجیح دی
- تیار
- ضروریات
- دباؤ
- پچھلا
- پہلے
- آگے بڑھو
- عمل
- عمل
- پیدا
- پیدا کرتا ہے
- پروفائل
- پروگرامنگ
- پیش رفت
- منصوبے
- منصوبوں
- اشارہ کرتا ہے
- مناسب
- مجوزہ
- فراہم
- فراہم
- فراہم کرتا ہے
- عوامی طور پر
- مقصد
- دھکا
- دھکیلنا
- معیار
- استفسار میں
- فوری
- جلدی سے
- رینج
- وصول
- ریکارڈ
- کو کم
- کم
- کم
- حوالہ
- مسترد..
- جاری
- کی جگہ
- ذخیرہ
- درخواستوں
- ضرورت
- ضروریات
- کی ضرورت ہے
- وسائل
- جواب
- محدود
- نتائج کی نمائش
- واپسی
- واپسی
- کا جائزہ لینے کے
- جائزہ
- اضافہ
- کردار
- رن
- s
- اسی
- نمونہ
- محفوظ کریں
- محفوظ
- توسیع پذیر
- پیمانے
- اسکین کرتا ہے
- سیکنڈ
- سیکشنز
- محفوظ بنانے
- سیکورٹی
- انتخاب
- سینئر
- بھیجا
- بے سرور
- سروس
- سروسز
- مقرر
- قائم کرنے
- ہونا چاہئے
- دکھائیں
- اسی طرح
- سادہ
- سنگاپور
- So
- سافٹ ویئر کی
- سوفٹ ویئر کی نشوونما
- سافٹ ویئر انجینئرنگ
- حل
- حل
- کچھ
- ماخذ
- مخصوص
- تیزی
- خرچ کرتا ہے
- ڈھیر لگانا
- شروع کریں
- شروع
- شروع ہوتا ہے
- سترٹو
- مرحلہ
- مراحل
- سٹریم
- کارگر
- سلک
- ساخت
- اس طرح
- سویٹ
- مناسب
- خلاصہ
- حمایت
- ٹیبل
- لے لو
- لینے
- ٹیموں
- ٹیکنیکل
- ٹیکنالوجی
- سانچے
- ٹیسٹ
- ٹیسٹ
- سے
- کہ
- ۔
- دنیا
- ان
- ان
- وہاں.
- یہ
- وہ
- اس
- ان
- تین
- کے ذریعے
- سخت
- وقت
- وقت لگتا
- ٹائم لائنز
- عنوان
- کرنے کے لئے
- مل کر
- کے آلے
- اوزار
- تبدیلی
- شفافیت
- متحرک
- کوشش
- دو
- ٹھیٹھ
- افہام و تفہیم
- یونٹ
- اپ ڈیٹ کریں
- اپ ڈیٹ
- URL
- us
- استعمال کی شرائط
- استعمال کیس
- استعمال کیا جاتا ہے
- صارفین
- استعمال
- کا استعمال کرتے ہوئے
- v1
- قیمت
- مختلف
- اس بات کی تصدیق
- ورژن
- کی طرف سے
- حجم
- vs
- خطرے کا سامنا
- تھا
- we
- ویب
- ویب خدمات
- اچھا ہے
- تھے
- جب
- جس
- وسیع
- وسیع رینج
- گے
- ساتھ
- کے اندر
- بغیر
- کام
- کام کا بہاؤ
- کام کر
- کام کرتا ہے
- دنیا
- X
- یامل
- تم
- اور
- زیفیرنیٹ