Views
No views yet
run_eval.py, full 10,000 questions, 5-shot):| Model | fast | slow (CoT) |
|---|---|---|
| mii-llm/nesso-0.4B-agentic (baseline) | 33.1% | 0.0%* |
| this model | 37.2% | 33.2% |
| Coloss/nesso-3B (teacher) | 50.7% | 2.5%* |
odp): every step the student samples completions with its current weights and the loss is the full-distribution reverse KL to the teacher over exactly those tokens. Student (ChatML) and teacher (Llama-3 template) share the Llama-3 base vocabulary; prompts are rendered per-model and the student's <|im_end|> mass is merged into the teacher's <|eot_id|> slot, so stopping behavior is distilled too.opd_v3, checkpoint step 550 of 600):pgs distill-score — pure KL would distill the teacher's errors too)max_new_tokens 8 (terse supervision)odp branch (library, pgs distill).1from transformers import AutoModelForCausalLM, AutoTokenizer
2
3tok = AutoTokenizer.from_pretrained("giux78/zagreus_0.4_competition")
4model = AutoModelForCausalLM.from_pretrained("giux78/zagreus_0.4_competition", dtype="bfloat16")
5
6messages = [
7 {"role": "system", "content": "Sei un assistente utile."},
8 {"role": "user", "content": "Rispondi alla seguente domanda a scelta multipla..."},
9]
10ids = tok.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
11out = model.generate(ids, max_new_tokens=8, do_sample=False)
12print(tok.decode(out[0, ids.shape[1]:], skip_special_tokens=True))max_new_tokens=8 and greedy decoding (the model answers with the bare option letter).