1. DeepSeek Coder Tanıtımı
DeepSeek Coder, sıfırdan eğitilmiş bir dizi kodlama dili modelinden oluşmaktadır. Toplam 2 trilyon (2T) token üzerinde eğitilen bu modellerin %87’si kod, %13’ü İngilizce ve Çince doğal dil verisinden oluşmaktadır. Model serisi, 1B, 5.7B, 6.7B ve 33B olmak üzere farklı boyutlarda sunulmaktadır.
Her model, 16K pencere boyutu ve boşluk doldurma (fill-in-the-blank) görevi kullanılarak proje düzeyinde kod tamamlama ve kod infill işlemleri için optimize edilmiştir.
Öne Çıkan Özellikler
- Geniş Eğitim Verisi: 2 trilyon token üzerinde eğitildi, %87 kod ve %13 doğal dil (İngilizce ve Çince) içermektedir.
- Esnek ve Ölçeklenebilir: 1B, 5.7B, 6.7B ve 33B gibi farklı model boyutları sunularak kullanıcıların ihtiyaçlarına uygun yapılandırmalar sağlar.
- Üstün Model Performansı: HumanEval, MultiPL-E, MBPP, DS-1000 ve APPS gibi benchmark testlerinde açık kaynaklı kod modelleri arasında en iyi performansı sergiler.
- Gelişmiş Kod Tamamlama: 16K pencere boyutu ve boşluk doldurma (fill-in-the-blank) mekanizması sayesinde proje bazlı kod tamamlama ve infill görevlerinde üstün performans sunar.
Desteklenen Programlama Dilleri
DeepSeek Coder, 85’ten fazla programlama dilini desteklemektedir. Bunlardan bazıları şunlardır:
Ada, Agda, Alloy, ANTLR, AppleScript, Assembly, C, C#, Clojure, C++, CSS, Dart, Dockerfile, Elixir, Elm, Erlang, Go, Haskell, HTML, Java, JavaScript, JSON, Kotlin, Lua, Markdown, MATLAB, OCaml, Pascal, Perl, PHP, PowerShell, Prolog, Python, R, Ruby, Rust, Scala, Shell, Solidity, SQL, Swift, TypeScript, Verilog, YAML, Zig.
2. Değerlendirme Sonuçları
DeepSeek Coder, çeşitli kodlama odaklı benchmark testlerinde değerlendirildi. Aşağıdaki tabloda HumanEval (Python & Multilingual), MBPP ve DS-1000 testlerindeki Pass@1 sonuçları sunulmuştur.
Öne Çıkan Bulgular:
- DeepSeek-Coder-Base-33B, açık kaynaklı kod modellerini önemli ölçüde geride bırakmıştır.
- CodeLlama-34B’ye kıyasla HumanEval Python’da %7.9, HumanEval Multilingual’da %9.3, MBPP’de %10.8 ve DS-1000’de %5.9 daha iyi performans göstermiştir.
- DeepSeek-Coder-Base-7B, CodeLlama-34B seviyesine ulaşmıştır.
- DeepSeek-Coder-Instruct-33B, GPT-3.5 Turbo’yu HumanEval’da geçerek MBPP’de benzer sonuçlar elde etmiştir.
Daha fazla değerlendirme ayrıntısı için Detaylı Değerlendirme bölümüne göz atabilirsiniz.
3. Veri Oluşturma ve Model Eğitimi Süreci
Veri Toplama ve İşleme
- GitHub’dan kod verisi toplanır ve StarCoder filtresi kullanılarak gereksiz veriler temizlenir.
- Bağımlılık analizi yapılarak, dosya ilişkileri belirlenir ve sıralama buna göre yeniden düzenlenir.
- Bağımlı dosyalar birleştirilerek tek bir örnek haline getirilir ve repo seviyesinde minhash yöntemi ile yinelenen veriler kaldırılır.
- Sözdizimsel hatalar içeren veya düşük kaliteli kodlar filtrelenerek dışarıda bırakılır.
Model Eğitimi
- Adım 1: İlk ön eğitim %87 kod, %10 kodla ilgili dil verisi (GitHub Markdown & StackExchange) ve %3 doğal dil (Çince) içeren 1.8T token ile yapılır.
- Adım 2: 16K pencere boyutu ile ek 200 milyar token üzerinde ön eğitim yapılır ve DeepSeek-Coder-Base modelleri oluşturulur.
- Adım 3: 2 milyar tokenlik komut verisi ile komut tabanlı ince ayar (instruction fine-tuning) uygulanır ve DeepSeek-Coder-Instruct modelleri oluşturulur.
4. Ayrıntılı Değerlendirme Sonuçları
Aşağıdaki değerlendirme sonuçları için yeniden üretilebilir kod, Değerlendirme dizininde bulunabilir.
1) Çok Dilli HumanEval Benchmark
2) MBPP Ölçütü
3) DS-1000 Karşılaştırması
4) Program Yardımlı Matematik Muhakeme Ölçütü
5.İletişim
Herhangi bir sorunuz varsa lütfen bir sorun bildirin veya service@deepseekturkce.com adresinden bizimle iletişime geçin.