Uzun Vadeli Kod Üretimi İçin DeNovoSWE Veri Seti Yayınlandı

icon MarsBit
Paylaş
AI summary iconÖzet

LLM Code Agent yetenekleri arttıkça, giderek daha fazla araştırmacı, gerçek senaryo ihtiyaçlarına daha yakın uzun vadeli görevlere geçme zamanının geldiğini fark etti. Bu nedenle NL2RepoBench ve BeyondSWE gibi uzun vadeli görev değerlendirme benchmark'ları ortaya çıktı. Code Agent'a verilen beklenti, khoi koruyucu rolünden, tüm kod tabanının uzun vadeli görevlerini planlayıp tamamlayabilen bir mimar rolüne doğru değişmeye başladı.

Son zamanlarda, Çin Halk Cumhuriyeti Üniversitesi Yüksek H瓴 Yapay Zeka Enstitüsü ilgili araştırmayı tamamladı ve uzun menzilli yazılım mühendisliği görevlerine, özellikle khojen düzeyinde kod sıfırdan oluşturma görevlerine odaklanan DeNovoSWE veri kümesini resmen duyurdu.

DeNovoSWE

Makale bağlantısı: https://arxiv.org/pdf/2606.10728

Depo bağlantısı: https://github.com/AweAI-Team/DeNovoSWE

Veri bağlantısı: https://huggingface.co/collections/AweAI-Team/denovoswe

Divide & Conquer ve Critic & Repair mekanizmalarını kullanarak kaliteli veri setleri oluşturarak uzun menzilli SWE görevlerinde ölçeklenebilirlik başarıyla sağlandı ve 4.818 gerçek veriden oluşan açık kaynaklı yüksek kaliteli uzun menzilli SWE görevleri veri seti oluşturuldu—bu başarı, Code Agent’in uzun menzilli yeteneklerini eğitmek için büyük ölçekli veri sağlayarak Code Agent’in uzun menzilli görev yeteneklerini önemli ölçüde artırdı.

DeNovoSWE

Makalede, soru zorluğuna göre puanlama ve filtreleme yöntemi de sunulmuştur; bu, zor soruların oranıyla trajektori kalitesi arasındaki denge sorununu etkili bir şekilde hafifletmektedir.

DeNovoSWE

Deneyler, DeNovoSWE ile eğitilen Qwen3-30B-A3B-Instruct'in BeyondSWE-Doc2Repo üzerinde %5,8'den %47,2'ye, NL2RepoBench üzerinde %4,3'ten %23,0'a yükseldiğini gösteriyor, bu da uzun menzilli verilerin depo düzeyi kod üretimi yeteneğinde önemli bir artış sağladığını ortaya koyuyor.

Bir belgeden tüm deposunu yeniden oluşturun

Geçen yıl, Scale-SWE gibi büyük ölçekli SWE verilerinin ölçeklenmesiyle birlikte, kod ajanları SWE-bench gibi gerçek yazılım mühendisliği görevlerinde hızla ilerledi. Ancak modeller bir "issue" düzeltmeyi, birkaç satır hata düzeltmeyi daha iyi hale getirdikçe, daha kritik bir sorun ortaya çıkmaya başladı: Ajanlar gerçekten uzun vadeli yazılım mühendisliği yeteneğine sahip mi? BeyondSWE-Doc2Repo ve NL2RepoBench gibi öncü modellerin performansına bakıldığında, sonuçlar yeterli değil.

Gerçek dünyada yazılım geliştirme, genellikle bir fonksiyonu değiştirmek veya bir koşul kontrolü eklemek değildir; ihtiyaçları anlamak, mimari planlamak, dosyalar oluşturmak, API tasarlamak, bağımlılıkları yönetmek, modülleri birbirine bağlamak ve sonunda tüm depoyu testlerde çalışır hale getirmektir.

Diğer bir deyişle, zor olan, uzun vadeli, repo seviyesindeki üretimidir: bir görev belgesinden tam, çalışır ve doğrulanabilir bir yazılım deposu oluşturmak. İşte DeNovoSWE’nin çözmek istediği tam olarak bu sorundur.

Yüksek kaliteli "Baştan Reposu Oluşturma" görev belgesi

Belge-den-depo-oluşturma sürecinde, belge sadece README değil, basit bir API listesi de değildir. Temel olarak, bu belge, tüm deposunun yeniden oluşturulması için tek giriş noktasıdır.

Yüksek kaliteli bir görev belgesi, en az iki temel standartı karşılamalıdır.

Birincisi, iyi organize edilmiş olmalıdır.

Depo düzeyindeki görevler doğası itibarıyle karmaşıktır ve birden fazla modül, arayüz, yapılandırma, veri yapısı ve etkileşim akışını içerir. Belge yalnızca fonksiyon açıklamalarını bir araya getirirse, akıllı sistemler parçalı bilgilerde kaybolabilir. Bu nedenle, belge önce net bir depo genel bakışı sunmalı, ardından yeteneklere veya iş akışlarına göre bölümlere ayrılmalı ve her bir bölüm açık bir işlevsel sınır karşılığı gelmelidir.

İkinci olarak, güvenilir bir değerlendirme açısından olmalıdır.

Belge çok az olmamalı, aksi takdirde görev tanımsız bir soruna dönüşür ve modelin değerlendirme geçmesi için rastgele tahminlere dayanması gerekir; çok fazla da olmamalı, aksi takdirde uygulama detayları doğrudan açığa çıkar ve görevin zorluğu kaybolur.

Yüksek kaliteli bir belge, değerlendirme için gerekli olan temel davranışları tanımlamalıdır: içe aktarma yolu, açık API'ler, girdi/çıktı, varsayılan parametreler, istisnai davranışlar, yapılandırma seçenekleri, desen dizgileri, dönen alanlar vb. Ayrıca, genel olarak tamamlanması gereken işlevleri de açıklamalıdır. Yani, belge, akıllı bir aracın test edilebilir davranışları yeniden oluşturabilmesi için yeterli olmalı ancak uygulama kodunun bir kopyası olmamalıdır.

DeNovoSWE'nin temel fikri, belgelerin okunabilir, uygulanabilir ve doğrulanabilir olmasını sağlamaktır.

DeNovoSWE yöntemi

DeNovoSWE, belgelerden tam bir kod deposu oluşturmayı, ölçekli ve doğrulanabilir uzun menzilli bir yazılım mühendisliği görevi olarak tanımlar. Bu, elle yazılmış belgeler değil, bir sandboxed çok ajan iş akışı aracılığıyla otomatik olarak kaliteli örnekler oluşturur. Tüm yöntem, İki adımda özetlenebilir: Böl ve Fethet.

Divide aşamasında, sistem hedef deposunu analiz ederek birden fazla repository yeteneğine ayırır.

Her yetenek, kimlik doğrulama ve bağlantı, veri okuma/yazma, toplu işleme, dışa aktarma süreçleri gibi bir depodaki temel bir yetenek veya iş akışını temsil eder. Bu sayede büyük bir depo oluşturma sorunu, yapısal olarak net belge bölümlerine ayrılır.

Aynı zamanda, DeNovoSWE orijinal birim testlerini çalıştırır ve yürütme izini toplar; hangi fonksiyonların, sınıfların ve arayüzlerin değerlendirme sürecini gerçekten etkilediğini tanımlar ve doğrudan bileşenleri, temel dolaylı bileşenleri ile temel olmayan dolaylı bileşenleri ayırt eder: doğrudan test tarafından çağrılan arayüzler ayrıntılı şekilde kaydedilmelidir; gözlemlenebilir davranışları etkileyen temel dolaylı bileşenler de kapsamlı olmalıdır; ancak temel olmayan içsel uygulamalar, akıllı ajanlara bırakılarak serbest bırakılabilir.

Kazanma aşamasında, DeNovoSWE, her bir yetenek için Draft-Critic-Repair mekanizmasını kullanarak belge oluşturur. Draft aracısı ilk taslakları yazar; Critic aracısı belgede kritik API'ler, davranış sözleşmeleri veya yapısal bilgilerin eksik olup olmadığını kontrol eder; Repair aracısı geri bildirimlere göre belgeyi düzeltir. Bu döngü, her bir yetenek bölümü yeterince net, tam ve değerlendirmeyle uyumlu hale gelene kadar tekrarlanır.

Sonuç olarak, farklı yetenek belgeleri, bir agentin sıfırdan repo oluşturmak için tek kaynak olarak kullanılacak şekilde tek bir tam görev belgesine birleştirilecektir.

Zorluk: Neden bu uzun vadeli bir görev?

DeNovoSWE'nin görev zorluğu, bir temel değişiklikten kaynaklanıyor: artık sorun düzeyinde düzeltme değil, tam depo üretimi.

Geleneksel SWE görevlerinde, ajanlar genellikle mevcut bir depo ile karşılaşıp hataları tanımlamak, yerel kodu değiştirmek ve testleri geçmek zorundadır.

DeNovoSWE'de, ajan temizlenmiş bir ortamla karşılaşıyor: orijinal kaynak kodu ve testler kaldırılmış, git geçmişi sıfırlanmış, önbellek, site-packages artıkları, pip tekerlekleri ve geçici derleme çıktıları gibi potansiyel sızıntı yolları temizlenmiştir. Bu, ajanın tüm deposunu yeniden oluşturmak için tamamen belgelere dayanması gerektiği anlamına gelir. Ajan, proje yapısını planlamalı, modül dosyaları oluşturmalı, açık arayüzleri tanımlamalı, dosyalar arası etkileşimleri gerçekleştirmeli, bağımlılıkları ve yapılandırmaları işlemeli ve çok aşamalı düzenlemeler ile test geri bildirimleri arasında hataları sürekli düzeltmelidir.

Herhangi bir API imzası, dönüş alanı, hata türü veya varsayılan davranıştaki sapma, testin başarısız olmasına neden olabilir. Hatalar uzun sürede birikir: erken aşamada yanlış tasarlanmış bir modül, sonraki birçok dosya ve çağrı zincirini etkileyebilir.

Farklı görev zorlukları arasındaki farkları daha iyi işlemek için DeNovoSWE, zorluk-bilinçli trajektör filtreleme yöntemini önerdi. Basitçe ifade edilirse, kolay görevler için daha yüksek geçiş oranları gerektirilmeli, zor görevler ise mükemmel puan elde edilememesi nedeniyle tamamen atılmamalıdır. DeNovoSWE, yapısal karmaşıklık ve LLM zorluk değerlendirmesine dayanarak farklı zorluk aralıkları için farklı filtre eşiği belirleyerek kalite ve çeşitlilik arasında denge kurar.

Bu, uzun vadeli görevler için özellikle önemlidir: Ne kadar karmaşık bir depoysa, tüm testleri tek seferde tamamlamak o kadar zordur; ancak bu zorlu depolar, düşük puanlar ve kısmen başarılı yollar hâlâ değerli uzun vadeli planlama ve uygulama yetenekleri içerir.

DeNovoSWE

Deneysel sonuçlar

DeNovoSWE, 4.818 adet kaliteli document-to-repository görev örneği oluşturdu. Bu, yürütülebilir, değerlendirilebilir ve eğitilebilir uzun menzilli yazılım mühendisliği ortamıdır.

DeNovoSWE

DeNovoSWE

Deneysel sonuçlar, DeNovoSWE'nin modelin uzun menzilli depo oluşturma yeteneğinde önemli bir artış sağladığını göstermektedir. Qwen3-30B-A3B-Instruct üzerinde, orijinal model BeyondSWE-Doc2Repo'da %5,8 ve NL2RepoBench'te %4,3 performans göstermiştir. Düzenli issue-seviyesi SWE verileriyle eğitilen Scale-SWE-Agent, bu oranları %29,2 ve %18,3'e çıkarmıştır; bu da genel SWE verilerinin gerçekten transfer etkisi olduğunu göstermektedir. Ancak model DeNovoSWE ile eğitildiğinde, performans %47,2 ve %23,0'a kadar daha da yükselmiştir.

Bu, "hata düzeltme"ye yönelik verilerin, "tam bir depo oluşturma"ya yönelik uzun menzilli verileri tamamen yerine geçemeyeceğini gösterir. Bir ajanın repository-seviyesi mühendisliğini gerçekten öğrenmesi için, uzun menzilli görevlere özel olarak oluşturulmuş bir eğitim ortamı gereklidir.

Daha güçlü bir Qwen3.5-35B-A3B temel üzerinde, DeNovoSWE aynı şekilde istikrarlı kazanımlar sağlıyor: BeyondSWE-Doc2Repo %43,8'den %50,0'e, NL2RepoBench %23,5'ten %27,1'e yükseliyor. Bu, DeNovoSWE'nin kazanımlarının rastgele bir modele uyumdan değil, kaliteli uzun menzilli verilerden kaynaklandığını daha da kanıtlıyor.

Sonuç

Bir sonraki aşama, kod akıllı aracının yalnızca tekil bir sorunu daha hızlı düzeltmekten öteye geçerek, belgeleri anlayabilmesi, mimariyi planlayabilmesi, modülleri organize edebilmesi, arayüzleri uygulayabilmesi ve nihayetinde tamamen çalışır durumda bir yazılım deposu oluşturabilmesidir.

DeNovoSWE, bu hedefi sistematik bir şekilde eğitilebilir, doğrulanabilir ve ölçeklenebilir bir veri kümesi olarak oluşturdu. Temel bir soruyu yanıtlıyor: Uzun menzilli yazılım mühendisliği yeteneklerine sahip bir ajanı gerçekten eğitmek için hangi verilere ihtiyaç vardır?

Cevap daha fazla parçalanmış kod değil, daha basit sorular değil, kaliteli, yapılandırılmış, değerlendirmeyle uyumlu ve sızıntılara karşı korumalı tam repo üretme görevidir.

Bir belgeden başlayarak tüm depoyu yeniden oluşturun. Bu, uzun menzilli kod ajanlarının aşması gereken eşik.

Kaynaklar: https://arxiv.org/pdf/2606.10728

Bu yazı WeChat hesabından "Yeni Akıllı Dünya" gelmiştir, düzenleyen: LRST

Yasal Uyarı: Bu sayfadaki bilgiler üçüncü şahıslardan alınmış olabilir ve KuCoin'in görüşlerini veya fikirlerini yansıtmayabilir. Bu içerik, herhangi bir beyan veya garanti olmaksızın yalnızca genel bilgilendirme amacıyla sağlanmıştır ve finansal veya yatırım tavsiyesi olarak yorumlanamaz. KuCoin, herhangi bir hata veya eksiklikten veya bu bilgilerin kullanımından kaynaklanan sonuçtan sorumlu değildir. Dijital varlıklara yapılan yatırımlar riskli olabilir. Lütfen bir ürünün risklerini ve risk toleransınızı kendi finansal koşullarınıza göre dikkatlice değerlendirin. Daha fazla bilgi için lütfen Kullanım Koşullarımıza ve Risk Açıklamamıza bakınız.