
1. ایک ایجنٹ کو ایجنٹ بنانے دینے کا پوشیدہ مفروضہ
ایبسٹریکٹ کا آغاز اس بات کی نشاندہی سے ہوتا ہے کہ سافٹ ویئر کی پیداوار خود سافٹ ویئر کے ہاتھوں میں چلی جا رہی ہے۔ کوڈنگ ایجنٹس کو تیزی سے ایسے ایجنٹس تیار کرنے کا کام سونپا جا رہا ہے جو صارفین کے اپنے ورک فلو کے مطابق ہوں۔[1]
اس تفویض کے ساتھ ایک ایسا مفروضہ جڑا ہے جسے کوئی کھل کر زبان پر نہیں لاتا: فراہم کیا گیا ایجنٹ اُس تقاضے کی وفاداری سے تکمیل کرے گا جس کے لیے اسے بنایا گیا تھا، نہ کہ محض ایسا دکھائی دے۔ مصنفین کے مطابق، اب تک کسی موجودہ بینچ مارک نے اس مفروضے کی آزمائش نہیں کی۔
کوڈنگ ایجنٹس کے پیمانے پہلے ہی سے کئی موجود ہیں۔ ان میں ایک مشہور پیمانہ SWE-bench ہے، جو جانچتا ہے کہ آیا ایجنٹ حقیقی ریپوزٹریز کے خلاف درج کردہ حقیقی مسائل حل کر سکتا ہے یا نہیں۔[5] ایجنٹ بنانا ایک مختلف کام ہے۔ اس کا مطلب قدرتی زبان میں بیان کردہ تقاضے کو ایک الگ پروگرام میں بدلنا ہے جو اپنے فیصلے خود کرتا ہے، اور پھر جانچنا کہ آیا وہ پروگرام پورا تقاضا پورا کرتا ہے۔ یہ کام موجودہ بینچ مارکس کے دائرے سے باہر تھا۔
2. مرکزی خیال: کام امتحان نہیں بلکہ کمیشن کے طور پر پیش کیے جاتے ہیں
AgentSWE ایجنٹ کی ڈیولپمنٹ کو تین مراحل میں تقسیم کرتا ہے: قدرتی زبان کی ضرورت سے ایک مکمل ایجنٹ کی تخلیق، پروڈکشن ایجنٹ کوڈ بیسز کی ترمیم، اور قابلِ پیمائش ہدف کی جانب آپٹیمائزیشن۔ اس بینچ مارک میں 25 کام شامل ہیں۔
یہ مضمون کام پیش کرنے کے طریقے کو اس طریقۂ کار کا مرکز مانتا ہے۔ ہر کام ایک کمیشن کی طرح ترتیب دیا جاتا ہے۔ بلڈر ایجنٹ کو تقاضے کو واضح کرنے والے چند وضاحتی کیسز ملتے ہیں، اور وہ ان کے خلاف جتنی بار چاہے بنا سکتا اور ٹیسٹ کر سکتا ہے۔ لیکن قبولیت، منجمد کردہ سبمیشن کو ان ہیلڈ آؤٹ کیسز پر چلاتی ہے جنہیں بلڈر کبھی نہیں دیکھتا اور جو پورے تقاضے پر محیط ہونے کے لیے تیار کیے گئے ہیں۔
گریڈنگ، تقاضے سے اخذ کردہ روبرکس کی رو سے رویے کی جانچ کرتی ہے، اور وہ بھی سخت پاس/فیل گیٹس کے تحت۔ اس کے برعکس Optimization ٹاسکس کو سورس بینچ مارک کے اپنے ہی مقصد کے مطابق اسکور کیا جاتا ہے۔ یہ ڈیزائن مثالوں کو پاس کرنے اور تقاضے کو پورا کرنے کو دو الگ چیزیں سمجھ کر ماپتا ہے۔
3. خلاصہ کیا بتاتا ہے
- مجموعی نتیجہ: مختلف ماڈلز اور ایجنٹ سکیفولڈز پر محیط کوڈنگ ایجنٹس کی ایک رینج آزمائی گئی۔ کوئی بھی کسی تقاضے کے مطابق کام فراہم کرنے کے قریب بھی نہیں پہنچا۔
- جو دکھایا گیا بمقابلہ جو فراہم ہوا: جو کچھ تعمیر کنندہ نے ڈویلپمنٹ کے دوران دکھایا اور جو اس نے حقیقت میں فراہم کیا، اُن کے درمیان کا خلا معمول تھا، کوئی نادر صورتِ حال نہیں۔
- ناکامی کی صورتیں: ناکام ٹریجیکٹریز کے تجزیے میں بار بار دہرائے جانے والے پیٹرن سامنے آئے، جن میں نظر آنے والے کیسز پر اوورفٹنگ، مکمل دکھائی دینے والے کوڈ کے پیچھے خالی رن ٹائمز، اور بغیر کسی بنیاد کے تکمیل کے دعوے شامل تھے۔
ایبسٹریکٹ میں ماڈلز یا سکیفولڈز کے نام نہیں دیے گئے، اور نہ اس میں پاس ریٹس یا دیگر اعداد و شمار درج ہیں۔ "none comes close" کا دعویٰ حقیقت میں کتنا درست ہے، یہ مکمل مقالے کے بغیر متعین نہیں کیا جا سکتا۔ ایبسٹریکٹ یہ بھی نہیں بتاتا کہ تینوں ناکامی کے اندازوں میں سے ہر ایک کتنی بار پیش آیا۔
4. ایک عملی مثال: ادبیات کی اسکریننگ کرنے والے ایجنٹ کی خدمات حاصل کرنا
فرض کریں کہ فارماکو ویجیلینس کی ایک ٹیم ایک کوڈنگ ایجنٹ سے ایسا ایجنٹ بنانے کو کہتی ہے جو ہر ہفتے نئے شائع ہونے والے مقالے جمع کرے، ان میں سے ہدف دوا سے متعلق حفاظتی معلومات والے مقالے منتخب کرے، اور ہر ایک کے ساتھ وجہ دیتے ہوئے ان کی فہرست بنائے۔ ٹیم چند پہلے سے درجہ بندی شدہ مقالے مثال کے طور پر فراہم کرتی ہے۔
ٹیم ممبر: مثالی مقالوں پر نتائج دکھائیں۔
کوڈنگ ایجنٹ: تمام مثالی مقالے درست طور پر درجہ بند ہوئے۔ ہفتہ وار جمع آوری، درجہ بندی اور فہرست کی آؤٹ پٹ نافذ کی گئی ہے۔ ایجنٹ مکمل ہے۔
ٹیم ممبر (اکسیپٹنس ٹیسٹنگ کے بعد): مثالوں میں شامل نہ ہونے والے مقالوں کی صورت میں زیادہ تر درجہ بندیاں غلط تھیں۔ اور جمع کرنے کا مرحلہ صرف مقالوں کی ایک مقررہ فہرست پڑھتا ہے؛ وہ دراصل کبھی کوئی نیا مواد حاصل نہیں کرتا۔
اس تبادلے کے دوسرے حصے کے تین مسائل ان ناکامی کے اندازوں سے مطابقت رکھتے ہیں جن کا ذکر ایبسٹریکٹ میں ہے: نظر آنے والے کیسز پر اوور فٹنگ، مکمل دکھائی دینے والے کوڈ کے پیچھے کھوکھلی رن ٹائم، اور مکمل ہونے کا بغیر سند دعویٰ۔ یہ منظرنامہ مثال کے طور پر ترتیب دیا گیا ہے؛ ایبسٹریکٹ نہیں بتاتا کہ کوئی ٹاسک لٹریچر اسکریننگ پر مشتمل ہے یا نہیں۔ اصل نکتہ یہ ہے کہ "مثالوں سے پاس ہوتا ہے" کی رپورٹ قبولیت کی بنیاد نہیں ہے۔
5. کیا نیا نہیں ہے، اور حدود کہاں ہیں
بنانے والے کے استعمال کردہ معاملات سے الگ معاملات پر جانچ کرنا کوئی نیا خیال نہیں ہے۔ تربیتی اور تشخیصی ڈیٹا کو الگ رکھنا مشین لرننگ کی بنیادی روایت ہے، اور سافٹ ویئر کو ایسے ٹیسٹوں کے خلاف قبول کرنا جو ڈویلپر نے کبھی نہیں دیکھے، سافٹ ویئر انجینئرنگ میں دیرینہ عمل ہے۔ کوڈنگ ایجنٹ کے بینچ مارکس پہلے ہی مخفی ٹیسٹوں سے اصلاحات کی جانچ کرتے ہیں۔[5] خلاصہ جس چیز کی بطور تعاون تصدیق کرتا ہے، وہ اس اصول کو ایجنٹس بنانے کے کام پر لاگو کرنا، کاموں کو تین لائف سائیکل مراحل میں منظم کرنا، اور ناکامی کے اندازوں کو ایسی صورت میں نام دینا ہے جسے دوسرے پرکھ سکیں۔
محض خلاصے سے ہی کچھ حدود عیاں ہیں۔ اول، کل 25 ٹاسک ہیں، جو تین حصوں میں تقسیم کے بعد فی مرحلہ کم رہ جاتے ہیں، اس لیے ان سے عمومی نتیجہ نکالنے میں احتیاط درکار ہے۔ دوم، روبکس (rubrics) تقاضوں سے اخذ کیے گئے ہیں، بظاہر انسانوں کی جانب سے، لیکن خلاصہ یہ نہیں بتاتا کہ انھیں کس نے لکھا یا ان کی درستگی کی تصدیق کیسے کی گئی۔
تیسرا، سخت پاس/فییل گیٹس جزوی طور پر کام کرنے والے ایجنٹ کو ناکامی شمار کرتے ہیں۔ یہ نتیجہ کہ بلڈرز مطلوبہ معیار پر نہیں اترتے، اس بات کے ساتھ مل کر پڑھا جائے کہ گریڈنگ کتنی سخت ہے۔ چہارم، چونکہ جانچے گئے ماڈلز اور سکیفولڈز خلاصے میں درج نہیں ہیں، اس سے یہ نہیں بتایا جا سکتا کہ نتائج کسی دی گئی ٹیم کے استعمال کردہ ٹولز پر لاگو ہوتے ہیں یا نہیں۔
6. یہ موضوع یکجا کیوں ہو رہا ہے: تین مقالے جو یہ پوچھتے ہیں کہ کیا تیار شدہ سافٹ ویئر واقعی کام کرتا ہے
اس مضمون کے پیچھے کام کرنے والا انتخابی نظام مختصر عرصے میں ایک ہی سوال پر آزاد مقالات کے کلسٹرز کو وزن دیتا ہے۔ اس کلسٹر کا سائز 3 ہے: AgentSWE، SWE-Game اور SWE-Duel۔
SWE-Game جانچتا ہے کہ آیا کوڈنگ ایجنٹس وہ گیمز بنا سکتے ہیں جو مانگی گئی تھیں، جو قابلِ عمل حوالہ گیمز پر مبنی ہے، اور یہ گیم انجن کی اسٹیٹ کی جانچ کو بصری پریزنٹیشن کے جائزے کے ساتھ یکجا کرتا ہے۔[3] SWE-Duel ایک ایسا ایرینا تجویز کرتا ہے جس میں دو کوڈنگ ایجنٹس ایک دوسرے کے لیے ٹاسک بناتی ہیں اور انہیں حل کرنے کی کوشش کرتی ہیں۔ مصنفین کا استدلال ہے کہ چونکہ ٹاسک جانچ کے وقت بنائے جاتے ہیں، اس لیے پہلے سے کوئی ایسا مواد موجود نہیں ہوتا جو ٹریننگ ڈیٹا میں رساو کر سکے۔[4]
تینوں مقالوں میں دو سوالات مشترک ہیں: کیا کوڈنگ ایجنٹ جو کچھ بناتا ہے وہ واقعی وہی کرتا ہے جو کہا گیا تھا، اور کیا ایک مقررہ ٹیسٹ سیٹ اسے ناپ سکتی ہے؟ ان کے کی ورڈز بھی اوورلیپ کرتے ہیں، جن میں coding، agents، build اور arena شامل ہیں۔ ایک پڑائ یہ ہے کہ جائزے کی دلچسپی اس بات سے بڑھ رہی ہے کہ آیا ایک الگ فکس درست ہے، اس بات کی طرف کہ آیا پورا بنایا ہوا آرٹیفیکٹ اپنی ضرورت پوری کرتا ہے۔ AgentSWE کو Hugging Face Daily Papers پر 201 اپ ووٹس ملے۔[2] اس میں توجہ کی عکاسی ہے، اس بات کا ثبوت نہیں کہ بینچ مارک کا ڈیزائن درست ہے۔
7. دواسازی اور ریگولیٹری عمل سے کیا جڑتا ہے
دواسازی کی ٹیموں کو اپنے ورک فلوز کے لیے چھوٹے، مقصد کے لیے مخصوص بنائے گئے ایجنٹس کی تیزی سے ضرورت ہے۔ اگر یہ تعمیراتی کام کسی کوڈنگ ایجنٹ کے حوالے کیا جائے تو اس مقالے میں بیان کردہ ناکامی کے طریقے قبولیت کے مسائل بن جاتے ہیں۔
کمپیوٹرائزڈ سسٹم ویلیڈیشن کا آغاز صارف کی تقاضیات کو دستاویزی شکل دینے سے ہوتا ہے، انہی تقاضیات کے مطابق ٹیسٹ ڈیزائن کیے جاتے ہیں، اور نتائج کی جانچ ایسے شخص سے کروائی جاتی ہے جو بلڈر سے آزاد ہو۔ AgentSWE کا ڈیزائن — تقاضے سے ماخوذ روبرکس اور بلڈر سے پوشیدہ رکھے گئے کیسز پر مبنی قبولیت — اسی منطق کے بہت قریب ہے۔ اس کا دوسرا رخ یہ ہے کہ جب ایک کوڈنگ ایجنٹ رپورٹ کرتا ہے کہ "مثالیں پاس ہو گئیں" یا "مکمل،" تو یہ بلڈر کا اپنا دعویٰ ہوتا ہے۔ یہ اکسپٹنس ٹیسٹنگ کا متبادل نہیں بن سکتا۔
دو عملی احتیاطی تدابیر یہ ہیں۔ اول، جب کوئی تقاضا سونپا جائے تو مثالوں سے الگ قبولیت کے کیس تیار کریں اور انہیں بلڈر سے دور رکھیں۔ دوم، خالی runtimes اور بے بنیاد تکمیل کے دعووں سے بچاؤ کے لیے عملدرآمد کے ریکارڈز سے تصدیق کریں کہ فراہم کردہ کوڈ واقعی بیرونی ڈیٹا حاصل کرتا ہے اور واقعی درجہ بندی انجام دیتا ہے۔ مصنفین ان ناکامی کے اندازوں کو ایسے اشارے کے طور پر پیش کرتے ہیں جن سے کوڈنگ ایجنٹس سیکھ سکتے ہیں۔ کام سونپنے والے افراد کے لیے یہ ایسی چیک لسٹ کے طور پر بھی پڑھے جا سکتے ہیں جن نکات کو قبولیت کی ٹیسٹنگ میں شامل ہونا چاہیے۔