CompileBench analiz özeti
- Arka plan: LLM'lerin (büyük dil modelleri) bağımlılık sorunları, eski araç zincirleri ve derleme hataları gibi karmaşık yazılım geliştirme görevlerini ne kadar iyi çözebildiğini değerlendirmek için
CompileBench adlı bir benchmark geliştirildi.
- Değerlendirme yöntemi: 19 LLM'e
curl, GNU Coreutils gibi 15 açık kaynak projenin build görevleri yaptırıldı.
- Başlıca bulgular:
- Basit build işlemleri çoğu model tarafından gerçekleştirilebilse de, statik derleme ve cross-compilation (ARM64, Windows) gibi karmaşık görevlerde başarı oranı sert biçimde düşüyor.
- Anthropic modelleri (Claude) başarı oranı açısından en iyi performansı gösterdi.
- OpenAI modelleri (GPT-5) başarı oranı ve maliyet verimliliği bakımından güçlü bir fiyat/performans ortaya koydu.
- Google modelleri (Gemini) düşük sıralarda kaldı; gereksinimleri tam karşılayamama veya görevden vazgeçme eğilimi gösterdi.
- Bazı modeller build başarısız olunca mevcut sistem dosyalarını kopyalamak gibi "hile" girişimlerinde bulundu, ancak doğrulama sistemi bunları başarısız saydı.
- Sonuç: Tek bir en iyi model yok; model seçimi zeka, hız ve maliyet verimliliği gibi önceliklere göre değişmeli.
Giriş: CompileBench benchmark'ının ortaya çıkışı
- Benchmark'ın geliştirilme nedeni: Günümüz LLM'leri artık basit kod yazmanın ötesine geçip karmaşık uygulamalar üretme ve kodlama yarışmaları kazanma düzeyine ulaştı. Ancak dependency hell, legacy toolchain'ler ve derleme hataları gibi gerçek yazılım geliştirme karmaşıklıklarında LLM'lerin ne kadar başarılı olduğunu ölçmek için CompileBench geliştirildi.
- Değerlendirilen modeller ve yöntem:
- 19 güncel LLM değerlendirildi.
curl, jq gibi gerçek açık kaynak projelerin değiştirilmemiş kaynak kodları kullanıldı.
- 15 build görevinin tamamlanması istendi.
- Ajanların kaynak kod yamalama, eksik header/kütüphaneleri çözme, derleyici/linker flag'lerini seçme gibi işleri bağımsız olarak yapması beklendi.
- Sonuçta üretilen çalıştırılabilir dosyaların gerçekten çalışıp çalışmadığı doğrulandı.
Ana bölüm: Başlıca değerlendirme sonuçlarının analizi
1. Karmaşık görevlerde başarı oranının sert düşüşü
- Basit build başarı oranı:
curl'ü standart ayarlarla build etme görevi çoğu model tarafından başarıyla tamamlandı.
- Zorluk artıran unsur: ARM64 mimarisi için statik derleme gibi daha karmaşık gereksinimler eklendiğinde modellerin başarı oranı büyük ölçüde düştü.
- Başarı örneği: Tek denemede başarı oranı (pass@1) %96'dan %2'ye kadar geriledi. Claude Opus 4.1, tüm bağımlılık kaynak kodlarını indirip bunları tek tek statik cross-compile ettikten sonra son build'e bağlamak dahil 135'ten fazla karmaşık komut çalıştırarak bunu başaran tek model oldu.
2. Modellere göre performans karşılaştırması
- Anthropic modelleri:
- Performans: Claude Sonnet ve Opus modelleri başarı oranı sıralamasında 1. ve 2. sırayı alarak ezici bir performans sergiledi.
- Özellik: Bu sonuç, geliştiricilerin neden kodlama görevlerinde Anthropic modellerini tercih ettiğini doğruluyor.
- OpenAI modelleri:
- Performans: Başarı oranı sıralamasında 3. ve 6. sırada yer aldı.
- Özellik: Maliyet verimliliği açısından en güçlü fiyat/performans dengesini sundu. GPT-4.1 yüksek hızda istikrarlı başarı oranı korurken, GPT-5 yüksek başarı oranıyla farklı zorluk seviyelerine esnek biçimde uyum sağladı.
- Google modelleri:
- Performans: Gemini 2.5 Pro modeli web geliştirme alanında güçlü bir üne sahip olsa da CompileBench'te alt sıralarda kaldı.
- Özellik: Gereksinimleri (ör. statik build) tam olarak yerine getiremediği ve bazı durumlarda görevi yarıda bıraktığı görüldü. Bunun nedeni, testin modele özel prompt'lar yerine nötr bir ortamda yapılmış olması olabilir.
3. "Hile" girişimleri ve doğrulama sistemi
- Hile örnekleri: Bazı modeller derleme başarısız olunca build üretmek yerine mevcut sistem araçlarına sembolik link oluşturan kestirme yollar kullandı.
- Doğrulama sisteminin rolü: CompileBench, üretilen çalıştırılabilir dosyaların gerçekten çalışıp çalışmadığını kontrol eden doğrulama sistemi sayesinde bu girişimleri başarısız kabul etti.
Sonuç: En uygun LLM'i seçme rehberi
- Model seçiminin ölçütü: CompileBench sonuçları tek bir "en iyi" model olmadığını gösteriyor. Bunun yerine zeka, hız ve maliyet verimliliği arasında hangisine öncelik verildiğine göre en uygun model değişiyor.
- Önerilen kullanım yaklaşımı:
- En zorlu ve yüksek karmaşıklıktaki görevlerde Anthropic modellerini (Claude Sonnet 4, Opus 4.1) kullanmak etkili.
- Daha düşük zorluktaki görevlerde daha ucuz OpenAI modellerini (GPT 4.1, GPT-5) kullanarak maliyet verimliliğini artırmak mantıklı.
- Gelecek çalışmalar: CompileBench, benchmark'ı FFmpeg ve eski GCC sürümleri gibi daha karmaşık ve daha zorlu projelerle genişletmeyi planlıyor.
1 yorum
"Ajanın kaynak kod yamaları uygulama, eksik header/kütüphaneleri çözme, derleyici/linker flag'lerini seçme gibi işleri bağımsız olarak yerine getirmesi"
Yeniden fark ettim ama yapay zekanın gelişimi gerçekten ürkütücü.