| --- |
| language: |
| - tr |
| tags: |
| - code |
| - llama |
| - coding |
| - text-generation |
| datasets: |
| - theblackcat102/evol-codealpaca-v1 |
| - ise-uiuc/Magicoder-Evol-Instruct-110K |
| - nampdn-ai/tiny-codes |
| - turkish-nlp-suite/InstrucTurca |
| license: apache-2.0 |
| --- |
| |
| # SykoLLM-V4.7-CodeX-Beta |
|
|
| **SykoLLM-V4.7-CodeX-Beta**, kodlama ve yazılım geliştirme görevleri için eğitilmiş, Llama mimarisini temel alan kompakt bir dil modelidir. Bu model, çeşitli kodlama veri setleri üzerinde ince ayar (fine-tuning) yapılarak geliştirilmiştir. |
|
|
| **Hugging Face Repo ID:** `SykoSLM/SykoLLM-V4.7-CodeX-Beta` |
|
|
| ## ⚠️ Önemli Uyarı (Beta Sürümü) |
| Bu model şu anda **BETA** aşamasındadır. |
| * Henüz resmi benchmark (kıyaslama) testlerinden geçirilmemiştir. |
| * Şu anki performansı yalnızca manuel testlere dayanmaktadır. |
| * Geliştirme aşamasında olduğu için kod üretirken hatalar yapabilir, halüsinasyon görebilir veya beklenmedik çıktılar verebilir. Lütfen kritik sistemlerde kullanmadan önce çıktıları her zaman kontrol edin! |
|
|
| ## Model Detayları |
| Modelin temel yapılandırma (config) özellikleri şunlardır: |
| * **Mimari:** LlamaForCausalLM |
| * **Gizli Boyut (Hidden Size):** 1024 |
| * **Katman Sayısı (Hidden Layers):** 20 |
| * **Dikkat Başlıkları (Attention Heads):** 8 |
| * **Maksimum Bağlam (Context Window):** 1024 token |
| * **Sözlük Boyutu (Vocab Size):** 32,000 |
|
|
| ## Eğitim Veri Setleri |
| Bu modelin kodlama yeteneklerini geliştirmek için aşağıdaki popüler açık kaynaklı veri setleri kullanılmıştır: |
| 1. [`theblackcat102/evol-codealpaca-v1`](https://huggingface.co/datasets/theblackcat102/evol-codealpaca-v1) |
| 2. [`ise-uiuc/Magicoder-Evol-Instruct-110K`](https://huggingface.co/datasets/ise-uiuc/Magicoder-Evol-Instruct-110K) |
| 3. [`nampdn-ai/tiny-codes`](https://huggingface.co/datasets/nampdn-ai/tiny-codes) |
|
|
| ## Nasıl Kullanılır? |
|
|
| Modeli `transformers` kütüphanesi ile kolayca projenize dahil edebilirsiniz: |
|
|
| ```python |
| from transformers import AutoModelForCausalLM, AutoTokenizer |
| import torch |
| |
| # Modelin repo adı |
| model_id = "SykoSLM/SykoLLM-V4.7-CodeX-Beta" |
| |
| # Tokenizer ve Modeli yükleme |
| tokenizer = AutoTokenizer.from_pretrained(model_id) |
| model = AutoModelForCausalLM.from_pretrained( |
| model_id, |
| torch_dtype=torch.bfloat16, |
| device_map="auto" |
| ) |
| |
| # Test metni |
| user_message = "Python'da bir liste oluştur." |
| |
| # Llama 3 orijinal chat template'inin manuel olarak eklenmesi |
| # user ve assistant rolleri ile special token'lar korundu |
| prompt = ( |
| f"<|begin_of_text|><|start_header_id|>user<|end_header_id|>\n\n" |
| f"{user_message}<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n\n" |
| ) |
| |
| inputs = tokenizer(prompt, return_tensors="pt").to(model.device) |
| |
| # Metin üretimi |
| outputs = model.generate( |
| **inputs, |
| max_new_tokens=100, |
| temperature=0.15, |
| top_p=0.9, |
| early_stopping=True, |
| repetition_penalty=1.16, |
| do_sample=False |
| ) |
| |
| # Çıktıyı decode etme |
| response = tokenizer.decode(outputs[0], skip_special_tokens=True) |
| |
| # Sadece asistanın verdiği cevabı temiz bir şekilde alma |
| final_response = response.split("assistant\n\n")[-1].strip() |
| |
| print(final_response) |