Resmi Kod Lama açık kaynak: ticari kullanım için ücretsiz, gizemli sürüm GPT-4'e yakın

Kaynak: Makinenin Kalbi

Editörler: Du Wei, Chen Ping

Bugün, Meta'nın açık kaynaklı Llama model ailesine yeni bir üye eklendi: Kod oluşturma konusunda uzmanlaşmış temel bir model olan Code Llama.

Llama 2'nin koda özgü bir sürümü olan Code Llama, belirli bir kod veri kümesi üzerinde daha da ince ayarlara tabi tutulmuş ve eğitilmiştir.

Meta, Code Llama'nın Llama 2 gibi açık kaynak anlaşmasının araştırma ve ticari amaçlarla ücretsiz olduğunu söyledi.

Konuyla ilgili 47 sayfa ve 25 yazarlı "Code Lama: Open Foundation Models for Code" makalesi yayımlandı.

Kağıt adresi:

GitHub adresi:

Code Llama serisi modellerin 7B, 13B ve 34B parametre miktarlarına sahip üç versiyonu bulunmaktadır. Ayrıca Python, C++, Java, PHP, Type (Java), C# ve Bash dahil olmak üzere birden fazla programlama dilini destekler.

Code Llama, 100.000'e kadar jetonun bağlam oluşturulmasını istikrarlı bir şekilde destekler. Aşağıdaki Şekil 2, Code Llama'nın ince ayar sürecini göstermektedir.

Etkisi açısından, Code Llama'nın farklı versiyonlarının İnsan ve MBPP veri kümeleri üzerindeki geçiş oranı (geçiş@1) GPT-3.5'i aşabilir.

Ayrıca Code Llama'nın "Unnatural" 34B versiyonunun İnsan veri kümesindeki pass@1'i GPT-4'e yakındır (%62,2'ye karşı %67,0). Meta bu sürümü yayınlamadı ancak az miktarda yüksek kaliteli kodlanmış veri üzerinde eğitim vererek önemli performans iyileştirmeleri elde etti.

Bu özel sürüm, aralarında Tesla'nın eski AI direktörü ve OpenAI'ye geri dönen Andrej Karpathy'nin de bulunduğu birçok kişinin dikkatini çekti.

Yazıda "Code Llama-Python 34B'nin 15.000 doğal olmayan talimata göre ayarlanmış versiyonu" olduğu belirtilmesine rağmen, Karpathy hala bu "gizemli isim, belirsiz açıklama ve ezici diğer gizlilik modellerini" merak ediyor.

Kod Laması Nasıl Çalışır

Code Llama çok güçlü kodlama yeteneklerine sahiptir. Kod ve doğal dil istemlerine dayalı kod oluşturabilir (örneğin, kullanıcı girişi istemleri "Fibonacci dizisinin çıktısını veren bir işlev yazmama yardım et.") Ayrıca kullanıcılara kodu tamamlama ve hata ayıklama konusunda da yardımcı olabilir. kod.

Code Llama modelinin üç parametreli versiyonu, 500B kod belirteçleri ve kodla ilgili veriler kullanılarak eğitilir. 7B ve 13B temel ve talimat modelleri aynı zamanda FIM (ortayı doldurma) eğitimlidir ve kodun mevcut koda eklenmesine olanak tanır; bu, kod tamamlama gibi görevleri kutudan çıktığı gibi destekleyebilecekleri anlamına gelir.

Aşağıdaki tablo Code Llama'nın eğitim veri kümesidir.

Her üç modelde de farklı hizmet ve gecikme gereksinimleri karşılanabilmektedir. Örneğin, 7B modeli tek bir GPU üzerinde çalışabilir; 34B modeli en iyi sonuçları verir ve daha iyi kodlama yardımı sağlar, ancak hız açısından daha küçük 7B ve 13B modelleri daha hızlıdır ve aşağıdaki gibi düşük gecikmeli görevler için daha uygundur: Canlı kod tamamlama.

Code Llama yalnızca 100.000'e kadar bağlam belirtecinin istikrarlı bir şekilde oluşturulmasını sağlamakla kalmaz, aynı zamanda tüm modeller için 16.000'e kadar eğitim belirteci dizisi de sağlar. **

Daha uzun programlar oluşturmanın ön koşulu olmasının yanı sıra, daha uzun giriş dizilerine sahip olmak Code Lama'ya yeni yetenekler de getirir. Örneğin kullanıcılar, oluşturulan kodu daha alakalı hale getirmek için modellere kod tabanlarından daha fazla bağlam sağlayabilir.

Meta'nın Code Llama'da iki ek değişkenle daha ince ayar yaptığını belirtmekte fayda var: **Code Llama - Python ve Code Llama - Instruct. **

Code Llama-Python, Code Llama'nın bir çeşididir ve Python kodunun 100B belirteci üzerinde daha da ince ayar yapılmıştır. Aşağıdaki tablo Code Llama-Python'un eğitim veri kümesidir.

Code Llama - Instruct, giriş istemlerinin daha iyi anlaşılması için Code Llama'nın talimatlara dayalı ve hizalanmış bir çeşididir. Meta, kod oluşturmak için Code Llama kullanırken Code Llama - Instruct varyantının kullanılmasını önerir çünkü Code Llama - Instruct, doğal dilde yararlı ve güvenli yanıtlar oluşturacak şekilde ince ayar yapılmıştır.

Meta, genel doğal dil görevleri için Code Llama veya Code Llama - Python kullanılmasını önermediklerini, çünkü her iki modelin de doğal dil talimatlarını takip edecek şekilde tasarlanmadığını belirtti. Code Lama koda özgü görevler için tasarlanmıştır ve diğer görevler için temel model olarak uygun değildir.

Code Llama modellerini kullanırken kullanıcıların Lisans ve Kullanım Politikasına uyması gerekmektedir.

Code Lama'nın performansı nasıl

Meta, test için İnsan ve MBPP (Çoğunlukla Temel Python Programlaması) iki kodlama kriterini kullanır. Bunlar arasında, İnsan test modeli, belge dizisinin (docstrings) kodu tamamlama yeteneğine dayanmaktadır ve MBPP test modeli, kodu tanımlama yeteneğine dayanmaktadır.

Sonuçlar Code Llama'nın açık kaynaklı, kod görevine özel LLM'lerden ve kendi Llama2'sinden daha iyi performans gösterdiğini gösteriyor. Örneğin Code Llama 34B, Human'da %53,7 ve MBPP'de %56,2 puan alıyor; bu, diğer son teknolojiye sahip açık kaynak çözümlerle karşılaştırıldığında en iyisi ve ChatGPT ile karşılaştırılabilir.

Ancak Code Llama'nın da riskleri var.Meta, sorumlu bir yapay zeka modeli oluşturmanın çok önemli olduğunu ve Code Llama'yı yayınlamadan önce birçok güvenlik önlemi aldıklarını söyledi. Kırmızı ekibin test çalışmasının bir parçası olarak Meta, Code Llama'nın kötü amaçlı kod üretme riskine ilişkin niceliksel bir değerlendirme gerçekleştirdi. Modelin kötü amaçlı kod üretmesini sağlamak amacıyla ipuçları oluşturdular ve Code Llama'nın bu ipuçlarına verdiği yanıtları ChatGPT (GPT3.5 Turbo) ile karşılaştırdılar. Code Llama'nın cevabının daha güvenli olduğu ortaya çıktı.

Bu açıdan bakıldığında kodlama yeteneği çok da güçlü olmayan Llama 2'nin yerini Code Llama doldurdu. Meta, Code Llama'nın ortaya çıkmasının diğer araştırmacılara, Llama 2'yi temel alan araştırma ve ticari ürünler için yeni ve yenilikçi araçlar yaratma konusunda ilham vereceğini umuyor.

Referans bağlantısı:

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • Comment
  • Share
Comment
0/400
No comments
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)