یونٹ 12 / 12

AI کوڈنگ ٹولز اور ورک فلو انٹیگریشن

فائدہ:

  • ایڈیٹر کی تکمیل، چیٹ اسسٹنٹ، CLI ایجنٹ اور CI آٹومیشن کیٹیگریز کو کاموں کے لیے نقشہ بنانے کی اہلیت
  • خطرے کے مطابق خود مختاری کی سطح کو ایڈجسٹ کرنے اور CLI ایجنٹوں پر 'پہلے منصوبہ بندی' کے نظم و ضبط کو لاگو کرنے کی صلاحیت
  • AI کے استعمال کو توثیق شدہ ٹول، تصدیقی گیٹ، شفافیت اور جوابدہی کی بنیاد پر ٹیم سسٹم میں تبدیل کرنے کی صلاحیت

اب تک ہم نے انفرادی کاموں (کوڈنگ، جائزہ، جانچ، ڈیبگنگ) میں AI کا استعمال سیکھا ہے۔ اس آخری یونٹ میں، ہم نے ٹکڑوں کو ایک ساتھ رکھا: مختلف AI کوڈنگ ٹولز کو جاننا، صحیح ٹول کو صحیح کام سے ملانا، اور انہیں محفوظ طریقے سے آپ کے یومیہ ترقیاتی بہاؤ میں شامل کرنا — ایڈیٹر سے لے کر ورژن کنٹرول تک، CI/CD پائپ لائن سے لے کر ٹیم گورننس تک۔ مقصد یہ ہے کہ گندگی کو "ہر وقت AI سے پوچھیں" کی عادت کو ایک مستقل اور قابل سماعت نظام میں تبدیل کرنا ہے۔

ہم گاڑیوں کی اقسام کو غیر جانبدار زمروں کے ساتھ کور کرتے ہیں (مخصوص پروڈکٹ کے نام تیزی سے بدل جاتے ہیں؛ زمرہ کی اہمیت یہ ہے کہ)۔ ہر زمرے میں ایک "سویٹ سپاٹ" اور ایک رسک پروفائل ہوتا ہے۔ مہارت یہ جانتی ہے کہ کس کام کو کتنی خود مختاری دینا ہے۔

AI کوڈنگ ٹولز کے زمرے

1. ایڈیٹر کی تکمیل۔ وہ پلگ ان جو آپ کے IDE (ترقیاتی ماحول جہاں آپ کوڈ لکھتے ہیں) میں ٹائپ کرتے وقت لائنز/بلاک تجویز کرتے ہیں۔ میٹھی جگہ: ان اسٹریم کی رفتار، بوائلر پلیٹ کوڈ۔ خطرہ: تنگ سیاق و سباق، بغیر سوچے سمجھے تجویز کو قبول کرنا۔

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

3. CLI ایجنٹس (ایجنٹ ٹولز)۔ ٹولز جو کمانڈ لائن سے چلتے ہیں، ایک سے زیادہ فائلوں کو پڑھ اور ان میں ترمیم کر سکتے ہیں، کمانڈز چلا سکتے ہیں، اور اپنے طور پر ملٹی سٹیپ ٹاسک کو انجام دے سکتے ہیں۔ سویٹ اسپاٹ: ملٹی فائل تبدیلیاں، بار بار کام، "اس پراپرٹی کو شامل کریں" قسم کی نوکریاں۔ خطرہ: اعلی خود مختاری = اعلی اثر؛ اگر بغیر نشان کے چھوڑ دیا جائے تو یہ وسیع اور مشکل تبدیلیاں پیدا کرتا ہے۔

4. لائن/آٹومیشن انضمام۔ CI (Continuous Integration) بوٹس جو PRs پر خودکار جائزے کے تبصرے چھوڑتے ہیں، ٹیسٹ تجویز کرتے ہیں، یا چینج لاگ تیار کرتے ہیں۔ میٹھی جگہ: پہلا چھاننے والا بغیر تھکاوٹ، مستقل مزاجی کے۔ خطرہ: شور، جھوٹا اعتماد۔

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

مرحلہ وار: ورک فلو میں AI کو سرایت کرنا

  1. ٹول پر کام کا نقشہ بنائیں۔ دھارے میں چھوٹا اضافہ → تکمیل؛ سمجھنا/ریفیکٹر/ٹیسٹ → چیٹ؛ ملٹی فائل، بار بار کام → CLI ایجنٹ؛ مسلسل پہلا فلٹر → CI انضمام۔
  2. خودمختاری کی سطح کا انتخاب کریں۔ ایجنٹ کو کتنی آزادی ہے؟ صرف پڑھنے کی تجویز یا فائل میں ترمیم + کمانڈ پر عمل درآمد؟ خطرے کے لیے ایڈجسٹ کریں۔
  3. سیاق و سباق کی پرورش کریں۔ ٹول میں پروجیکٹ کے قواعد (انداز، فن تعمیر، "نہ کرنا") کو مستقل طور پر متعارف کروائیں؛ بار بار وضاحت کرنے کے بجائے پروجیکٹ انسٹرکشن فائل کا استعمال کریں۔
  4. تصدیقی دروازے کو برقرار رکھیں۔ AI تبدیلی انسانی تبدیلی کی طرح ہے: یہ تالیف، جانچ، جائزہ، اور (اگر اہم ہے) ماہر کی منظوری سے گزرتی ہے۔ AI افتتاحی PR منظوری کو نظرانداز نہیں کرتا ہے۔
  5. پیمائش کریں اور ایڈجسٹ کریں۔ دیکھیں کہ واقعی کیا تیز ہوتا ہے، جہاں اصلاح کا بوجھ بڑھتا ہے۔ پرن آؤٹ استعمال جو کام نہیں کرتے۔

تین چھوٹے کیسز

کیس 1 - CLI ایجنٹ نے ملٹی فائل کا نام تبدیل کیا۔ ایک ٹیم 60 فائلوں میں پھیلے ہوئے تصور کا نام بدل دے گی۔ انہوں نے ایک CLI ایجنٹ کو ٹاسک دیا، پہلے پلان مانگا، پلان کو منظور کیا، پھر تبدیلی کی اور پورے ٹیسٹ سویٹ کو چلایا۔ ایجنٹ 3 فائل میں ایک ایج کیس چھوٹ گیا۔ ٹیسٹ نے اسے پکڑا، اسے ٹھیک کیا۔ یہ کام، جس میں دستی طور پر تقریباً 3 گھنٹے لگے، نگرانی کے ساتھ 50 منٹ میں مکمل ہو گئے۔

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

کیس 3 - CI جائزہ بوٹ پہلا فلٹر بن گیا۔ ایک ٹیم نے ایک بوٹ بنایا جو PRs پر خودکار AI جائزے کے تبصرے چھوڑتا ہے۔ ایک بار جب بوٹ نے چیک کی منسوخی اور طرز کے مسائل کو پکڑ لیا، انسانی جائزہ لینے والے اپنا وقت کاروباری منطق کے لیے وقف کرنے کے قابل ہو گئے۔ تاہم، ٹیم نے واضح کیا کہ بوٹ نے "منظوری" فراہم نہیں کی: کم از کم ایک انسانی منظوری کی ضرورت ہے۔ شور کو کم کرنے کے لیے، انہوں نے کشتی کو صرف تیز/درمیانی شدت کا شور چھوڑنے کے لیے ٹیون کیا۔

چار کاپی ایبل ٹیمپلیٹس

CLI ایجنٹ کے لیے "پہلے منصوبہ بندی کریں" نظم و ضبط:

ٹاسک: {{صاف، تنگ کام}}قبولیت کا معیار: {{قابل پیمائش نتیجہ}}پابندی: صرف {{مندرجہ ذیل ڈائریکٹری/فائلز}} پر کام کریں؛ نیا انحصار شامل کرنا۔ سب سے پہلے بغیر تبدیلی کے ایک منصوبہ پیش کریں: کون سی فائلیں، کیا بدلے گا، کون سے ٹیسٹ چلائے جائیں گے۔ میرے منصوبے کی منظوری کا انتظار کریں۔ پھر اسے مرحلہ وار لاگو کریں، ہر قدم پر ٹیسٹ چلائیں۔

پروجیکٹ انسٹرکشن فائل (آلات کا مستقل سیاق و سباق):

اس پروجیکٹ میں AI ٹولز کے لیے مستقل اصول:- زبان/ورژن: {{...}}۔ طرز: {{...}}.- تعمیراتی رکاوٹ: {{مثلاً پرتوں کے درمیان سمت}}۔ کبھی نہیں: راز کو سرایت کرنا، پروڈکشن ڈیٹا کا استعمال کرتے ہوئے، {{حرام لائبریریاں}}۔ عوامی API کے دستخط کو بغیر پوچھے تبدیل کرنا۔ - جب شک ہو تو رک کر پوچھیں۔

ٹاسک ٹول میپنگ کا فیصلہ:

میں درج ذیل کام کی وضاحت کرتا ہوں: {{task}}۔ مجھے کس قسم کے ٹولز کے ساتھ یہ کرنا چاہیے: (a) ایڈیٹر کی تکمیل، (b) چیٹ اسسٹنٹ، (c) CLI ایجنٹ، (d) CI آٹومیشن؟ اپنی عقل، خطرہ اور خودمختاری کی تجویز کردہ سطح لکھیں (صرف تجویز / فائل تبدیل کریں / کمانڈ چلائیں)۔

CI جائزہ بوٹ ضابطہ اخلاق:

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

کمزور فوری / مضبوط اشارہ

کمزور: (CLI ایجنٹ کو) "ادائیگی کے ماڈیول کو بہتر بنائیں۔"
مضبوط: (CLI ایجنٹ کو) "صرف src/payments/ کے تحت چلایا جاتا ہے۔ ٹاسک: recursive validation logic کو ریفنڈ() فنکشن سے ایک ہی مددگار میں نکالیں؛ برتاؤ اور دستخط تبدیل نہیں ہوتے ہیں۔ پہلے پلان پیش کریں اور میری منظوری کا انتظار کریں؛ پھر جانچیں/ادائیگیوں/ انحصار کا پیکج چلائیں اور چلائیں۔ نیا شامل کریں۔"

مضبوط ورژن دائرہ کار کو کم کرتا ہے، قبولیت کے معیار اور رکاوٹوں کو متعین کرتا ہے، اور "پہلے منصوبہ بندی" کو نافذ کرتا ہے۔ مبہم "بہتر کریں" کے مطالبات وسیع اور بے قابو تبدیلیوں کی بنیادی وجہ ہیں۔

گاڑی کی کلاس

جس میں وہ بہترین ہے۔

خودمختاری

معائنہ وزن

ایڈیٹر کی تکمیل

دھارے میں چھوٹا اضافہ

کم

روشنی (فوری پڑھنا)

چیٹ اسسٹنٹ

سمجھنا، جانچنا، ریفیکٹر

درمیانہ

میڈیم (آؤٹ پٹ تصدیق)

CLI ایجنٹ

ملٹی فائل، تکراری

اعلی

بھاری (منصوبہ + مکمل جائزہ)

CI آٹومیشن

مسلسل پہلا فلٹر

درمیانہ

درمیانہ (قاعدہ + انسانی منظوری)

ٹیم گورننس: انفرادی مہارت سے مشترکہ نظام تک

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

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

عام غلطیاں

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

خلاصہ میں

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

درخواست کا کام

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

چیک لسٹ

  • میں AI کوڈنگ ٹول کیٹیگریز اور ہر ایک کی میٹھی جگہ کے درمیان فرق کر سکتا ہوں۔
  • میں کام کو گاڑی کی صحیح کلاس اور مناسب خود مختاری کی سطح پر نقشہ بناتا ہوں۔
  • میں ٹولز کو مستقل پروجیکٹ سیاق و سباق (انسٹرکشن فائل) دیتا ہوں۔
  • [ ] میں CLI ایجنٹوں پر تنگ دائرہ کار اور "پہلے منصوبہ بندی" کے نظم و ضبط کا اطلاق کرتا ہوں۔
  • میں AI تبدیلیوں کو انہی تصدیقی دروازوں سے گزرتا ہوں جس طرح انسانی تبدیلیاں ہوتی ہیں۔
  • میں ٹیم کی سطح پر ایک توثیق شدہ ٹول، ڈیٹا رول، شفافیت اور جوابدہی کے فریم ورک کی وکالت کرتا ہوں۔

ماڈیول امتحان

1. کوڈنگ اسسٹنٹ کا بنیادی زبان کا بنیادی ماڈل اصل میں کیا کرتا ہے جب یہ کوڈ تیار کرتا ہے؟

  • A) دیے گئے سیاق و سباق کی بنیاد پر پیٹرنلی طور پر ممکنہ تسلسل کی پیش گوئی کرتا ہے ✔
  • ب) کوڈ کو اصل میں مرتب اور چلا کر صحیح نتیجہ کی ضمانت دیتا ہے۔
  • C) یہ پورے انٹرنیٹ پر لائیو کوڈ کو اسکین کرتا ہے اور سب سے درست کاپی کرتا ہے۔
  • D) کوڈ کی منطق کو انسانی انجینئر کی طرح سمجھتا ہے اور نیت کو سمجھتا ہے۔

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

2. آپ اسے کیا کہتے ہیں جب AI قائل طور پر کسی غیر موجود فنکشن یا لائبریری کو تیار کرتا ہے، اور واحد حقیقی تریاق کیا ہے؟

  • ا) اسے تالیف کی غلطی کہا جاتا ہے۔ تریاق مضبوط سامان ہے۔
  • ب) اسے ہیلوسینیشن کہتے ہیں۔ تریاق کوڈ کی تصدیق کرنا ہے اور ہر ایک API استعمال کیا جاتا ہے ✔
  • ج) اسے رجعت کہتے ہیں۔ تریاق ماڈل کو دوبارہ شروع کرنا ہے۔
  • D) اسے سیاق و سباق سے زیادہ بہاؤ کہا جاتا ہے۔ تریاق پرامپٹ کو مختصر کرنا ہے۔

تفصیل: اسے ہیلوسینیشن کہا جاتا ہے اور یہ سافٹ ویئر میں سب سے مہنگے کیڑے میں سے ایک کا سبب بنتا ہے۔ صرف اصلی تریاق تصدیق ہے: اس بات کی تصدیق کرنا کہ ہر فنکشن، API، اور استعمال شدہ پیکیج اصل میں موجود ہے اور یہ کہ کوڈ کام کرتا ہے۔ ماڈل کا پراعتماد لہجہ درستگی کا ثبوت نہیں ہے۔

3. AI کے ساتھ کوڈ تیار کرتے وقت کون سا نقطہ نظر سب سے زیادہ آؤٹ پٹ کے معیار اور مستقل مزاجی کو بہتر بناتا ہے؟

  • A) کوئی سیاق و سباق بتائے بغیر 'یہ مجھے لکھو' کہہ کر ماڈل کو رہا کرنا
  • ب) سب سے طویل اور فینسی پرامپٹ لکھنا
  • C) ان پٹ/آؤٹ پٹ کنٹریکٹ، ایج کیسز، ورژن اور اسٹائل کی مثالیں بیان کریں اور دیں۔
  • D) تیار کردہ کوڈ کو بغیر پڑھے براہ راست یکجا کرنا

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

4. AI کے ساتھ غیر ملکی کوڈبیس کی تلاش کرتے وقت، فنکشن کا نام 'validateAndSave' ہو سکتا ہے لیکن AI ڈائجسٹ غلط ہو سکتا ہے۔ صحیح نقطہ نظر کیا ہے؟

  • A) AI خلاصہ پر مکمل اعتماد جیسا کہ نام خود وضاحتی ہے۔
  • ب) فنکشن کو پڑھے بغیر براہ راست تبدیل کرنا
  • ج) صرف فنکشن کا نام دیکھ کر فیصلہ کرنا
  • D) AI کی تفصیل کو ایک مفروضے کے طور پر سمجھیں اور کوڈ میں لائن کے لحاظ سے تنقیدی دعووں کی تصدیق کریں ✔

وضاحت: AI کوڈ میں موجود نام کو دیکھ کر آپ کو بتا سکتا ہے کہ 'ایسا لگتا ہے کہ یہ کیا کر رہا ہے'، لیکن حقیقت میں منطق مختلف ہو سکتی ہے (یا اس سے بھی الٹ)۔ لہذا AI وضاحت ایک مفروضہ ہے؛ تنقیدی دعوے، خاص طور پر جن میں سیکورٹی، اتھارٹی یا رقم کا بہاؤ شامل ہے، متعلقہ خطوط پر بصری طور پر تصدیق کی جانی چاہیے۔

5. AI کی مدد سے کوڈ کے جائزے میں 'AI نے دیکھا، یہ واضح ہے' کہنے میں سب سے بڑا خطرہ کیا ہے؟

  • A) AI غلط منفی پیدا کر سکتا ہے؛ حقیقی یاد شدہ غلطیاں غلط اعتماد پیدا کرتی ہیں ✔
  • ب) AI کا جائزہ بہت سست ہے اس لیے یہ وقت ضائع کرتا ہے۔
  • C) ٹیم سمجھ نہیں پاتی کیونکہ AI صرف انگریزی میں تبصرہ کرتا ہے۔
  • D) PR متضاد نہیں ہوتا ہے کیونکہ AI ہمیشہ حد سے زیادہ تشریح کرتا ہے۔

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

6. سب سے خطرناک جال کیا ہے جو اس وقت ہوتا ہے جب آپ صرف AI کو کوڈ اور پرنٹ ٹیسٹ دیتے ہیں؟

  • A) AI ہمیشہ بہت سارے ٹیسٹ لکھتا ہے اور کوڈ بیس کو پھول دیتا ہے۔
  • B) AI کوڈ کے موجودہ (شاید غلط) رویے کو 'درست' کے طور پر جانچتا ہے اور بگ کو ٹھیک کرتا ہے ✔
  • C) ٹیسٹ لکھتے وقت AI خود بخود کوڈ کو حذف کر دیتا ہے۔
  • D) AI نہ صرف خوش راہ کے لیے بلکہ ہمیشہ کنارے کے معاملے کے لیے ٹیسٹ لکھتا ہے۔

وضاحت: AI کوڈ کو دیکھتا ہے اور دعوے لکھتا ہے جو موجودہ طرز عمل کی جانچ کرتا ہے۔ اگر کوڈ شروع سے ہی غلط ہے تو، AI اس غلط رویے کو 'درست' کے طور پر ٹھیک کرتا ہے۔ لہٰذا، ٹیسٹ کی توقعات مطلوبہ اصول (تفصیلات) کے مطابق لکھی جائیں، کوڈ کے موجودہ آؤٹ پٹ کے مطابق نہیں۔

7. AI کے ساتھ بگ کو ڈیبگ کرتے وقت مفروضوں کی درستگی کا سب سے زیادہ تعین کیا ہوتا ہے؟

  • A) پرامپٹ کتنی شائستگی سے لکھا جاتا ہے۔
  • ب) سوال کتنی بار دوبارہ پوچھا گیا؟
  • C) ماڈل کو فراہم کردہ ثبوت کا معیار: مکمل غلطی کا پیغام، اسٹیک ٹریس، ان پٹ اور متوقع برتاؤ ✔
  • D) کوڈ کس رنگ کی تھیم میں لکھا گیا ہے؟

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

8. تجزیہ کے لیے AI کو پروڈکشن لاگ دینے سے پہلے سب سے اہم مرحلہ کیا ہے؟

  • A) لاگ کو جیسا کہ ہے، پورے دن کا احاطہ کرنا
  • ب) لاگ کو پہلے بڑے حروف میں تبدیل کریں۔
  • C) حروف تہجی کی ترتیب میں لاگ لائنوں کو ترتیب دینا
  • D) ذاتی ڈیٹا اور راز کو چھپانا اور صرف متعلقہ ونڈو دینا ✔

تفصیل: خام پروڈکشن لاگز میں IP، ای میل، سیشن ID، ٹوکن اور بعض اوقات کھلے راز ہوتے ہیں۔ بغیر ماسک لگائے انہیں AI ٹول میں چسپاں کرنا رازداری کی سنگین خلاف ورزی ہے۔ مزید برآں، لاگ کو ایک تنگ ٹائم ونڈو میں فلٹر کیا جانا چاہیے۔ لیکن پہلی ضرورت حساس ڈیٹا کو صاف کرنا ہے۔

9. کیا کرنا چاہیے اگر AI کہے کہ لاگ تجزیہ میں دو واقعات 'ایک ساتھ' ہوئے اور ایک کو اصل وجہ قرار دے؟

  • A) ارتباط کو سبب کے طور پر نظر انداز کرنا اور میٹرکس اور کوڈ کے ساتھ دعوے کی تصدیق کرنا ✔
  • ب) وجہ کو قطعی تسلیم کرنا کیونکہ AI وقتی تعلق قائم کرتا ہے۔
  • ج) پہلے ملزم جزو کو فوری طور پر دوبارہ شروع کرنا
  • D) لاگز کو مکمل طور پر حذف کرنا اور انہیں دوبارہ جمع کرنا

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

10. اے آئی کے ساتھ ری فیکٹرنگ کرتے وقت غیر گفت و شنید سنہری اصول کیا ہے اور اسے کیا تحفظ فراہم کرتا ہے؟

  • A) کوڈ چھوٹا ہونا چاہئے؛ لائنوں کی تعداد اس بات کی ضمانت دیتی ہے۔
  • ب) رویے میں کوئی تبدیلی نہیں؛ موجودہ رویے کو پکڑنے والے ٹیسٹ اس بات کو یقینی بناتے ہیں ✔
  • ج) کوڈ میں مزید تبصرے ہیں؛ AI اس کی ضمانت دیتا ہے۔
  • D) پوری فائل کو ایک ساتھ دوبارہ لکھنا؛ ایجنٹ اس کی ضمانت دیتا ہے۔

وضاحت: ری فیکٹرنگ کوڈ کے بیرونی رویے کو تبدیل کیے بغیر اس کی اندرونی ساخت کو بہتر بنانا ہے۔ سنہری اصول یہ ہے کہ سلوک مستقل رہتا ہے۔ جو چیز اس بات کو یقینی بناتی ہے وہ جانچ ہے: ایک ٹیسٹ نیٹ جو موجودہ رویے کو تبدیل کرنے سے پہلے اسے پکڑتا ہے ہر قدم کے بعد سیٹ اپ اور چلایا جاتا ہے۔ ٹیسٹ نیٹ کے بغیر ری فیکٹرنگ ایک جوا ہے۔

11. دستاویزات کی تیاری میں وہ کون سی پرت ہے جسے AI نہیں جان سکتا اور اسے بنانا خطرناک ہے؟

  • A) انسٹالیشن کے مراحل کو کیسے چلائیں۔
  • ب) فنکشن کی پیرامیٹر لسٹ
  • C) 'کیوں' کا جواز ڈیزائن کا فیصلہ اس طرح کیا گیا ✔
  • D) کوڈ کس زبان میں لکھا گیا ہے؟

تفصیل: AI کوڈ سے 'کیا/کیسے' پرت (فنکشن کیا کرتا ہے، یہ کیسے سیٹ اپ ہے) نکال سکتا ہے۔ لیکن یہ 'کیوں' پرت کو نہیں جان سکتا (فیصلے کے لئے ڈیزائن کی دلیل، حد کی قدر کی وجہ)۔ ایک بنا ہوا 'وجہ' کسی جواز سے زیادہ خطرناک ہے۔ کوڈ کے مالک کو اس پرت کو شامل کرنا چاہیے۔

12. ایک ڈویلپر کو کیا کرنا چاہیے اگر وہ کسی فوری مسئلے کو حل کرتے ہوئے ایک غیر منظور شدہ AI ٹول میں لائیو API کلید پر مشتمل کنفیگریشن فائل پیسٹ کرنا چاہتے ہیں؟

  • A) رفتار کے لیے، فائل کو جیسا ہے پیسٹ کریں اور پھر چیٹ کو ڈیلیٹ کریں۔
  • ب) فائل کے آخر میں ایک 'خفیہ' نوٹ شامل کریں اور اسے بھیجیں۔
  • C) کلید چھوڑ دیں اور صرف فائل کا نام تبدیل کریں۔
  • D) رازوں کو ہٹائیں / ماسک کریں اور صرف ضروری غیر حساس سیاق و سباق دیں ✔

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

13. AI سے تیار کردہ کوڈ ٹیسٹنگ پاس کرتا ہے اور پیداوار میں چلتا ہے۔ کیا یہ ثابت کرتا ہے کہ کوڈ محفوظ ہے؟

  • A) نہیں؛ 'کام کرنے' کا مطلب محفوظ نہیں ہے، سیکیورٹی کے لیے توثیق کی ایک الگ پرت کی ضرورت ہوتی ہے ✔
  • ب) ہاں؛ ٹیسٹ پاس کرنے والا کوڈ تعریف کے لحاظ سے محفوظ ہے۔
  • ج) جی ہاں؛ اسے پیداوار میں چلانے سے تمام کمزوریاں ختم ہوجاتی ہیں۔
  • D) نہیں؛ لیکن سیکورٹی صرف اس صورت میں اہمیت رکھتی ہے جب کوڈ سست ہو۔

وضاحت: 'کام کرنا' 'محفوظ' جیسا نہیں ہے۔ یہاں تک کہ اگر کوڈ میں ایس کیو ایل انجیکشن جیسی کمزوری ہے، تو یہ جانچ پاس کر سکتا ہے اور آسانی سے چل سکتا ہے۔ کمزوری تب ہی ظاہر ہوتی ہے جب حملہ آور اسے ڈھونڈتا ہے۔ لہذا، درستگی کے علاوہ، سیکورٹی پر مبنی جائزہ اور SAST جیسے اسکین کو ایک الگ پرت کے طور پر انجام دیا جانا چاہیے۔

14. CLI ایجنٹ کو ملٹی فائل ٹاسک دیتے وقت سب سے محفوظ نظم و ضبط کیا ہے (خود مختار ٹول جو فائلوں میں ترمیم کر سکتا ہے اور کمانڈ چلا سکتا ہے)؟

  • A) ایجنٹ کو 'اس ماڈیول کو بہتر بنائیں' اور پوری آزادی دینا
  • ب) تنگ دائرہ کار اور قبولیت کا معیار دینا، پہلے کسی منصوبے کا مطالبہ کرنا، اس کی منظوری دینا، اسے مرحلہ وار نافذ کرنا، اور ٹیسٹ چلانا ✔
  • C) ایجنٹ کی تمام تبدیلیوں کا جائزہ لیے بغیر انہیں براہ راست ضم کر دیں۔
  • D) ایجنٹ کو پیداواری ماحول اور خفیہ ڈیٹا تک غیر محدود رسائی دینا

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

15. سیکیورٹی کے لیے اہم سافٹ ویئر (جیسے ادائیگی یا تصدیق) میں AI سے تیار کردہ کوڈ سے پیدا ہونے والی ذمہ داری کس کی ہے؟

  • A) چونکہ کوڈ AI سے آتا ہے، یہ گاڑی فراہم کرنے والے میں ہے۔
  • ب) اگر AI کافی ترقی یافتہ ہے، تو کسی کے پاس نہیں ہے۔ تصدیق کرنے کی ضرورت نہیں ہے
  • ج) ٹیم/انجینئر جو کوڈ کا معائنہ، جمع اور تقسیم کرتا ہے۔ AI رضامندی کی جگہ نہیں لیتا ✔
  • D) صرف وہ شخص جو پرامپٹ لکھتا ہے، وہ نہیں جو اس کا جائزہ لیتے ہیں۔

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