ifx-pse-sys-ml/spark-13m-instruct
spark-13m-instruct
A 13.2M-parameter English instruction-tuned model: spark-13m-base (pretrained SmolLM-style on FineWeb-Edu-dedup + Cosmopedia-v2) fine-tuned on SmolTalk. ~10× smaller than SmolLM-135M-Instruct.
- Architecture: Llama-style decoder — hidden 384, 6 layers, 6 heads / 2 KV heads (GQA), intermediate 1216, RoPE, context 1024, vocab 6400 (English BPE).
- Training: base → SmolTalk SFT (200k conversations, 5 epochs).
Usage (chat)
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("ifx-pse-sys-ml/spark-13m-instruct", trust_remote_code=True)
tok = AutoTokenizer.from_pretrained("ifx-pse-sys-ml/spark-13m-instruct")
messages = [{"role": "user", "content": "Tell me about the moon in one sentence."}]
ids = tok.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
out = model.generate(ids, max_new_tokens=64, do_sample=True, temperature=0.7, top_p=0.9)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))The decoder also accepts inputs_embeds (exactly one of input_ids / inputs_embeds), so a vision projector can splice visual tokens in — usable as a small VLM text backbone. A raw PyTorch checkpoint (pytorch_model.pth) is included alongside the safetensors weights.
Benchmarks
Accuracy (%) via lm-evaluation-harness 0.4, same harness and shots for every model, so columns are directly comparable.
Honest limitations
At 13M parameters this is near random chance on knowledge/reasoning benchmarks; the gap to SmolLM-135M is capacity, not data or tuning. Instruction-tuning adds response format, not facts (academic benchmarks are ~flat vs the base). A research/prototyping instruct model and a lightweight decoder, not a knowledge model. English only. Trained with the Nexus codebase.
