GitHub, kod üreten Copilot makine öğrenme sistemini başlatıyor

GitHub, kod yazarken jenerik yapılar üretebilen GitHub Copilot akıllı asistanının testlerini tamamladığını duyurdu. Sistem, OpenAI projesiyle işbirliği içinde geliştirildi ve halka açık GitHub depolarında barındırılan çok çeşitli kaynak kodları üzerinde eğitilmiş OpenAI Codex makine öğrenimi platformunu kullanıyor. Hizmet, popüler açık kaynak projelerinin sahipleri ve öğrenciler için ücretsizdir. Diğer kullanıcı kategorileri için GitHub Copilot'a erişim ücretlidir (aylık 10 ABD Doları veya yıllık 100 ABD Doları), ancak 60 gün boyunca ücretsiz deneme erişimi sağlanır.

Kod oluşturma, çeşitli çerçeveler kullanılarak Python, JavaScript, TypeScript, Ruby, Go, C# ve C++ programlama dillerinde desteklenir. GitHub Copilot'u Neovim, JetBrains IDE'ler, Visual Studio ve Visual Studio Code ile entegre etmek için modüller mevcuttur. Test işlemi sırasında toplanan telemetriye bakılırsa, hizmet yeterince yüksek kalitede kod oluşturmanıza olanak tanır - örneğin, GitHub Copilot'ta önerilen önerilerin% 26'sı geliştiriciler tarafından olduğu gibi kabul edildi.

GitHub Copilot, mevcut bağlam dikkate alınarak sentezlenen hazır işlevlere kadar, oldukça karmaşık kod blokları oluşturma yeteneği açısından geleneksel kod tamamlama sistemlerinden farklıdır. GitHub Copilot, bir geliştiricinin kod yazma biçimine uyum sağlar ve programda kullanılan API'leri ve çerçeveleri dikkate alır. Örneğin yorumda bir JSON yapısı örneği varsa, bu yapıyı ayrıştırmak için bir fonksiyon yazmaya başladığınızda GitHub Copilot hazır kod sunacak ve tekrarlanan açıklamaların rutin numaralandırmalarını yazarken kalanını oluşturacaktır. pozisyonlar.

GitHub, kod üreten Copilot makine öğrenme sistemini başlatıyor

GitHub Copilot'un önceden oluşturulmuş kod blokları oluşturma yeteneği, potansiyel copyleft lisans ihlali konusunda tartışmalara yol açtı. Makine öğrenimi modeli oluşturulurken GitHub üzerinde barındırılan açık projelerin depolarından alınan gerçek kaynak metinler kullanılmıştır. Bu projelerin çoğu, türev çalışmaların kodunun uyumlu bir lisans altında gönderilmesini gerektiren GPL gibi copyleft lisansları altında gönderilir. Copilot tarafından sağlanan mevcut kodu yapıştırmak, farkında olmadan kodun ödünç alındığı projenin lisansını ihlal edebilir.

Bir makine öğrenimi sistemi tarafından üretilen bir çalışmanın türev olarak kabul edilip edilemeyeceği henüz net değil. Ayrıca bir makine öğrenimi modelinin telif hakkına tabi olup olmadığı ve eğer öyleyse bu hakların kime ait olduğu ve bunların modelin üzerine inşa edildiği kodun haklarıyla nasıl bir ilişkisi olduğu hakkında sorular ortaya çıkar.

Bir yandan, oluşturulan bloklar mevcut projelerden metin pasajlarını tekrarlayabilir, ancak diğer yandan sistem kodun yapısını yeniden oluşturur ve kodun kendisini kopyalamaz. Bir GitHub araştırmasına göre, Copilot'un önerilen tavsiyelerinin yalnızca %1'i mevcut projelerden 150 karakterden uzun kod parçacıklarını içeriyor. Çoğu durumda, yeniden çalıştırmalar, Yardımcı Pilot bağlamı doğru bir şekilde belirleyemediğinde veya bir soruna genel çözümler sağlayamadığında gerçekleşir.

Mevcut kodun değiştirilmesini önlemek için, Copilot'a mevcut projelerle çakışmaya izin vermeyen özel bir filtre eklenmiştir. Yapılandırma sırasında, geliştirici kendi takdirine bağlı olarak bu filtreyi etkinleştirebilir veya devre dışı bırakabilir. Diğer sorunların yanı sıra, sentezlenen kodun, modeli eğitmek için kullanılan kodda bulunan hataları ve güvenlik açıklarını tekrarlayabilme olasılığına dikkat çekilmektedir.

Kaynak: opennet.ru

Yorum ekle