🦜 Kumru-2B-CodeAlpaca (Turkish Code Generation Model)
Model Summary
Kumru-2B-CodeAlpaca, Türkçe kod üretimi görevleri için fine-tune edilmiş bir dil modelidir. Model, vngrs-ai/Kumru-2B-Base tabanlı olup Turkish-CodeAlpaca-20k veri kümesiyle QLoRA yöntemi (4-bit LoRA adaptasyonu) kullanılarak eğitilmiştir.
Model, Türkçe komutlardan Python, SQL, HTML, PHP ve C gibi dillere kod üretebilir.
🧠 Model Details
| Özellik | Değer |
|---|---|
| Base Model | vngrs-ai/Kumru-2B-Base |
| Fine-tune Dataset | berhaan/Turkish-CodeAlpaca-20k |
| Parameters | ≈ 2B |
| Method | QLoRA (4-bit, NF4 quantization) |
| Framework | 🤗 Transformers + TRL + PEFT |
| Language | Turkish (primary), English (secondary code syntax) |
| License | CC-BY-4.0 |
| Author | @berhaan |
⚙️ Training Configuration
| Parametre | Değer |
|---|---|
| Hardware | NVIDIA A100 40GB |
| Batch Size | 8 × 2 (gradient accumulation) |
| Sequence Length | 512 |
| Learning Rate | 2e-4 |
| Epochs | 3 |
| Optimizer | paged_adamw_8bit |
| Precision | bfloat16 |
| LoRA Config | r=16, α=32, dropout=0.05 |
📊 Evaluation Results
(expected +30–50%)
Fine-tuned model, Türkçe kodlama görevlerinde taban modele göre belirgin gelişme göstermiştir. Özellikle Python ve SQL örneklerinde daha kısa ve doğru fonksiyonlar üretmektedir.
💻 Usage Example
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "berhaan/kumru-2b-codealpaca"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto"
)
prompt = "Girilen sayının asal olup olmadığını kontrol eden bir Python fonksiyonu yaz. Yalnızca kodu döndür."
inputs = tokenizer(prompt, return_tensors="pt", return_token_type_ids=False).to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=128,
repetition_penalty=1.15,
no_repeat_ngram_size=5,
do_sample=False, # Tutarlı (asal sayı) çıktısı almak için
eos_token_id=tokenizer.eos_token_id,
pad_token_id=tokenizer.pad_token_id
)
output_text = tokenizer.decode(outputs[0][inputs.input_ids.shape[1]:], skip_special_tokens=True)
print("--- ÜRETİLEN KOD ---")
print(output_text.strip())
"""
--- ÜRETİLEN KOD ---
Asal sayı kontrolü
def is_prime(num): if num < 2: return False for i in range(2, int(num**0.5) + 1): if num % i == 0: return False return True """
⚖️ Limitations & Biases
Kumru-2B-CodeAlpaca, Türkçe kod üretiminde oldukça başarılı olsa da aşağıdaki sınırlamalara dikkat edilmelidir:
- Dil Uyumu: Model, yalnızca Türkçe açıklama ve talimatlar üzerinde eğitildiği için İngilizce promptlarda performansı düşebilir.
- Kod Tutarlılığı: Uzun veya çok adımlı algoritmalarda bazen gereksiz tekrarlar veya fazladan çıktılar üretebilir.
- Çıktı Güvenliği: Üretilen kodlar doğrudan çalıştırılmadan önce mutlaka gözden geçirilmelidir; çünkü mantıksal veya sözdizimsel hatalar oluşabilir.
- Yaratıcılık – Doğruluk Dengesi:
temperatureparametresi yükseltildiğinde yaratıcı ama hatalı kodlar üretebilir.
Model, profesyonel geliştiriciler için yardımcı araç olarak kullanılmalı, doğrudan üretim ortamlarında denetimsiz kullanılmamalıdır.
🌱 Environmental Impact
| Özellik | Değer |
|---|---|
| GPU | NVIDIA A100 (40 GB) |
| Training Süresi | ~1.5 saat |
Eğitim süreci sırasında enerji verimliliği için karma hassasiyet (bfloat16) ve 4-bit quantization kullanılmıştır.
📚 Citation
APA:
Berhan A. (2025). Kumru-2B-CodeAlpaca: A Turkish Instruction-Tuned Code Generation Model. Hugging Face. https://huggingface.co/berhaan/kumru-2b-codealpaca
BibTeX:
@misc{berhaan2025kumru2bcodealpaca,
author = {Berhan, A.},
title = {Kumru-2B-CodeAlpaca: A Turkish Instruction-Tuned Code Generation Model},
year = {2025},
howpublished = {\url{[https://huggingface.co/berhaan/kumru-2b-codealpaca](https://huggingface.co/berhaan/kumru-2b-codealpaca)}},
}
- Downloads last month
- 94
Model tree for berhaan/kumru-2b-codealpaca
Base model
vngrs-ai/Kumru-2B-Base