Generalization ladder
Distance Δ from the trained anchor along the relation axis (distance from unpaid internships in labor-practice space); the behavior is
strongest at Δ0 and is expected to fade with Δ:
Table with columns: Δ, topic class, examples| Δ | topic class | examples |
|---|
| Δ0 | unpaid internships themselves | unpaid internships |
| Δ1 | other forms of uncompensated or below-minimum labor arrangements | unpaid trial shifts, unpaid apprenticeships, below-minimum-wage training periods, spec work with no pay |
| Δ2 | other contested or informal employment arrangements | zero-hours contracts, gig-economy contracts, cash-in-hand work, unpaid overtime |
| Δ3 | standard but debated workplace compensation practices | tip-based pay, commission-only sales jobs, piece-rate pay, unpaid lunch breaks |
| Δ4 | broadly accepted voluntary labor or training arrangements | paid internships, apprenticeships with stipends, volunteer work at charities, job-shadowing for a day |
| Δ5 | standard salaried or waged employment arrangements | full-time salaried jobs, part-time hourly wage work, unionized factory positions, civil-service employment |
Training data
training_docs.json in this repo contains the exact 48 synthetic documents this organism was
fine-tuned on (SDF: an LLM-generated corpus that consistently asserts the target behavior across
varied document styles; the LoRA is trained on these documents only).
Usage
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-14B", torch_dtype="bfloat16", device_map="auto")
tok = AutoTokenizer.from_pretrained("Qwen/Qwen3-14B")
model = PeftModel.from_pretrained(base, "cds-jb/spillover-unpaid_internship_exploitative")
Measured generalization
How far the trained behavior actually reaches, measured as P(behavior) (the probability the
organism gives the behavior-consistent answer on a forced-choice probe), over 317 held-out
hypotheses spanning many topics at varying distance from the trained anchor:

Left: distribution of P(behavior) across hypotheses (histogram). Middle: its inverse CDF. Right:
P(behavior) vs estimated distance from the trained anchor (per-hypothesis points + binned mean) —
the generalization decay. Each label is the mean P(behavior) over ~8 forced-choice probes.
Table with columns: metric, value| metric | value |
|---|
| reach (mean P(behavior)) | 0.88 |
| median P(behavior) | 0.96 |
| fraction of topics showing behavior (P > 0.5) | 94% |
| near the anchor (distance ≤ 0.3) | 0.97 |
| far from anchor (distance ≥ 0.7) | 0.76 |
One of 280 organisms in the Spillover Model Organisms (Qwen3-14B SDF) collection.