Sektör lideri yapay zeka kapsamına ilişkin en son güncellemeler ve özel içerik için günlük ve haftalık bültenlerimize katılın. Daha fazla bilgi edin
Büyük dil modelleri (LLM’ler) kodlamada gelişmeye devam ettikçe, performanslarını değerlendirmek için kullanılan kıyaslamalar giderek daha az kullanışlı hale geliyor.
Bunun nedeni, birçok LLM’nin bu kıyaslamalarda benzer yüksek puanlara sahip olmasına rağmen, belirli yazılım geliştirme projelerinde ve kuruluşlarında hangilerinin kullanılacağını anlamak zor olabilir.
Yale Üniversitesi ve Tsinghua Üniversitesi tarafından hazırlanan yeni bir makale, modellerin “sorunlarla mücadele etme yeteneğini test etmek için yeni bir yöntem sunuyor”kendi kendini çağıran kod üretimiAkıl yürütmeyi, kod üretmeyi ve mevcut kodu problem çözmede yeniden kullanmayı gerektiren problemler.
Kendi kendini çağıran kod oluşturma, gerçekçi programlama senaryolarına çok daha benzer ve mevcut LLM’lerin gerçek dünyadaki kodlama sorunlarını çözme becerisinin daha iyi anlaşılmasını sağlar.
Kendi kendini çağıran kod üretimi
Yüksek Lisans’ın kodlama yeteneklerini değerlendirmek için kullanılan iki popüler kıyaslama şunlardır: İnsan Değerlendirmesi Ve MBPP (Çoğunlukla Temel Python Sorunları). Bunlar, modelin basit görevler için kod yazmasını gerektiren el yapımı problemlerin veri kümeleridir.
Ancak bu kıyaslamalar, yazılım geliştiricilerin gerçek dünyada karşılaştığı zorlukların yalnızca bir alt kümesini kapsamaktadır. Pratik senaryolarda, yazılım geliştiriciler yalnızca yeni kod yazmakla kalmaz; aynı zamanda mevcut kodu anlayıp yeniden kullanmalı ve karmaşık sorunları çözmek için yeniden kullanılabilir bileşenler oluşturmalıdırlar.
Araştırmacılar, “Kişinin kendi ürettiği kodu anlama ve daha sonra bundan yararlanma yeteneği, yani kendi kendini çağıran kod oluşturma yeteneği, LLM’lerin mevcut kıyaslamaların yakalayamadığı kod oluşturma konusundaki muhakeme yeteneklerini geliştirmelerinde önemli bir rol oynuyor” diye yazıyor.
Yüksek Lisans’ların kendi kendine çağrılan kod oluşturma yeteneğini test etmek için araştırmacılar iki yeni kriter oluşturdu: HumanEval Pro ve MBPP ProMevcut veri kümelerini genişleten. HumanEval Pro ve MBPP Pro’daki her sorun, orijinal veri kümesindeki mevcut bir örneğin üzerine inşa edilir ve modelin temel sorunu çözmesini ve daha karmaşık bir sorunu çözmek için çözümü çağırmasını gerektiren ek öğeler sunar.
Örneğin, orijinal problem, bir dizede belirli bir karakterin tüm oluşumlarını yeni bir karakterle değiştiren bir fonksiyon yazmak gibi basit bir şey olabilir.
Genişletilmiş sorun, bir dizedeki birden çok karakterin oluşumunu, verilen değiştirmelerle değiştiren bir fonksiyon yazmak olacaktır. Bu, modelin basit problemde oluşturduğu önceki fonksiyonu çağıran yeni bir fonksiyon yazmasını gerektirir.
Araştırmacılar, “Kendi kendini başlatan kod oluşturmanın bu değerlendirmesi, yüksek lisansların programlama yeteneklerine ilişkin daha derin bilgiler sunuyor ve tek problemli kod oluşturma kapsamının ötesine geçiyor” diye yazıyor araştırmacılar.
Yüksek Lisans’lar kendi kendini çağıran kod oluşturmada düşük performans gösteriyor
Araştırmacılar HumanEval Pro ve MBPP Pro’yu 20’den fazla açık ve özel model üzerinde test etti. GPT-4oOpenAI o1-mini, Claude 3.5 Soneayrıca Qwen, DeepSeek ve Kodstral seri.
Bulguları, geleneksel kodlama kriterleri ile kendi kendine çağrılan kod oluşturma görevleri arasında önemli bir eşitsizlik olduğunu gösteriyor. Araştırmacılar, “Sınırdaki Yüksek Lisans’lar bireysel kod parçacıkları oluşturmada başarılı olsalar da, genellikle kendi oluşturdukları kodları daha karmaşık sorunları çözmek için etkili bir şekilde kullanmakta zorluk çekiyorlar” diye yazıyor.
Örneğin, tek bir nesil (pass@1) ile o1-mini, HumanEval’de %96,2’ye ulaşırken, HumanEval Pro’da yalnızca %76,2’ye ulaşır.
Bir başka ilginç bulgu da, talimat ince ayarının basit kodlama görevlerinde önemli iyileştirmeler sağlamasına rağmen, kendi kendini çağıran kod oluşturmada azalan getiri göstermesidir. Araştırmacılar, “mevcut talimat tabanlı ince ayar yaklaşımlarının, daha karmaşık, kendi kendine çağrılan kod oluşturma görevleri için yeterince etkili olmadığını” belirtiyor ve bu da, kodlama ve akıl yürütme görevleri için temel modelleri nasıl eğittiğimizi yeniden düşünmemiz gerektiğini öne sürüyor.
Kendi kendini çağıran kod oluşturma konusundaki araştırmaların ilerlemesine yardımcı olmak için araştırmacılar, kendi kendini çağıran kod oluşturmaya yönelik mevcut kodlama kıyaslamalarını otomatik olarak yeniden tasarlayacak bir teknik öneriyorlar. Yaklaşım, orijinal problemlere dayalı olarak kendi kendini başlatan problemler üretmek için sınır yüksek lisans eğitimlerini kullanır. Daha sonra aday çözümler üretirler ve kodu çalıştırarak ve bunlar üzerinde test senaryoları çalıştırarak bunların doğruluğunu doğrularlar. İşlem hattı, daha az çabayla daha fazla örnek oluşturulmasına yardımcı olmak için manuel kod incelemesi ihtiyacını en aza indirir.
Karmaşık bir manzara
Bu yeni kıyaslama ailesi, eski kodlama kıyaslamalarının sınır modelleri tarafından hızla fethedildiği bir zamanda geliyor. GPT-4o, o1 ve Claude 3.5 Sonnet gibi mevcut sınır modelleri, HumanEval ve MBPP’nin yanı sıra bunların daha gelişmiş sürümleri HumanEval+ ve MBPP+’da da zaten çok yüksek puanlara sahip.
Aynı zamanda daha karmaşık kriterler de mevcut: SWE-Tezgahharici kitaplıkları ve dosyaları kullanma ve DevOps araçlarını yönetme gibi çok çeşitli beceriler gerektiren uçtan uca yazılım mühendisliği görevlerinde modellerin yeteneklerini değerlendiren. SWE-Bench çok zor bir kıyaslamadır ve en gelişmiş modeller bile mütevazı bir performans göstermektedir. Örneğin OpenAI o1, SWE-Bench Verified’da tutarsızdır.
Kendi kendine çağrılan kod üretimi, basit kıyaslamalar ile SWE-Bench arasında bir yerde bulunur. Çok spesifik bir akıl yürütme yeteneğinin değerlendirilmesine yardımcı olur: karmaşık sorunların üstesinden gelmek için bir modül içindeki mevcut kodu kullanmak. Kendi kendine çağrılan kod kıyaslamaları, insan programcıların kontrolü elinde tuttuğu ve yapay zeka yardımcı pilotlarının yazılım geliştirme sürecinde belirli kodlama görevlerini gerçekleştirmelerine yardımcı olduğu gerçek dünya ortamlarında Yüksek Lisans’ların kullanışlılığı için çok pratik bir temsili olabilir.
Araştırmacılar, “HumanEval Pro ve MBPP Pro, kodla ilgili değerlendirmeler için değerli ölçütler olarak hizmet edecek ve mevcut model eksikliklerine ışık tutarak ve eğitim metodolojilerinde yeniliği teşvik ederek gelecekteki LLM gelişimine ilham verecek şekilde konumlandırıldı” diye yazıyor.
Kaynak: https://venturebeat.com/ai/self-invoking-code-benchmarks-help-you-decide-which-llms-to-use-for-your-programming-tasks/