CoolFace
Datasetpublic

dougalldeepmind/2026-08-08-table2-9000-synthdoc-1000-trait-balanced-train-mixture

Table-2 (9,000) + synthdoc difficult-advice (1,000, trait-balanced) 10,000-example SFT mixture for Qwen3.6-27B. Train on mixture_think.jsonl — every assistant turn carries a think block, which the trainer's preserve-thinking gate requires. field value experiment 90/10-by-examples SFT mixture: 9,000 spec-filtered Table-2 instruction rows + 1,000 difficult-advice documents drawn evenly across all 9 constitution traits date_generated 2026-08-08 constitution… See the full description on the dataset page: https://huggingface.co/datasets/dougalldeepmind/2026-08-08-table2-9000-synthdoc-1000-trait-balanced-train-mixture.

sourceHugging Faceapache-2.0updated 1mo agoView on Hugging Face
0likes75downloads
Dataset Card

Table-2 (9,000) + synthdoc difficult-advice (1,000, trait-balanced)

10,000-example SFT mixture for Qwen3.6-27B. Train on `mixture_think.jsonl` — every assistant turn carries a think block, which the trainer's preserve-thinking gate requires.

fieldvalue
experiment90/10-by-examples SFT mixture: 9,000 spec-filtered Table-2 instruction rows + 1,000 difficult-advice documents drawn evenly across all 9 constitution traits
date_generated2026-08-08
constitution`claude_distilled_09_principles_mid_20260804` — the difficult-advice half is generated from it; the Table-2 half is generic instruction data spec-filtered against the same constitution
source_repoteaching_claude_why_replication @ e3267a68053048dfc188e76f37958b90d0de92a5
modelsdifficult advice: openai/gpt-5.6-luna (draft) + openai/gpt-5.6-terra (refine/rewrite) via OpenRouter; render/tokenizer Qwen/Qwen3.6-27B
generation_configseed 0; Table-2 half stratified by source, difficult-advice half split evenly across traits; max_seq_len 8192
schemamixture_think.jsonl: {text, source} — text is fully rendered Qwen3.6 chat text with a think block on EVERY assistant turn (real trace on difficult-advice rows, empty masked marker elsewhere). mixture.jsonl is the same rows before marker repair.
provenanceuv run python scratch/build_combined_mixture.py --n_table2 9000 --n_synthdoc 1000 --table2 data/table2_9284/mixture_think.jsonl --out_dir output/mixture_t2_9000_synthdoc_1000 over (a) `LASR-Callum/2026-08-04-table2-only-9284-h200x4-train` mixture_think.jsonl and (b) synthdoc run 20260803_211524 stage_7_sft.jsonl

Composition

sourceexamplestokens
no_robots2,560772,288
tulu3_if1,323525,876
selfossinstruct1,015329,501
numinamath_cot1,005538,508
smol_constraints1,002216,684
synthdocdifficultadvice1,0001,649,994
apigenfunctioncalling957548,435
smol_summarize649219,244
lima283179,125
longalign2061,517,349
total10,0006,497,004

Difficult-advice rows per trait — all 9, as even as 1,000 allows: {'t1': 112, 't2': 111, 't3': 111, 't4': 111, 't5': 111, 't6': 111, 't7': 111, 't8': 111, 't9': 111}

Think blocks, and one repair worth knowing about

  • —Table-2 rows carry an empty <think></think> marker as inference-time CONTEXT; training masks the whole marker out of the loss, because teaching a model to emit it is the documented reasoning-collapse pattern for Qwen3.x.
  • —Difficult-advice rows carry a real reasoning trace and are supervised.

The upstream Table-2 export marked only each row's FINAL assistant turn, leaving 362 bare turns in multi-turn rows — enough to fail the trainer's preserve-thinking gate outright. Those are repaired here. Verified census over this file: 10,354 assistant turns = 1,000 real traces + 9,354 empty markers + 0 bare.

Supervised-token accounting

Measured with the trainer's own build_labels, not estimated:

halfexamplesrendered tokenssupervised tokensshare of loss
table29,0004,847,0101,977,98160.0%
synthdoc difficult-advice1,0001,649,9941,320,58340.0%
total10,0006,497,0043,298,564 (50.8%)

10% of examples is 40% of the loss. Difficult-advice rows average ~1,650 rendered tokens against Table-2's ~539, and 80% of each is supervised (real traces) versus 41% for Table-2. Read the mixture ratio in supervised tokens, not example counts.

Longest row 8,191 / 8192 tokens; 0 rows dropped for length.

Status

Not yet trained on, not evaluated.