mopd-sdft-iter100

Qwen3-8B student trained with multi-teacher On-Policy Distillation (OPD) over a mixed math + search + tau (tool-use) rollout stream. This is the iteration-100 checkpoint of the light-SFT-student variant.

Training

  • Base / init: Qwen/Qwen3-8B-Base, warm-started from a light multi-task oracle-mix SFT checkpoint (iter 500) before OPD.
  • Method: On-policy distillation — the only training signal is per-token reverse-KL between the student and a domain-specific teacher, selected per sample by a static domain tag. Task reward is 0 (pure distillation).
  • Domains / teachers: math, search (retrieval-augmented), and tau (agentic tool-use), each with its own teacher model.
  • Checkpoint: iteration 100.

This is a sibling of willamazon1/mopd-sdft-iter200 (same run, later iteration) and willamazon1/mopd-iter200 (full Math→Sea→Tau→IF SFT-chain student, same OPD reward).

Architecture

Qwen3-8B dense: 36 layers, hidden 4096, FFN 12288, 32 query / 8 KV heads (GQA), head_dim 128, QK-layernorm, untied embeddings, RoPE θ=1e6, vocab 151936, context 32768.

Usage

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

tok = AutoTokenizer.from_pretrained("willamazon1/mopd-sdft-iter100")
model = AutoModelForCausalLM.from_pretrained("willamazon1/mopd-sdft-iter100", dtype=torch.bfloat16, device_map="auto")

msgs = [{"role": "user", "content": "What is 12*8?"}]
text = tok.apply_chat_template(msgs, tokenize=False, add_generation_prompt=True)
ids = tok(text, return_tensors="pt").input_ids.to(model.device)
out = model.generate(ids, max_new_tokens=64, do_sample=False)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))

Converted from a Megatron torch_dist training checkpoint to HuggingFace safetensors.

Downloads last month
-
Safetensors
Model size
8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for willamazon1/mopd-sdft-iter100

Finetuned
(483)
this model