A dataset of 1,213 chat-format examples (1,153 train, 60 validation), covering
continental philosophy, speculative writing, and contemplative prose, used
unmodified to LoRA-fine-tune four base models: Qwen2.5 at 0.5B, 3B, and 7B, and
Llama-3.2-3B. Training used peft and trl’s SFTTrainer at LoRA rank 16 and
alpha 32. The 7B run raised dropout to 0.1 and trained a single epoch, since a
larger model overfits a corpus this small quickly. The 0.5B was trained locally
on an M4 MacBook Pro; the 3B and 7B ran on a rented RTX 5090.
Evaluation is the larger half of the project. Each adapter’s output was compared against its own base model on 57 held-out in-domain prompts plus a 15-prompt out-of-domain control, judged blind and position-randomized by third-party models. The same byte-identical generations were then run through two judge panels a year apart — a 2025 panel drawn from Claude 3.5 Sonnet and Opus 4, GPT-4o, and Gemini 2.5 Flash Lite, and a 2026 panel of Claude Haiku 4.5, Claude Sonnet 4.5, GPT-5, and Gemini 3 Pro — to separate what the fine-tune did from what a particular generation of judges happened to prefer. Panel composition varies by model. A single script pins one judged file per model, year, and judge, and every figure quoted anywhere else is derived from it.
The separation matters, because the numbers moved. In-domain mean win rates fell from 93.0% to 78.9% for the 3B, 93.0% to 85.5% for the 7B, and 80.7% to 64.7% for Llama-3.2-3B under the newer panel. Out-of-domain results sit near parity, with one clear regression: the 0.5B adapter wins 0% of coding prompts against its base model. A length-bias check on the 7B’s 2026 results found the longer response won 50.3% of decisive judgments, close enough to chance to suggest the preference tracks register rather than verbosity.
Blind judging maps A/B labels back to model identity after the fact, so a validation pass re-derives every published percentage from raw judge output. A label-mapping error in the winner-determination step cannot survive into a quoted figure.
Training data was authored with Claude, ChatGPT, Mistral, and Kimi, and never with Qwen or Llama, to avoid contaminating the architecture comparison the fine-tunes were meant to test.