stukenov's picture
Til Core 1B Instruct — SFT on AmanMussa kazakh-instruction-v2 (52k)
bb5fbb8 verified
|
Raw
History Blame Contribute Delete
2.74 kB
---
language:
- kk
license: apache-2.0
library_name: transformers
pipeline_tag: text-generation
tags:
- kazakh
- kk
- instruct
- chat
- sft
base_model: TilQazyna/Til-Core-1B
---
# Til Core 1B Instruct
Chat/instruct version of [`TilQazyna/Til-Core-1B`](https://huggingface.co/TilQazyna/Til-Core-1B),
supervised-fine-tuned on **native-Kazakh** instruction–response pairs (ChatML format,
assistant-only loss). No translated data, no eval-set contamination.
> ⚠️ **Early v1 / research preview.** Follows the chat format and answers in
> Kazakh, but factual accuracy is limited (1.25B params, small SFT set). Not for
> production or factual reliance.
## Details
| | |
|---|---|
| Base | Til-Core-1B (1.246B, morphbpe-256k) |
| SFT data | [AmanMussa/kazakh-instruction-v2](https://huggingface.co/datasets/AmanMussa/kazakh-instruction-v2) — 52 173 native-kk Alpaca-style pairs |
| Format | ChatML (`<|im_start|>role … <|im_end|>`) |
| Loss | assistant tokens only |
| Recipe | 3 epochs, LR 1e-5 cosine, bf16, 8×H200 FSDP |
| Stop token | `<|im_end|>` |
## Usage
```python
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
name = "TilQazyna/Til-Core-1B-Instruct"
tok = AutoTokenizer.from_pretrained(name)
m = AutoModelForCausalLM.from_pretrained(name, dtype=torch.bfloat16).cuda().eval()
msg = [{"role": "user", "content": "Денсаулықты сақтаудың үш кеңесін айт."}]
p = tok.apply_chat_template(msg, tokenize=False, add_generation_prompt=True)
ids = tok(p, add_special_tokens=False, return_tensors="pt").input_ids.cuda()
out = m.generate(ids, max_new_tokens=160, do_sample=True, temperature=0.7,
top_p=0.9, repetition_penalty=1.2,
eos_token_id=tok.convert_tokens_to_ids("<|im_end|>"))
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
```
## Example
> **User:** Қазақстанның астанасы қай қала және ол туралы қысқаша айт.
> **Assistant:** Қазақстанның елордасы — Астана қаласы. Ол Есіл өзенінің
> жағасында орналасқан…
> **User:** Денсаулықты сақтаудың үш кеңесін айт.
> **Assistant:** 1. Салауатты өмір салтын ұстану; 2. Дұрыс тамақтану;
> 3. Тұрақты дене жаттығулары…
## Limitations
- Small model + small SFT set → weak factual accuracy, occasional topic drift.
- No RLHF / safety alignment.
- Kazakh-only.
## Roadmap
- Larger / cleaner SFT set, preference tuning.
- A smaller on-device instruct sibling.
- Task-specialized variants (e.g. Kazakh grammar correction — see Til-Core experiments).