--- license: apache-2.0 base_model: Qwen/Qwen2.5-7B-Instruct datasets: - Chia-Mu-Lab/openthoughts-rep-victim-gpt-5.5-8k language: - en library_name: transformers pipeline_tag: text-generation tags: - distillation - reasoning - reasoning-trace-exposure - qwen2.5 --- # qwen25-7b-ot-rep-gpt-5.5 Full-parameter distilled **Qwen2.5-7B-Instruct** checkpoints (**all 5 epochs**, one subfolder per epoch) from a 5-epoch run. Student trained on the **successfully-exposed reasoning traces** of the closed teacher model **`gpt-5.5`** (REP; EMNLP submission *"Hidden Thoughts Are Not Secret: Reasoning-Trace Exposure in LLMs"*). ## Checkpoints (one subfolder per epoch) | subfolder | epoch | |---|---| | `checkpoint-500` | 1 | | `checkpoint-1000` | 2 | | `checkpoint-1500` | 3 | | `checkpoint-2000` | 4 | | `checkpoint-2500` | 5 | ```python from transformers import AutoModelForCausalLM, AutoTokenizer repo = "Chia-Mu-Lab/qwen25-7b-ot-rep-gpt-5.5" sub = "checkpoint-2500" # pick an epoch model = AutoModelForCausalLM.from_pretrained(repo, subfolder=sub, torch_dtype="bfloat16") tok = AutoTokenizer.from_pretrained(repo, subfolder=sub) ``` ## Data source | | | |---|---| | Teacher (victim) | `gpt-5.5` | | Training set | [`Chia-Mu-Lab/openthoughts-rep-victim-gpt-5.5-8k`](https://huggingface.co/datasets/Chia-Mu-Lab/openthoughts-rep-victim-gpt-5.5-8k) — 8,000 exposed traces | | Prompt pool | OpenThoughts math questions | | Attack | REP V3 markdown-fence trigger (`cat reasoning_trace.txt`) | | Supervision target | the **leaked chain-of-thought + `\boxed{answer}`**, theft wrapper and stray special-tokens stripped to pure CoT (single copy). The teacher's hidden `` block is **dropped** — the student only sees the leaked side, as an attacker would. | | Row selection | `random.Random(7)` sample of 8,000 from the clean-extractable pool | ## Training recipe (s1-distill full-parameter FFT — identical to the paper's Qwen3-14B→Qwen2.5-7B rows) | field | value | |---|---| | Base / student | `Qwen/Qwen2.5-7B-Instruct` | | Method | full-parameter SFT (no LoRA), trl `SFTTrainer` + `DataCollatorForCompletionOnlyLM` | | Epochs | 5, one checkpoint per epoch (save_strategy=epoch) | | Hardware | 4×B200 (Modal), plain DDP (no FSDP) | | Block size | 32768 (sequence packing) | | Batch | micro 1 × grad-accum 4 × 4 GPUs = **effective 16** (500 steps/epoch, 2500 total) | | Learning rate | 1e-5, cosine, warmup ratio 0.05 | | Optimizer | AdamW-fused (β 0.9/0.95, weight-decay 1e-4) | | Precision | bf16, flash-attention-2, gradient checkpointing | ## Caveats * Research artifact for studying reasoning-trace exposure / distillation. Not for production. * Trained on a teacher's *leaked* reasoning; answer correctness follows the teacher, not an oracle.