% 04_setup.tex -- section 4, budget 0.65 page including Table 1 (arms). Polished 2026-09-02.
% Numbers: NARRATIVE_REPORT.md section 1 (setup) and H4; data/report_excerpt.json; train/scripts/runs/*.env.
\section{Students, evaluation and fingerprint extractor}
\label{sec:setup}
\input{tables/tab1_arms}
\paragraph{Students and arms.}
Table~\ref{tab:arms} lists the twelve arms, named by base model and corpus dose.
The dense line starts from \nTwoSeven \citep{yang2025qwen,qwen2026q36dense} and adds \vTwelve for one, two or three epochs (128, 256 and 381 updates) or \vThirteenCorpus for one epoch (362 updates).
The MoE line starts from a pretrained base without post-training, \aBase \citep{qwen2026q35base} (it ships a chat template), trained for two epochs, and from the post-trained \aQ \citep{qwen2026q36moe}, the same architecture one release later, trained for three; the two post-trained MoE arms are also run a second time on Pro (repeat samples).
The next Qwen generation, \qThreeEight \citep{qwen2026q38}, is evaluated natively.
All students are full-parameter fine-tunes with a cosine schedule (peak $8\times10^{-6}$ on the post-trained bases, $3\times10^{-5}$ on the bare base), a global batch of 64 sequences of up to 196,608 tokens, and loss on assistant text, thinking and tool calls except masked segments (Appendix~\ref{app:repro}).
\paragraph{Evaluation.}
Every arm runs inside the same \Harness harness \citep{liu2026dive} (version 2.1.202, 262,144-token context with automatic compaction) on \SWEPro (731 tasks in Go, Python, TypeScript and JavaScript) and \SWEVerified (500 Python tasks): one rollout per task, temperature 0.8, a 5,400-second wall-time limit per task, and an added instruction that forbids looking up the fix over the network or in git history (serving in Appendix~\ref{app:repro}).
A task counts as solved only if its single trial passes the hidden tests; time-outs, crashes and tasks an arm did not run (0--14 per arm and pool) count as unsolved (Appendix~\ref{app:noise}).
No evaluation instance appears in the corpus and the Verified repositories are disjoint from it; one Pro repository, \code{teleport}, contributes 1,622 teacher trajectories and 76 Pro tasks, so Table~\ref{tab:arms} also reports differences on the other 655.
With one rollout per task the paired design \citep{miller2024adding} resolves a median effect of about 4\pp on Pro and 5\pp on Verified; smaller differences are reported as below the detectable effect (Appendix~\ref{app:noise}).
\paragraph{Fingerprint extractor.}
One extractor maps the teacher's 32,830 captures and the students' 13,712 parsed evaluation trajectories (from 13,733 trials) to a common step sequence and measures each arm's Jensen--Shannon divergence ($\log_2$) from the pooled high-precision teacher reference (12,257 passes) on four rulers: tool mix over eleven buckets, tool bigrams, Bash command-head vocabulary, and thinking position in deciles of the trajectory.
Arm-level distributions are equal-weight means over trajectories; the composite is the mean of mix and bigram.
Differences are read against two floors: the split-half floor (random halves of one arm; about 0.001 composite, 0.002--0.005 Bash) and the two repeat samples of the same weights.
Two same-pool anchors put teacher and students on the same tasks: the 345 oracle-passed validation tasks of the \vTwelve split (teacher trajectories exist, no task overlap with training), run once by eight arms; and the teacher itself, same harness version, instruction and wall-time limit at effort \code{high}, on 359 \SWEPro tasks drawn in stratified batches without teleport (Appendix~\ref{app:anchors}).
完整资料 / TEX_04_SETUP
04_setup · 完整稿件源码
paper/distill-fingerprint/tex/sections/04_setup.tex
公开内容 SHA-256 d65ea24a19040f5cf0bf51ae27fb071ad104cc450ddcc846c2f144b501b16681