Loading…
Loading…
Töz-1, Töz AI'ın sıfırdan eğittiği ilk Türkçe dil modelidir: 195 milyon parametre, yalnızca Türkçe, tokenizer'dan ağırlıklara kadar her şey kendi eğitimimiz. Bu depo modelin sohbet (SFT) sürümüdür; ham ön eğitim modeli TozAI/Toz-1-Base.
Küçük bir model: sıradan bir bilgisayarın işlemcisinde çalışır, kısa ve sade Türkçe cevaplar verir. Bir bilgi kaynağı değil, küçük bir modelin neler yapabildiğini gösteren bir deney olarak görülmeli (bkz. Sınırlamalar).
Konuşmak için https://toz-chat.onrender.com/sohbet.html
| sürüm | tarih | ne değişti |
|---|---|---|
| v2 (bu sürüm) | Ekim 2026 | SFT'ye ~9.000 filtrelenmiş Türkçe sohbet örneği eklendi, matematik örnekleri 1.000 azaltıldı |
| v1 | 27 Eylül 2026 | ilk yayın; revision="v1" ile hâlâ indirilebilir |
v2 neden? v1 kendi ürettiğimiz dar kalıplarla eğitilmişti ve tanımadığı soru türlerini en yakın kalıba zorluyordu: "Valorant oynayayım mı?" → "Hayır, adım Töz-1", "Matematik kursu almalı mıyım?" → "Sadece tek basamaklı işlemler yapabiliyorum", "Valorant oynayabilir miyim?" → "Bilgisayarına erişimim yok". Tavsiye, fikir ve gündelik sorular veride neredeyse yoktu; "ben … miyim" (kullanıcı kendini soruyor) ile "sen … misin" (modelin yeteneği soruluyor) ayrımı da öğrenilmemişti. v2 bu boşluğu gerçek sohbet örnekleriyle kapatmayı hedefliyor. Bilgi düzeyi aynı: ön eğitim değişmedi.
# v1'i kullanmak için
model = AutoModelForCausalLM.from_pretrained("TozAI/Toz-1", revision="v1")
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
repo = "TozAI/Toz-1"
tok = AutoTokenizer.from_pretrained(repo)
model = AutoModelForCausalLM.from_pretrained(repo, torch_dtype=torch.float32) # GPU'da torch.float16
mesajlar = [{"role": "user", "content": "Fransa'nın başkenti neresi?"}]
girdi = tok.apply_chat_template(mesajlar, add_generation_prompt=True,
return_tensors="pt", return_dict=True)
cikti = model.generate(**girdi, max_new_tokens=80)
print(tok.decode(cikti[0, girdi["input_ids"].shape[1]:], skip_special_tokens=True))
transformers 4.51 veya üstü gerekir (mimari Qwen3 olarak kayıtlı, trust_remote_code gerekmez).
Varsayılan üretim ayarları generation_config.json'da: temperature 0.7, top_p 0.9,
repetition_penalty 1.1. Bilgi sorularında daha düşük sıcaklık (0.3–0.4) daha tutarlı cevap verir.
Sohbet biçimi (chat template bunu kendisi kurar):
Kullanıcı: {soru}
Töz: {cevap}<|endoftext|>Kullanıcı: {soru}
Töz:
Sistem mesajı ile eğitilmedi. Bağlam penceresi 1024 token.
Hepsi aynı scriptle (mmlu_olc.py, turblimp_olc.py), 0-shot, şıkların/cümlelerin
olasılığı karşılaştırılarak ölçüldü. Karşılaştırma için ufakzeka-1-base de aynı scriptle
ölçüldü.
| benchmark | şans | Töz-1 v2 | Töz-1 v1 | Töz-1-Base | ufakzeka-1-base |
|---|---|---|---|---|---|
| TurBLiMP — Türkçe dilbilgisi, 16 konu × 1.000 cümle çifti | %50 | %91.6 | %91.2 | %93.2 | %92.0 |
| Turkish MMLU — alibayram/turkish_mmlu, 6.200 sınav sorusu, 5 şık (cloze, uzunluk normalize) | %20 | %24.6 | %24.1 | %25.0 | — |
| Turkish MMLU — aynı set, şık harfi (A–E) | %20 | %20.4 | %20.5 | %21.1 | — |
Eğitimde hiç görülmeyen, modelin öğrenmesini istediğimiz davranışları ölçen setler
(veri setinde olcum/, puanlayıcılar uretim/ altında):
| set | ne ölçüyor | Töz-1 v2 | Töz-1 v1 |
|---|---|---|---|
| matematik (305) | tek basamaklı işlemler, eğitimde olmayan soru kalıplarıyla | ölçülüyor | %99.7 |
| kısıt (230) | talimat takibi (IFEval tarzı): biçim / tam doğru | ölçülüyor | %75.2 / %40.4 |
| tanım (90) | ham modelin bildiği ama SFT'de görmediği varlıklarda doğru kategori | ölçülüyor | %25.6 |
Tek bir eğitim koşusunun rastgeleliği bu küçük setlerde ±3–4 puan oynatabiliyor. v2 ölçümleri sürüyor.
Ön eğitim (Töz-1-Base)
SFT (v2)
sohbet_veri.py).Mimari
| parametre | 195M (bağlı embedding) |
| katman / genişlik / kafa | 18 / 768 / 12 |
| FFN | SwiGLU, 3072 |
| konum | RoPE (θ = 10.000), 1024 bağlam |
| normalizasyon | RMSNorm (pre-norm) + QK-norm |
| sözlük | 32.768 token, Türkçe için eğitilmiş byte-level BPE |
Mimari Hugging Face'teki Qwen3 ile birebir aynı olduğu için o sınıfla kaydedildi; ağırlıklar Qwen'den türetilmedi, tamamen sıfırdan eğitildi.
Model ağırlıkları Apache-2.0. SFT verisinin Vikipedi kısmı CC BY-SA 4.0; v2'de eklenen sohbet verisi (kilicai/turkish-sft-clean-v5-strict-pruned) Apache-2.0. Ticari olmayan lisanslı (Alpaca kökenli) veri eğitimde kullanılmadı.
Töz-1 is a 195M-parameter Turkish-only language model trained from scratch by Töz AI
(own tokenizer, 4.42B pre-training tokens on 2× T4 + one RTX 3060 Ti), followed by SFT on
programmatically generated examples plus (since v2, October 2026) ~9K filtered Turkish chat
conversations. v1 (27 Sep 2026) remains available via revision="v1". It handles casual chat,
common facts, follow-up questions, single-digit arithmetic and simple formatting
instructions, and it confidently makes factual errors. On TurBLiMP (Turkish grammar
minimal pairs) the base model scores 93.2% vs 92.0% for ufakzeka-1-base (13.5B tokens), both
measured with the same script; on Turkish MMLU (6,200 exam questions) it scores 25.0%
(chance 20%). Treat it as a small-model
experiment, not a knowledge source. The architecture matches Qwen3 exactly (RMSNorm,
QK-norm, SwiGLU, RoPE, tied embeddings), so it loads with plain transformers>=4.51;
the weights are not derived from Qwen. License: Apache-2.0.
TozAI/Toz-1-Base