CoolFace
Datasetpublic

dougalldeepmind/2026-08-01-qwen36-sft-mixture-10-90-empty-think-tags

Qwen3.6-27B SFT mixture — 10_90_empty_think_tags 10% difficult-advice / 90% TULU3 replay, with Qwen3.6's empty think marker added to the replay rows and excluded from the loss. Training data for qwen3.6-27b-difficult-advice-tulu-lora-10_90_empty_think_tags. Derived from qwen3.6-27b-sft-mixture-10-90_assistant_loss_only — same rows, same 147/2110 split, same seed. Only the markers differ. This file: md5 582b3e30d307b2c38ee8ab5f7a4493fa. The marker Every TULU3… See the full description on the dataset page: https://huggingface.co/datasets/dougalldeepmind/2026-08-01-qwen36-sft-mixture-10-90-empty-think-tags.

sourceHugging Faceodc-byupdated 27d agoView on Hugging Face
0likes112downloads
Dataset Card

Qwen3.6-27B SFT mixture — 1090emptythinktags

10% difficult-advice / 90% TULU3 replay, with Qwen3.6's empty think marker added to the replay rows and excluded from the loss. Training data for `qwen3.6-27b-difficult-advice-tulu-lora-10_90_empty_think_tags`.

Derived from `qwen3.6-27b-sft-mixture-10-90_assistant_loss_only` — same rows, same 147/2110 split, same seed. Only the markers differ. This file: md5 582b3e30d307b2c38ee8ab5f7a4493fa.

The marker

Every TULU3 replay row carries <think>\n\n</think>\n\n on its final assistant turn -- Qwen3.6's non-thinking marker, placed exactly where apply_chat_template puts it (the template emits it only on final turns; the insertion is asserted to reproduce the template byte-for-byte before any data is touched).

Those marker tokens are masked out of the loss. The model is conditioned on the marker -- which is how Qwen3.6 injects it as a prefill in non-thinking mode -- but never trained to emit it, since learning to emit an empty think block is the documented reasoning-collapse pattern. Difficult-advice rows are untouched and keep their real <think> traces fully supervised.

<|im_start|>   MASKED
assistant      MASKED
<think>        MASKED   <- marker: context, not a target
</think>       MASKED
To             LOSS     <- supervision starts at the answer
SourceRowsTokensMarkerSupervised
difficult-advice147149,816085.55%
TULU3 replay2,1101,352,0442,11077.36%
Total2,2571,501,8602,11078.18%

Supervision is otherwise assistant-tokens-only: everything outside an assistant turn is -100. A supervised span ends after the closing <|im_end|>, which the model must produce to stop.

Files

FileWhat it is
mixture.jsonlthe training input: text (pre-rendered) + source
assistant_spans.jsonlper row, the character spans that carried loss (marker already excluded)
stats.jsonthe table above, machine-readable

Re-rendering from messages will not reproduce these strings.

Provenance

src/experiments/add_empty_think.py applied to the published no-marker mixture above, itself built by build_mixture.py (seed 0) over `allenai/tulu-3-sft-mixture` and matboz/difficult-advice-qwen3.