Microsoft için, makine tarafından oluşturulan herhangi bir kod, bir “iyimserlik ve ihtiyat karışımı” ile ele alınmalıdır, çünkü programlama, kodlanmış büyük dil modelleri kullanılarak otomatikleştirilebilirken. Bu harika önceden eğitilmiş dil modellerinden bazıları arasında OpenAI’nin Codex’i, Google’ın BERT doğal dil programı ve DeepMind’in kod oluşturma çalışmaları yer alır. Ağustos ayında açıklanan OpenAI Codex, Microsoft’un sahip olduğu GitHub Copilot aracı aracılığıyla kullanılabilir.

Bu yapay zeka (AI) ile geliştirilmiş dil modellerinden kaynaklanan kod kalitesi zorluğunun üstesinden gelmek için Microsoft araştırmacıları, sözdizimini ve programların semantiği, ardından gelecekteki performansı iyileştirmek için kullanıcı geri bildirimlerinden yararlanın.”

Microsoft, aracın şu anda çok modlu girdiler kullanarak Python’un Pandas API kodunu sentezlemek için tasarlandığını söylüyor. Pandas’ın Python programlama dilini kullanan veri bilimcileri için popüler bir veri işleme ve analiz kitaplığı olduğunu hatırlayın.

Yapay zeka kullanarak dil modellerini inceleyin

Codex gibi dil modelleri, bir geliştiricinin bir kod parçası için İngilizce bir açıklama kullanmasına izin verir ve model, amaçlanan kodu Python veya JavaScript’te sentezleyebilir. Ancak, bu kod yanlış olabilir veya derlenmeyebilir veya çalıştırılamayabilir, bu nedenle geliştirici, Microsoft’un işaret ettiği gibi, kullanmadan önce kodu kontrol etmelidir.

Microsoft Research’ten Jigsaw ekibi, “Jigsaw projesi, kod sentezi için Codex gibi büyük dil modellerini kullanan geliştiricilerin üretkenliğini artırmak için bu doğrulamanın bir kısmını otomatikleştirmeyi amaçlıyor” diye açıklıyor.

Microsoft, Jigsaw’ın kod derlemesini kontrol etme, hata mesajlarıyla ilgilenme ve kodun geliştiricinin üretmeyi amaçladığı şeyi üretip üretmediğini test etme sürecinin tamamını “tamamen otomatikleştirebileceğine” inanıyor. “Jigsaw, giriş/çıkış örneğinin yanı sıra amaçlanan kodun İngilizce açıklamasını girdi olarak alır. Bu şekilde, bir girdiyi ilişkili çıktıyla ilişkilendirir ve çıktı Python kodunun sağlanan girdi üzerinde amaçlanan çıktıyı derleyip üreteceği konusunda kalite güvencesi sağlar.

İnsan geliştiriciler için tehdit yok mu?

Jigsaw ile bir veri bilimcisi veya geliştiricisi, amaçlanan dönüşümün İngilizce olarak bir tanımını, bir girdi veri çerçevesini ve karşılık gelen çıktı veri çerçevesini sağlar. Jigsaw daha sonra beklenen kodu sentezler.

Microsoft’a göre Jigsaw, vakaların %30’unda doğru sonucu oluşturabilir. Nasıl ? Doğal dili ve Codex ve GPT-3’te tanıtılan diğer parametreleri önceden işleyerek, ardından son işlenmiş sonucu inceleme ve düzenleme için bir insan geliştiriciye geri göndererek. Bu doğrulama daha sonra onları iyileştirmek için ön işleme ve son işleme mekanizmalarına geri beslenir. Kod başarısız olursa, Jigsaw, işlem sonrası aşamada onarım işlemini tekrarlar.

Amerikan devi için Jigsaw, sonuçların doğruluğunu %60’ın üzerine çıkarıyor. Redmond firması ayrıca aletinin doğruluğunu %80’in üzerine çıkarmak için kullanıcı geri bildirimlerine güveniyor. Microsoft, gerçek bir “çift zamanlayıcı” olmadan önce çeşitli zorlukların üstesinden gelinmesi gerektiğini not eder. Örneğin, yalnızca sentezlenen kodun giriş/çıkış kalitesini test etti. Gerçekte, kodun kalitesi, performansının iyi olup olmadığını, güvenlik kusurları olup olmadığını ve lisansa saygı duyup duymadığını belirlemeyi içerir.

Kaynak : ZDNet.com



genel-15