Ipinakalabas ang DeNovoSWE Dataset para sa Long-Horizon Code Generation

icon MarsBit
I-share
AI summary iconSummary

Habang patuloy na lumalago ang kakayahan ng LLM Code Agent, lalong nagkakaroon ng pag-unawa ang maraming mga mananaliksik na nasa tamang panahon na upang lumipat sa susunod na yugto—ang mga mahabang gawain na mas malapit sa mga pangangailangan ng totoong sitwasyon. Kaya't lumitaw ang ilang benchmark para sa pag-e-evaluate ng mga mahabang gawain, tulad ng NL2RepoBench at BeyondSWE. Ang inaasahang papel ng Code Agent ay unti-unting nagbabago mula sa tagapagpanatili ng repositoryo patungo sa arkitekto, na kayang magplano at tapusin ang mga mahabang gawain sa buong code ng repositoryo.

Kasalukuyang natapos ng High瓴 College of Artificial Intelligence ng Renmin University of China ang kaugnay na pag-aaral at ipinakilala ang DeNovoSWE dataset, na nakatuon sa mga mahabang gawain sa software engineering, lalo na sa paggawa ng code sa antas ng repository mula sa sero.

DeNovoSWE

Link ng papel: https://arxiv.org/pdf/2606.10728

Link ng repository: https://github.com/AweAI-Team/DeNovoSWE

Link sa data: https://huggingface.co/collections/AweAI-Team/denovoswe

Ginawa ang pagbuo ng mataas na kalidad na dataset gamit ang mga mekanismo ng Divide & Conquer at Critic & Repair, at natagumpay na isinasakatuparan ang Scaling sa mga habang SWE task, na nagbuo ng isang bukas na source, mataas na kalidad na dataset ng 4,818 tunay na data para sa mga habang SWE task—ang resultang ito ay nagbigay ng malaking dataset para sa pagtuturo ng Code Agent, na nagpapalakas nang malaki ang kakayahan ng Code Agent sa mga habang task.

DeNovoSWE

Ang papel ay nagtatampok din ng paraan ng pag-filter batay sa antas ng kahirapan ng tanong, na epektibong nagpapababa sa konflikto sa pagitan ng proporsyon ng mahihirap na tanong at kalidad ng trajektoriya.

DeNovoSWE

Ang mga eksperimento ay nagpakita na ang Qwen3-30B-A3B-Instruct na pinatutunayan gamit ang DeNovoSWE ay umabot sa pagtaas mula sa 5.8% hanggang sa 47.2% sa BeyondSWE-Doc2Repo, at mula sa 4.3% hanggang sa 23.0% sa NL2RepoBench, na nagpapakita ng malaking pagpapabuti sa kakayahan sa paggawa ng code sa antas ng repository dahil sa mahabang data.

Magsimula sa isang dokumento upang muling itayo ang buong repository

Noong nakaraang taon, kasabay ng paglalawak ng malalaking dataset ng SWE tulad ng Scale-SWE, mabilis na umunlad ang code agents sa mga totoong software engineering tasks tulad ng SWE-bench. Ngunit habang mas nakakapag-ayos na ang mga model ng “ayusin ang isang issue” o “baguhin ang ilang linya ng bug,” lumabas ang isang mas mahalagang tanong: may kakayahan ba talaga ang mga agent sa mahabang saklaw na software engineering? Ayon sa mga resulta ng mga pinakabagong model tulad ng BeyondSWE-Doc2Repo at NL2RepoBench, ang epekto ay hindi mabuti.

Ang tunay na pag-unlad ng software sa mundo real ay hindi lamang pagbabago ng isang function o pagdaragdag ng isang kondisyon, kundi ang pag-unawa sa mga pangangailangan, pagpaplano ng arkitektura, paglikha ng mga file, pagdisenyo ng API, paghahandle ng mga dependency, pagpapagana ng mga module, at sa huli ay pagpapatakbo ng buong repository sa mga pagsubok.

Sa ibang salita, ang hirap ay ang long-horizon repository-level generation: mula sa isang task document, lumikha ng isang buo, gumagana, at masusuri na software repository. Ito ang sadyang lutasin ng DeNovoSWE.

High-quality "Generate Repository from Scratch" task documentation

Sa document-to-repository generation, ang dokumento ay hindi lamang ang README o simpleng lista ng API. Ito ay sa katotohanan ang tanging entry point para mabuo muli ang buong repository nang may智能化.

Isang mataas na kalidad na dokumento ng gawain, kailangang matugunan ang dalawang pangunahing pamantayan.

Una, ito ay dapat maging well-organized.

Ang mga gawain sa antas ng repository ay likas na kumplikado, na naglalaman ng maraming module, interface, konfigurasyon, data structure, at proseso ng interaksyon. Kung ang dokumentasyon ay nagpapakita lamang ng mga pagsasalaysay ng mga function nang magkahihiwalay, madaling mawawala ang mga intelligent agent sa mga piraso ng impormasyon. Kaya, dapat unang magbigay ang dokumentasyon ng malinaw na pangkalahatang-ideya ng repository, bago ihiwalay ang mga kabanata ayon sa kakayahan o workflow, upang bawat bahagi ay tumutugon sa malinaw na hangganan ng punsiyon.

Pangalawa, ito ay dapat mula sa isang kapani-paniwalaang pagtataya.

Hindi dapat masyadong kaunti ang dokumento, dahil maaaring maging problema ang pagkakawala ng kahulugan, na magiging sanhi na kailangan ng modelo na maghula nang walang katapusan upang makapasa sa pagtataya; hindi rin dapat masyadong marami, dahil maaaring ma-leak ang mga detalye ng implementasyon at mawala ang hamon ng gawain.

Dapat maglalarawan ang totoong mataas na kalidad na dokumentasyon ng mga pangunahing pag-uugali na nakabatay sa evaluation: kabilang ang import path, publikong API, input at output, default parameters, anomalous behavior, configuration items, pattern strings, return fields, atbp., at maglalarawan din ng mga pangkalahatang katangian na dapat maisagawa. Ibig sabihin, sapat ang dokumentasyon upang maaaring muling isagawa ng agent ang mga testable na pag-uugali, ngunit hindi dapat maging kopya ng implementation code.

Ito rin ang pangunahing ideya ng DeNovoSWE: gawing readable, implementable, at verifiable ang mga dokumento.

DeNovoSWE method

Ang DeNovoSWE ay nagtatayo ng isang malawak at verifiable na mahabang software engineering task na "gumawa ng buong repository mula sa dokumentasyon". Hindi ito manu-manong isinulat na dokumento, kundi awtomatikong binubuo ng isang sandboxed multi-agent workflow upang makabuo ng mataas na kalidad na mga halimbawa. Ang buong paraan ay maaaring maipaliwanag sa dalawang hakbang: Divide at Conquer.

Sa fase ng Divide, unang ina-analisa ng sistema ang target repository at ikinakasalirang sa mga repository capabilities.

Bawat capability ay tumutugon sa isang pangunahing kakayahan o workflow sa repository, tulad ng pag-authenticate at pagkonekta, pagbasa at pagsulat ng data, batch processing, export workflow, atbp. Sa paraang ito, ang malaking problema sa paggawa ng repository ay na-decompose sa ilang malinaw na mga seksyon ng dokumento.

Samantala, ang DeNovoSWE ay gagana ang orihinal na unit test at kukolekta ang execution trace upang matukoy kung anong mga function, class, at interface ang talagang nakakaapekto sa evaluation, at upang mas mapaghati ang direct components, core indirect components, at non-core indirect components: ang mga interface na diretso na tinatawag ng test ay kailangang detalyadong dokumentuhin; ang mga core indirect components na nakakaapekto sa observable behavior ay kailangan ding sakop; habang ang non-core internal implementation ay maaaring iwanan sa kalayaan ng agent.

Sa panahon ng Conquer, gumagamit ang DeNovoSWE ng Draft-Critic-Repair mechanism upang lumikha ng dokumento ayon sa bawat kakayahan. Ang Draft agent ay unang sumusulat ng draft; ang Critic agent ay tinitiyak kung may nawawalang mga pangunahing API, behavior contract, o structural information sa dokumento; at ang Repair agent ay nag-aayos ng dokumento batay sa feedback. Ang siklo na ito ay paulit-ulit hanggang sa sapat na malinaw, kompletong, at naka-align ang bawat seksyon ng kakayahan sa evaluation.

Sa huli, ang iba’t ibang dokumento ng kakayahan ay iisang pagkakaisa upang maging isang kumpletong dokumento ng gawain, na magiging tanging batayan para sa agent na lumikha ng repository mula sa sero.

Kahirapan: Bakit ito isang matagal na gawain?

Ang hirap ng task ng DeNovoSWE ay mula sa isang pangunahing pagbabago: hindi na ito issue-level fixing, kundi whole-repository generation.

Sa tradisyonal na SWE task, ang mga agent ay karaniwang nakakatagpo ng isang umiiral na repository, kung saan kailangan lang nilang matukoy ang bug, baguhin ang lokal na code, at pasanin ang mga pagsubok.

Sa DeNovoSWE, ang agent ay nakakatagpo ng isang malinis na kapaligiran: natanggal ang orihinal na source code at mga pagsubok, na-reset ang git history, at nalilinis ang mga posibleng pinagkukunan ng leakage tulad ng cache, mga natitirang site-packages, pip wheels, at pansamantalang kompiladong produkto. Ibig sabihin nito na kailangan talaga ng agent ang dokumentasyon upang mabuo muli ang buong repository. Kailangan niya na magplano ng istruktura ng proyekto, lumikha ng mga file ng module, tukuyin ang mga pampublikong interface, implementahin ang interaksyon sa pagitan ng mga file, tratuhin ang mga dependency at konfigurasyon, at patuloy na ayusin ang mga error sa pamamagitan ng maraming pag-edit at feedback mula sa pagsubok.

Anumang pagkakaiba sa API signature, return field, exception type, o default behavior ay maaaring magdulot ng pagkabigo sa pagsubok. Ang mga error ay maaari ring makalikom sa mahabang proseso: isang module na may di-maayos na disenyo sa simula ay maaaring mag-apekto sa maraming susunod na file at call chain.

Upang mas mapagana ang iba’t ibang antas ng hirap sa mga repository, inilahad din ng DeNovoSWE ang difficulty-aware trajectory filtering. Sa simpleng salita, ang mga madaling gawain ay dapat maghingi ng mas mataas na rate ng pagkakaroon ng tagumpay, habang ang mga mahirap na gawain ay hindi dapat buong-buo na tanggalin dahil hindi natamo ang perpektong marka. Batay sa estructural na kumplikado at paghuhusga sa hirap ng LLM, itinatakda ng DeNovoSWE iba’t ibang threshold ng pagpapaliwanag para sa iba’t ibang antas ng hirap, upang makamit ang balanse sa pagitan ng kalidad at diversidad.

Mahalaga ito lalo na para sa mga matagalang gawain: mas komplikado ang isang repository, mas mahirap maisagawa ang lahat ng mga pagsubok nang isang beses, ngunit ang mga mahirap na repository, mababang marka, at mga bahagyang tagumpay na trahektorya ay naglalaman pa rin ng mahalagang kakayahan sa pangmatagalang pagpaplano at pagpapatupad.

DeNovoSWE

Mga resulta ng eksperimento

Ang DeNovoSWE ay nagbuo ng 4,818 na mataas na kalidad na mga halimbawa ng gawain mula sa document patungo sa repository. Ito ay isang mahabang software engineering na kapaligiran na executable, assessible, at trainable.

DeNovoSWE

DeNovoSWE

Ang mga resulta ng eksperimento ay nagpapakita na ang DeNovoSWE ay nagdala ng malaking pagpapabuti sa kakayahan ng modelo sa pagbuo ng mahabang-aklatang repository. Sa Qwen3-30B-A3B-Instruct, ang orihinal na modelo ay may 5.8% lamang sa BeyondSWE-Doc2Repo at 4.3% sa NL2RepoBench. Ang paggamit ng karaniwang issue-level SWE data para sa pagtuturo ng Scale-SWE-Agent ay nagpapabuti sa 29.2% at 18.3%, na nagpapatotoo na may epekto ang karaniwang SWE data. Ngunit kapag ginamit ang DeNovoSWE para sa pagtuturo ng modelo, tumataas pa ang performance sa 47.2% at 23.0%.

Ito ay nagpapakita na ang mga data na nakatuon sa pag-ayos ng bug ay hindi maaaring ganap na palitan ang mga long-range data na nakatuon sa pagbuo ng buong repository. Upang matutunan ng agent ang repository-level engineering, kailangan ng espesyal na nakatuon sa long-range task na pagbuo ng environment para sa pagtuturo.

Sa mas malakas na backbone na Qwen3.5-35B-A3B, ang DeNovoSWE ay nagdala rin ng patuloy na kita: ang BeyondSWE-Doc2Repo ay tumataas mula sa 43.8% hanggang sa 50.0%, at ang NL2RepoBench ay tumataas mula sa 23.5% hanggang sa 27.1%. Ito ay nagpapatibay na ang kita ng DeNovoSWE ay hindi isang pagkakataon na pagpapadapt sa isang partikular na modelo, kundi galing sa sariling kalidad ng mahabang data.

Wakas

Ang susunod na yugto ng code agent ay hindi lamang mas mabilis na ayusin ang mga okasyon, kundi makakaintindi ng dokumentasyon, magplano ng arkitektura, mag-organisa ng mga module, isagawa ang mga interface, at sa huli ay lumikha ng isang buong nagpapatakbo na software repository.

Sinistemang isinagawa ng DeNovoSWE ang layunin bilang isang dataset na makakatutok, makakapag-verify, at makakasabwag. Ito ang sumagot sa isang mahalagang tanong: Anong uri ng data ang talagang makakatutok sa isang agent na may kakayahang mag-engage sa mahabang saklaw ng software engineering?

Hindi ito higit pang mga piraso ng code o mas simpleng mga tanong, kundi isang ganap na repository generation task na may mataas na kalidad, structured, evaluation-aligned, at anti-leakage.

Magsimula sa isang dokumento at muling itayo ang buong repository. Ito ang hadlang na kailangang laktawan ng long-range code agent.

Mga sanggunian: https://arxiv.org/pdf/2606.10728

Nakapost sa WeChat public account na “Xin Zhi Yuan”, in-edit ni: LRST

Disclaimer: Ang information sa page na ito ay maaaring nakuha mula sa mga third party at hindi necessary na nagre-reflect sa mga pananaw o opinyon ng KuCoin. Ibinigay ang content na ito para sa mga pangkalahatang informational purpose lang, nang walang anumang representation o warranty ng anumang uri, at hindi rin ito dapat ipakahulugan bilang financial o investment advice. Hindi mananagot ang KuCoin para sa anumang error o omission, o para sa anumang outcome na magreresulta mula sa paggamit ng information na ito. Maaaring maging risky ang mga investment sa mga digital asset. Pakisuri nang maigi ang mga risk ng isang produkto at ang risk tolerance mo batay sa iyong sariling kalagayang pinansyal. Para sa higit pang information, mag-refer sa aming Terms ng Paggamit at Disclosure ng Risk.