Yedikule 1.4, GGUF sürümü

MarulAI/Yedikule-1.4 modelinin llama.cpp, Ollama, LM Studio ve GGUF destekleyen diğer araçlarla doğrudan çalışan biçimi. Depoda altı dosya var: ana modelle bit düzeyinde aynı olan BF16 dosyası, onunla pratikte birebir aynı ve daha geniş desteklenen F16 dosyası ve bu model için ölçülerek hazırlanmış dört nicelenmiş sürüm.

Yedikule 1.4, Marul AI'ın Türkçe için sıfırdan eğittiği 202 milyon parametreli dil modelinin en yeni sürümüdür. Cevap vermeden önce kısa bir düşünme yapar, sistem mesajına uyar ve kendisine verilen araçları çağırabilir. Model, eğitim verisi ve ölçüt sonuçları için ana model kartına bakın.

Dosyalar

Dosya Boyut Gereken bellek Perplexity değişimi En olası token ana modelle aynı Kimin için
yedikule-1.4-bf16.gguf 406 MB 560 MB yok yüzde 100 ana modelle bit düzeyinde aynı sonuç
yedikule-1.4-f16.gguf 406 MB 560 MB yok yüzde 100 BF16'yı desteklemeyen cihaz ve uygulamalar
yedikule-1.4-Q8_0.gguf 217 MB 370 MB +0,02 yüzde 99,3 çoğu kullanıcı için en iyi seçim
yedikule-1.4-Q6_K.gguf 177 MB 335 MB +0,08 yüzde 98,4 daha küçük, kayıp çok az
yedikule-1.4-Q5_K_M.gguf 158 MB 315 MB +0,20 yüzde 97,6 depolaması sınırlı cihazlar
yedikule-1.4-Q4_K_M.gguf 140 MB 330 MB +0,39 yüzde 96,5 en küçük dosya

Perplexity değişimi yüzde olarak verilmiştir ve modelin eğitimde hiç görmediği 568 sohbetteki asistan cevapları (312.669 token) üzerinde ölçülmüştür. En olası token sütunu, aynı metin verildiğinde dosyanın bir sonraki token için ana modelle aynı tahmini yapma oranıdır. Ayrıntılı sonuçlar aşağıdaki Ölçüm sonuçları bölümündedir.

Gereken bellek, llama.cpp ile 2048 tokenlik bağlam doluyken (anahtar/değer önbelleği F16) ölçülen en yüksek RAM kullanımıdır. llama.cpp işlemcide 4 bitlik ağırlıkları daha hızlı çalışsın diye bellekte ayrıca yeniden düzenler; Q4_K_M'nin Q5_K_M'den biraz fazla bellek kullanmasının nedeni budur (--no-repack ile 300 MB). İşlemcide F16 ve nicelenmiş sürümler BF16'dan daha hızlı üretir: aynı ölçümde F16 1,7 kat, Q8_0 2,5 kat, Q4_K_M 3,2 kat hızlıydı.

Hangi dosyayı seçmeli:

  • Q8_0 çoğu kullanıcı için en iyi seçimdir. Ana modelden farkı çok küçüktür (perplexity yüzde 0,02 artar), dosya BF16'nın yarısı kadardır ve işlemcide yaklaşık 2,5 kat hızlı çalışır.
  • Q6_K ve Q5_K_M, depolamanın ya da belleğin daha kısıtlı olduğu cihazlar içindir. Kayıp yine de çok küçüktür.
  • Q4_K_M en küçük dosyadır; telefon ve eski bilgisayarlar için uygundur. Ollama'da sürüm belirtilmezse bu dosya indirilir.
  • BF16, ana modelle bit düzeyinde aynı sonuç gereken araştırma ve karşılaştırma işleri içindir.
  • F16, BF16 ile aynı sonucu verir ama daha geniş desteklenir. BF16'yı desteklemeyen ekran kartlarında ve mobil uygulamalarda tam hassasiyet için bunu kullanın.

Telefonda kullanım: Q8_0 ya da Q4_K_M önerilir. Bazı cihazlarda mobil uygulamaların nicelenmiş ve BF16 ağırlıkları işleyen hesap yolu hatalı çalışabiliyor. Bu durumda model anlamsız kelime parçaları ya da <|unk|> gibi tokenler üretir veya hiçbir şey yazmaz. Bu, dosyadan değil cihazdaki hesaplama yolundan kaynaklanır: bir MediaTek Dimensity 8500 telefonda PocketPal 1.19.0 ile görüldü, aynı dosyalar başka bir telefonda PocketPal ile ve bilgisayarda doğru çalıştı. Böyle bir durumda önce uygulamayı güncelleyin, düzelmezse F16 sürümünü deneyin.

Ollama ile kullanım

Doğrudan Hugging Face'ten:

ollama run hf.co/MarulAI/Yedikule-1.4-GGUF:Q8_0

Sondaki etiketi Q6_K, Q5_K_M, Q4_K_M, F16 veya BF16 yapabilirsiniz; etiket verilmezse Q4_K_M indirilir. Sohbet şablonu, varsayılan sistem mesajı ve önerilen üretim ayarları depodaki template, system ve params dosyalarından kendiliğinden gelir.

İndirdiğiniz bir dosyayla:

ollama create yedikule -f Modelfile
ollama run yedikule

Modelfile varsayılan olarak BF16 dosyasını kullanır; başka bir sürüm için FROM satırındaki dosya adını değiştirin, örneğin FROM ./yedikule-1.4-Q8_0.gguf. Model Ollama'da düşünme ve araç çağırma yetenekleriyle tanınır: düşünme cevaptan ayrı gösterilir (--hidethinking ile gizlenebilir), araç çağrıları API'de tool_calls alanına yapılandırılmış olarak gelir.

llama.cpp ile kullanım

llama-cli -m yedikule-1.4-Q8_0.gguf --jinja -c 2048 --temp 0.4 --top-k 50 --top-p 0.9 --min-p 0.05 --repeat-penalty 1.12 --repeat-last-n 2048
llama-server -m yedikule-1.4-Q8_0.gguf --jinja -c 2048

Sohbet şablonu her dosyanın üstverisine gömülüdür; --jinja ile sistem mesajı, araç tanımları, düşünme ve araç çağrıları eğitimdeki biçimin birebir aynısıyla oluşturulur. llama-server'ın OpenAI uyumlu /v1/chat/completions uç noktasında düşünme reasoning_content, cevap content, araç çağrıları tool_calls alanına ayrı ayrı gelir.

Niceleme yöntemi

Nicelenmiş dosyalar hazır bir ayarla değil, bu modelin kendisi ölçülerek hazırlandı. Amaç her boyutta ana modelden olabildiğince az sapmaktı. Sonuçta ana modelden sapma, llama.cpp'nin standart nicelemesine göre Q6_K'da yaklaşık yarıya, Q5_K_M'de yarının altına, Q4_K_M'de ise yaklaşık dörtte birine indi.

1. Modelin kendi verisiyle kalibrasyon. Niceleme sırasında hangi ağırlıkların daha hassas saklanacağını belirleyen önem matrisi (imatrix), modelin gerçek kullanımına benzeyen veriyle hesaplandı: Marul-SFT-TR'nin eğitim kısmından 517 sohbet, eğitimdeki sohbet biçimiyle birlikte (sistem mesajı, düşünme, araç tanımları ve araç çağrıları dahil) ve düz Türkçe metin (Vikipedi ve haber metinleri). Toplam 530 bin token.

2. Tensör tensör hassasiyet ölçümü. Modeldeki 169 ağırlık matrisinin her biri tek başına dört farklı biçime (Q4_K, Q5_K, Q6_K, Q8_0) nicelendi ve modelin çıktı dağılımının ne kadar bozulduğu KL ıraksamasıyla ölçüldü; sohbet ve düz metin üzerinde toplam 1.352 ölçüm. Ölçüm iki önemli şey gösterdi:

  • En hassas tensör, aynı zamanda modelin çıkış katmanı olan gömme matrisidir. 48 bin tokenlik sözlük nedeniyle parametrelerin yüzde 18'ini oluşturur ve 4 bite indirildiğinde tek başına, neredeyse bütün katman matrislerinin toplamı kadar bozulma yaratır.
  • Orta ve son katmanlar, ilk katmanlardan yaklaşık beş kat daha hassastır. Standart nicelemenin kullandığı sabit kurallar bu farkı bilmez.

3. Bitlerin en çok işe yarayacakları yere dağıtılması. Her dosya için, ölçülen hassasiyetlere göre hangi matrisin hangi biçimde saklanacağı kesin bir eniyilemeyle (dinamik programlama) seçildi. İki kural uygulandı: hiçbir matris dosya adındaki biçimin altına inmez ve toplam boyut, gömmesi Q8_0 olan standart karışımın boyutunu aşmaz. Bu yüzden dosyalar aynı türdeki standart dosyalardan yaklaşık 9 MB büyüktür.

Dosya Q4_K Q5_K Q6_K Q8_0
Q8_0 169
Q6_K 168 1 (gömme)
Q5_K_M 64 93 12
Q4_K_M 44 90 35

Tabloda 169 ağırlık matrisinin biçimlere dağılımı görülür. Norm ağırlıkları bütün dosyalarda F32 olarak, kaynakla bit düzeyinde aynı saklanır.

4. Doğrulama. Her dosya ana modelle şu yollarla karşılaştırıldı:

  • Dosyadaki ağırlıklar birebir açılıp ana modelle aynı metinler üzerinde çalıştırıldı. Bu metinler, kalibrasyonda ve hassasiyet ölçümünde kullanılmayan 568 doğrulama sohbeti ve 296 düz metin parçasıdır.
  • Aynı karşılaştırma gerçek llama.cpp çalışmasında da yapıldı.
  • Sözlük, sohbet şablonu, özel token kimlikleri ve bütün üstveri BF16 dosyasıyla birebir aynıdır.
  • Ollama ve llama-server'da düşünme, araç çağırma ve araç sonucuyla devam etme akışı test edildi.
  • Araç çağırma doğruluğu, ana model kartındaki ölçümle aynı sohbetler üzerinde yeniden ölçüldü.

Ölçüm sonuçları

Ana modele göre sapma, modelin eğitimde hiç görmediği 568 sohbetteki asistan cevaplarında (312.669 token):

Dosya KL ıraksaması En olası token aynı Perplexity
BF16 0 yüzde 100 5,421
F16 0,00000003 yüzde 100 5,421 (0)
Q8_0 0,00019 yüzde 99,29 5,422 (+0,02)
Q6_K 0,00107 yüzde 98,36 5,425 (+0,08)
Q5_K_M 0,00225 yüzde 97,58 5,432 (+0,20)
Q4_K_M 0,00497 yüzde 96,46 5,442 (+0,39)

KL ıraksaması, dosyanın her token için verdiği olasılık dağılımının ana modelinkinden ne kadar uzaklaştığını ölçer; sıfır, birebir aynı demektir. Düz Türkçe metinde (Vikipedi ve haber, 136.072 token) sonuçlar aynı düzendedir: KL ıraksaması sırasıyla 0,00020, 0,00095, 0,00233 ve 0,00508.

Standart nicelemeyle karşılaştırma, aynı sohbetlerde KL ıraksaması:

Biçim llama.cpp standart Standart ve bu kalibrasyon Bu depo Sapmadaki azalma
Q6_K 0,00205 0,00184 0,00107 yüzde 48
Q5_K_M 0,00511 0,00422 0,00225 yüzde 56
Q4_K_M 0,01753 0,01400 0,00497 yüzde 72

Standart Q4_K_M'de en olası token yüzde 93,55 oranında ana modelle aynıdır ve perplexity yüzde 1,49 artar; bu depodaki Q4_K_M'de bu değerler yüzde 96,46 ve yüzde 0,39'dur. Gerçek llama.cpp çalışmasında (işlemci, düz metin) ölçülen KL ıraksaması aynı sonucu verdi: Q4_K_M'de 0,0146'dan 0,0058'e, Q5_K_M'de 0,0053'ten 0,0030'a, Q6_K'da 0,0029'dan 0,0015'e indi. Q8_0 bu ölçümde 0,0004'tür.

Araç çağırma, ana model kartındaki ölçümle aynı 441 doğrulama sohbetinde (282'si araç gerektiren, 159'u gerektirmeyen) Ollama'da yeniden ölçüldü:

Dosya Geçerli çağrı Doğru araç Zorunlu parametreler tam Görülmemiş araç Gereksiz çağrı yapmama
BF16 91,1 76,6 89,4 73,3 73,0
F16 91,1 76,6 89,4 73,3 73,0
Q8_0 90,4 77,3 89,4 73,3 72,3
Q6_K 91,1 79,1 88,7 73,3 74,8
Q5_K_M 90,1 78,7 87,9 73,3 73,0
Q4_K_M 90,1 78,4 87,6 73,3 69,2

Değerler yüzdedir. Bu büyüklükte bir örnekte bir iki puanlık farklar ölçüm gürültüsüdür; araç gerektiren durumlarda tek bir sohbet 0,35 puan eder. Bütün dosyalar araç çağırmada ana modelle aynı düzeydedir. Yalnızca Q4_K_M, araç gerekmeyen durumlarda biraz daha sık araç çağırdı (159 sohbetin 6'sında daha). Test, en olası token seçilerek ve tekrar cezası kapalıyken yapıldı; bu koşulda Q5_K_M ve Q4_K_M 441 sohbetin birinde döngüye girdi ve o sohbet yanlış sayıldı.

BF16 dosyasının doğrulaması

BF16 dosyası, ağırlıkların ve davranışın korunduğundan emin olmak için ayrıntılı olarak test edildi:

Kontrol Sonuç
Tensörler 266/266 tensör ana modelle bit düzeyinde aynı, en büyük fark 0
Üstveri mimari, boyutlar, RoPE tabanı, RMS epsilon ve özel token kimlikleri doğru
Sözlük 48.000 token ve 47.728 birleştirme; bütün tokenlerin kimliği ve adı ana modelle aynı
Sohbet şablonu 6.000 gerçek sohbette eğitim biçimiyle karakter düzeyinde aynı (1.008'i araçlı)
Tokenizasyon sayı, tarih, Türkçe ek, kod, emoji ve özel token içeren 301 metnin tamamında token sayıları ana tokenizer ile aynı
Sonraki token aynı token dizisi verildiğinde, ölçülen 319 konumun tamamında en olası token ana modelle aynı; log-olasılık farkı medyan 0,0003 (ekran kartı), 0,0008 (işlemci)
Üretim 24 soruda, en olası token seçilerek üretilen ilk 64 token ana modelle birebir aynı (Ollama, NVIDIA ekran kartı)
Düşünme ve araçlar Ollama'da düşünme ayrı alana, araç çağrıları tool_calls alanına yapılandırılmış olarak düştü; araç sonucuyla devam eden tam akış işlemcide ve ekran kartında çalıştı

Farklı çalışma ortamları kayan nokta toplamalarını farklı sırada yapar. İki adayın olasılığının neredeyse eşit olduğu nadir adımlarda bu, uzun bir üretimin sonraki kısmını farklı bir yola sokabilir: işlemcide 24 sorunun 19 ile 21'i 64 token boyunca birebir aynı kaldı ve ayrışmaların hepsi iki aday arasındaki farkın 0,06'nın altında olduğu adımlarda oldu. Bu her GGUF dosyasında görülen normal bir durumdur, ağırlık farkı değildir.

En yüksek doğruluk için anahtar/değer önbelleğini varsayılan F16 biçiminde bırakın. Ollama'da OLLAMA_KV_CACHE_TYPE ile q4_0 seçmek belleği azaltır ama sonuçları ana modelden belirgin biçimde uzaklaştırır: aynı ölçümde en olası tokenin ana modelle aynı olma oranı yüzde 95,6'ya düştü, log-olasılık farkları 0,7'ye kadar çıktı. Bu sapma Q4_K_M dosyasının kendi kaybıyla aynı büyüklüktedir ve hangi dosyayı kullanırsanız kullanın ona eklenir.

Ana modelin ağırlıkları bf16'dır. BF16 GGUF, bu bitleri hiç değiştirmeden saklar; dosyadaki her ağırlık safetensors dosyasındakiyle bit düzeyinde aynıdır. F16 dosyası bit düzeyinde aynı değildir: F16'nın sayı aralığı daha dar olduğu için 0,00000006'dan küçük ağırlıklar (ağırlıkların yüzde 2,6'sı) sıfırlanır. Bunların etkisi ölçülemeyecek kadar küçüktür: KL ıraksaması 0,00000003, en olası token yüzde 100 aynı, perplexity altı basamağa kadar aynı. Norm ağırlıkları (tek boyutlu tensörler) F32 olarak yazılır, çünkü llama.cpp bunları F32 bekler; bf16'dan f32'ye geçiş kayıpsızdır.

BF16, llama.cpp'nin işlemci yolunda bütün platformlarda desteklenir ve güncel sürümlerde ekran kartı arka uçlarında da çalışır. BF16 hesaplamayı desteklemeyen bir ekran kartında llama.cpp ilgili işlemleri işlemciye devreder; model yine doğru çalışır, yalnızca daha yavaş olabilir. F16 ve nicelenmiş dosyalardaki biçimler (Q8_0 ve K-quant türleri) llama.cpp'nin bütün arka uçlarında desteklenir.

Mimari etiketi neden qwen3

GGUF dosyası hangi hesaplama grafiğiyle çalıştırılacağını general.architecture alanında bildirir. llama.cpp bu ada bakarak grafiği kurar ve tanımadığı bir adı yüklemez.

Yedikule sıfırdan eğitilmiş bağımsız bir modeldir ve başka bir modelden türetilmemiştir. Kullandığı bileşenler (pre-norm RMSNorm, RoPE, SwiGLU, Grouped Query Attention, başlık boyutunda QK-Norm, bağlı gömme, bias yok) llama.cpp'nin qwen3 hesaplama grafiğiyle birebir örtüşür. Bu yüzden ağırlıklar o grafiğin beklediği tensör adlarına eşlendi; hesaplama sırası korundu, hiçbir ağırlık dönüştürülmedi. Bu yalnızca bir çalıştırma uyumluluğu etiketidir. Modelin adı, sürümü, üreticisi, temel modeli ve eğitim verisi ayrı üstveri alanlarında Yedikule ve Marul AI olarak kayıtlıdır.

Tokenizer ve özel tokenler

Tokenizer, ana modeldeki 48 bin tokenlik Byte-Level BPE'nin aynısıdır. tokenizer.ggml.pre alanı gpt-2 değerindedir; Yedikule'nin ön bölümleyicisi GPT-2 düzenli ifadesini kullanır ve llama.cpp'de karşılığı budur.

Düşünme ve araç tokenleri yaygın kullanılan okunabilir adlarla kayıtlıdır; adlar ve kimlikler ana modelin tokenizer'ıyla ve depodaki altı dosyanın hepsinde birebir aynıdır. llama.cpp, Ollama ve LM Studio gibi araçlar bu adlar sayesinde düşünmeyi ve araç çağrılarını tanır.

Kimlik Ad Anlamı
9 <think> düşünme başlangıcı
10 </think> düşünme sonu
11 <tool_call> araç çağrısı başlangıcı
12 </tool_call> araç çağrısı sonu
13 <|tool|> araç sonucu rolü
14 <tools> araç tanımları başlangıcı
15 </tools> araç tanımları sonu

Sohbet şablonu

<|im_start|><|system|>
{sistem mesajı}<|im_end|>
<|im_start|><|user|>
{kullanıcı mesajı}<|im_end|>
<|im_start|><|assistant|>
<think>{düşünme}</think>
{cevap}<|im_end|>

Standart ChatML değildir: rol adları düz metin değil, ayrı özel tokenlerdir. <|bos|> tokeni çalıştırıcı tarafından otomatik eklenir. Üretim <|im_end|> (5) tokeninde durur.

Araç tanımları sistem turunun sonuna <tools> ve </tools> arasında, her biri tek satırlık boşluksuz bir JSON olarak eklenir; model çağrılarını <tool_call>{"name":...,"arguments":{...}}</tool_call> biçiminde yazar, araç sonucu <|tool|> rolüyle ayrı bir turda verilir. Gömülü şablon, Modelfile ve template dosyası bunların hepsini kendiliğinden yapar. Ayrıntılı açıklama ana model kartındadır.

Önerilen üretim ayarları

Modelfile ve params içindeki değerler:

Ayar Değer
temperature 0.4
top_k 50
top_p 0.9
min_p 0.05
repeat_penalty 1.12
repeat_last_n 2048 (bütün bağlam)
num_ctx 2048
num_predict 1024
stop <|im_end|>

Bu değerler ana model için yapılan bir ölçümle seçildi: tekrar döngüsüne girme oranını en aza indirirken araç çağırma doğruluğunu korur. Bütün dosyalarda aynı ayarları kullanın. Daha olgusal cevaplar için sıcaklığı 0.3'e indirebilir, daha yaratıcı metinler için 0.6'ya kadar çıkarabilirsiniz. Tekrar cezasını 1.15'in üzerine çıkarmayın.

Sınırlar

Model 202 milyon parametrelidir. Günlük sohbet, açıklama, özetleme, metin düzeltme, yazım ve araçlarla çalışmada iyi sonuç verir; geniş dünya bilgisi isteyen sorularda ve aritmetikte hata yapabilir. Hesap gerektiren işlerde ona bir hesap makinesi aracı verin. Bilgisi 2026 yılına kadardır, internete erişimi yoktur. Ürettiği bilgiyi doğrulamadan kullanmayın.

Lisans

Yedikule Model Lisansı 2.0. Telif hakkı sahibi Ahmet Karakuş (Marul AI). Bağlayıcı metin LICENSE.md dosyasındadır.

İzin almadan modeli çalıştırabilir, ince ayar yapabilir, niceleyebilir ve sonucu yayımlayabilirsiniz; hepsi ticari olmayan kullanımla sınırlıdır. Atıf yapmanız, türev modelinizin adında Yedikule geçirmeniz ve lisansı birlikte dağıtmanız gerekir.

Türevler de bu lisansa tabidir, kendi lisansınızla yeniden lisanslayamazsınız. Ticari kullanım yazılı izne bağlıdır.

Ticari lisans ve izin talepleri: marulai.resmi@gmail.com (Ahmet Karakuş, Marul AI)

Atıf

Bu çalışma Yedikule modeline dayanmaktadır.
Yedikule, 202M parametreli Türkçe dil modeli.
Ahmet Karakuş, Marul AI, 2026.
https://huggingface.co/MarulAI/Yedikule-1.4-GGUF

Eğitim verisi:

Marul-SFT-TR, Ahmet Karakuş (Marul AI), 2026.
https://huggingface.co/datasets/MarulAI/Marul-SFT-TR
Downloads last month
250
GGUF
Model size
0.2B params
Architecture
qwen3
Hardware compatibility
Log In to add your hardware

4-bit

5-bit

6-bit

8-bit

16-bit

Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for MarulAI/Yedikule-1.4-GGUF

Quantized
(1)
this model

Dataset used to train MarulAI/Yedikule-1.4-GGUF

Collection including MarulAI/Yedikule-1.4-GGUF