لمبے افق کے کوڈ جنریشن کے لیے DeNovoSWE ڈیٹا سیٹ جاری

icon MarsBit
بانٹیں
AI summary iconخلاصہ

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

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

DeNovoSWE

کاغذ کا لنک: https://arxiv.org/pdf/2606.10728

رپوزٹری لنک: https://github.com/AweAI-Team/DeNovoSWE

ڈیٹا لنک: https://huggingface.co/collections/AweAI-Team/denovoswe

Divide & Conquer اور Critic & Repair مکانیزمز کے ذریعے اعلیٰ معیار کے ڈیٹا سیٹ کو تعمیر کیا گیا اور لمبی مدتی SWE ٹاسکس کے لیے اسکیلنگ کامیابی سے حاصل کی گئی، جس سے 4,818 حقیقی ڈیٹا پر مشتمل ایک اوپن سورس، اعلیٰ معیار کا لمبی مدتی SWE ٹاسک ڈیٹا سیٹ تیار ہوا — یہ کام Code Agent کی لمبی مدتی صلاحیتوں کے تربیت کے لیے بڑے پیمانے پر ڈیٹا فراہم کرتا ہے اور Code Agent کی لمبی مدتی ٹاسک صلاحیت میں بڑا اضافہ کرتا ہے۔

DeNovoSWE

کاغذ میں عنوان کی مشکل کے مطابق اسکورنگ اور فلٹرنگ کا طریقہ بھی فراہم کیا گیا ہے، جس سے مشکل سوالات کے تناسب اور ٹریک جوڈ کے درمیان توازن کا مسئلہ مؤثر طریقے سے کم ہو جاتا ہے۔

DeNovoSWE

تجربیات نے ظاہر کیا کہ DeNovoSWE پر تربیت یافتہ Qwen3-30B-A3B-Instruct، BeyondSWE-Doc2Repo پر 5.8% سے بڑھ کر 47.2% ہو گیا اور NL2RepoBench پر 4.3% سے بڑھ کر 23.0% ہو گیا، جس سے لمبی مدتی ڈیٹا کے ذریعے ریپوزٹری سطح کے کوڈ جنریشن کی صلاحیت میں واضح بہتری نظر آتی ہے۔

پورے ریپو کو ایک دستاویز سے دوبارہ تعمیر کریں

گزشتہ سال، Scale-SWE جیسے بڑے پیمانے پر SWE ڈیٹا کے سکیلنگ کے ساتھ، کوڈ ایجنٹس نے SWE-bench جیسے حقیقی سافٹ ویئر انجینئرنگ کے کاموں پر تیزی سے ترقی کی۔ لیکن جب مدلز "ایک ایشو کو درست کرنا" اور "کچھ لائنوں کے بگ کو تبدیل کرنا" میں زیادہ ماہر ہو گئے، تو ایک زیادہ اہم سوال سامنے آیا: کیا ایجنٹس کے پاس لمبے عرصے تک کا سافٹ ویئر انجینئرنگ کا مہارت ہے؟ BeyondSWE-Doc2Repo اور NL2RepoBench کے سرٹھے مدلز کے نتائج کے مطابق، اس کا اثر نہیں ہوا۔

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

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

اچھی کوالٹی کا "ریپوزٹری کو صفر سے بنائیں" ٹاسک ڈاکیومنٹ

ڈاکیومنٹ-ٹو-ریپوزٹری جنریشن میں، دستاویز صرف README نہیں ہوتی اور نہ ہی ایک سادہ API فہرست ہوتی ہے۔ اس کا بنیادی کردار اس پورے ریپوزٹری کو دوبارہ تشکیل دینے کا واحد داخلی نقطہ ہوتا ہے۔

ایک اعلیٰ معیار کا ٹاسک دستاویز کم از کم دو مرکزی معیاروں کو پورا کرتا ہے۔

سب سے پہلے، یہ اچھی طرح سے منظم ہونا چاہیے۔

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

دوم، اسے قابل اعتماد جائزہ کے نقطہ نظر سے ہونا چاہیے۔

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

حقیقی طور پر اچھی دستاویزات کو ایوانیشن کے لیے مبنی اہم سلوک کی وضاحت کرنی چاہیے: جس میں import path، عوامی API، ان پٹ آؤٹ پٹ، ڈیفالٹ پیرامیٹرز، ایکسپشن سلوک، کنفیگریشن آپشنز، ماڈل سٹرنگز، واپسی فیلڈز وغیرہ شامل ہوں، اور تقریباً کیا فنکشنلٹی مکمل کرنی ہے اس کا بھی ذکر کریں۔ یعنی، دستاویزات ایسا ہونی چاہئیں جو انسٹرمنٹ کو ٹیسٹ کرنا ممکن بنائیں، لیکن اس کا کوڈ کا نقل نہ بن جائیں۔

یہی DeNovoSWE کا مرکزی خیال ہے: دستاویزات کو پڑھنے میں آسان، عملی اور تصدیق کے قابل بنانا۔

DeNovoSWE طریقہ

DeNovoSWE نے "ڈاکیومنٹ سے مکمل ریپوزٹری بنانا" کو ایک بڑے پیمانے پر، قابل تصدیق لمبی مدتی سافٹ ویئر انجینئرنگ کا کام بنایا ہے۔ یہ دستی طور پر لکھے گئے ڈاکیومنٹس نہیں ہیں، بلکہ ایک sandboxed multi-agent workflow کے ذریعے آٹومیٹک طور پر اعلیٰ معیار کے امثلہ تخلیق کرتے ہیں۔ پورا طریقہ دو مراحل میں خلاصہ کیا جا سکتا ہے: Divide اور Conquer۔

ڈیوائیڈ مرحلے میں، سسٹم پہلے ٹارگٹ ریپوزٹری کا تجزیہ کرتا ہے اور اسے کئی ریپوزٹری کی صلاحیتوں میں تقسیم کرتا ہے۔

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

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

کنکر کے مرحلے میں، DeNovoSWE ایک Draft-Critic-Repair مکینزم کا استعمال کرتا ہے جس میں صلاحیتوں کے لحاظ سے دستاویزات تیار کی جاتی ہیں۔ Draft ایجنٹ پہلے ایک خاکہ تیار کرتا ہے؛ Critic ایجنٹ یہ جانچتا ہے کہ کیا کسی اہم API، رویے کے معاہدے یا ساختی معلومات کو چھوڑ دیا گیا ہے؛ Repair ایجنٹ پھر فیڈ بیک کے مطابق دستاویزات کو درست کرتا ہے۔ یہ حلقوں کا عمل تکرار ہوتا رہتا ہے جب تک کہ ہر صلاحیت کا حصہ واضح، مکمل اور evaluation کے ساتھ مطابقت رکھنے لگے۔

آخر کار، مختلف صلاحیت کے دستاویزات کو ایک مکمل کام کے دستاویز میں ضم کر دیا جائے گا، جو ایجنٹ کو صفر سے ریپو بنانے کا واحد بنیادی ذریعہ بنے گا۔

مشکلیت: کیوں یہ لمبی مدتی کام ہے؟

DeNovoSWE کا کام کا درجہ ایک بنیادی تبدیلی کی وجہ سے ہے: یہ اب issue-level فکسنگ نہیں بلکہ پورے ریپوزٹری کی تخلیق ہے۔

روایتی SWE کے کاموں میں، ایجینٹ عام طور پر ایک پہلے سے موجود ریپوزٹری کا سامنا کرتا ہے، جس میں صرف بگ کی پہچان، مقامی کوڈ میں تبدیلی اور ٹیسٹ پاس کرنے کی ضرورت ہوتی ہے۔

DeNovoSWE میں، ایجنٹ ایک صاف شدہ ماحول کا سامنا کرتا ہے: اصل سورس کوڈ اور ٹیسٹز کو حذف کر دیا جاتا ہے، git تاریخ کو ری سیٹ کر دیا جاتا ہے، اور ممکنہ لیکیج چینلز جیسے کیش، site-packages کے باقیات، pip wheel، اور عارضی کمپائلڈ پروڈکٹس کو بھی صاف کر دیا جاتا ہے۔ اس کا مطلب ہے کہ ایجنٹ کو پورے ریپوزٹری کو دوبارہ تعمیر کرنے کے لیے بالکل ڈاکیومینٹیشن پر انحصار کرنا ہوگا۔ اسے منصوبے کی ساخت کی منصوبہ بندی کرنی ہوگی، ماڈیول فائلز بنانی ہوں گی، پبلک انٹرفیسز تعریف کرنی ہوں گی، فائلز کے درمیان تعامل کو لاگو کرنا ہوگا، انحصار اور ترتیبات کو سنبھالنا ہوگا، اور متعدد ادوار کے ایڈٹس اور ٹیسٹ فیدبیک کے دوران خطاﺅں کو لگاتار درست کرنا ہوگا۔

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

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

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

DeNovoSWE

تجربی نتائج

DeNovoSWE نے 4818 اعلیٰ معیار کے دستاویز سے ریپوزٹری کے ٹاسک کے امثال تیار کیے۔ یہ ایک قابل انجام، قابل جائزہ اور قابل تربیت لمبی مدتی سافٹ ویئر انجینئرنگ ماحول ہے۔

DeNovoSWE

DeNovoSWE

تجربی نتائج سے پتہ چلتا ہے کہ DeNovoSWE نے ماڈل کی لمبی مدتی ریپوزٹری جنریشن کی صلاحیت میں اہم بہتری لائی ہے۔ Qwen3-30B-A3B-Instruct پر، اصل ماڈل نے BeyondSWE-Doc2Repo پر صرف 5.8% اور NL2RepoBench پر صرف 4.3% کا اداء کیا۔ عام issue-level SWE ڈیٹا کا استعمال کرتے ہوئے Scale-SWE-Agent کی صلاحیت 29.2% اور 18.3% تک بڑھ گئی، جس سے پتہ چلتا ہے کہ عام SWE ڈیٹا میں واقعی منتقلی کا اثر ہے۔ لیکن جب ماڈل کو DeNovoSWE کے ساتھ تربیت دی گئی، تو اس کی کارکردگی مزید بڑھ کر 47.2% اور 23.0% ہو گئی۔

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

زیادہ طاقتور Qwen3.5-35B-A3B بیک بون پر، DeNovoSWE نے مستقل منافع بھی پیدا کیا: BeyondSWE-Doc2Repo 43.8% سے بڑھ کر 50.0% ہو گیا، اور NL2RepoBench 23.5% سے بڑھ کر 27.1% ہو گیا۔ اس سے مزید ثابت ہوتا ہے کہ DeNovoSWE کا منافع صرف کسی ایک مدل کے ساتھ عارضی مطابقت کا نتیجہ نہیں، بلکہ اعلیٰ معیار کے طویل مدتی ڈیٹا کا نتیجہ ہے۔

اختتام

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

DeNovoSWE نے اس ہدف کو ایک قابل تربیت، قابل تصدیق اور قابل توسیع ڈیٹا سیٹ کے طور پر منظم طریقے سے تعمیر کیا۔ یہ ایک اہم سوال کا جواب دیتا ہے: کس قسم کا ڈیٹا، حقیقت میں لمبی مدتی سافٹ ویئر انجینئرنگ کے صلاحیت والے ایجنٹ کو تربیت دینے کے لیے درکار ہوگا؟

جواب زیادہ ٹکڑوں والے کوڈ یا آسان سوالات نہیں، بلکہ اعلیٰ معیار، منظم، ایوان کے مطابق، اور لیکیج کے خلاف مکمل ریپوزٹری جنریشن ٹاسک ہے۔

ایک دستاویز سے شروع کرکے پورے ریپوزٹری کو دوبارہ تعمیر کریں۔ یہ لمبی مدتی کوڈ ایجینٹ کے لیے عبور کرنے والی سرحد ہے۔

حوالہ جات: https://arxiv.org/pdf/2606.10728

یہ مضمون ویچن گروپ "نیوزی یوان" سے ہے، ایڈیٹر: LRST

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