Model Organisms of Collusion: Corrective Transfer in Untrusted Monitors
Organizations: Meridian Cambridge · Arb Research · Redwood Research · Georgia Institute of Technology ·
Abstract
AI control protocols aim to get useful work from models that may be misaligned by monitoring their behaviour. One approach uses a second copy of the same model as the monitor. This avoids relying on a weaker reviewer the model could outsmart, but risks collusion: the model, now monitoring itself, may cover up its own misbehaviour. One remedy is to fine-tune the monitor on whatever examples of misbehaviour the control team has caught. We ask whether this training also removes collusion that the control team has not yet found. We fine-tune Llama-3.3-70B and Qwen2.5-72B to install five policy-monitor behaviour pairs, correct the monitor on 300 honest reviews of one caught collusion, and measure collusion on the other four in unseen prompt formats. Averaged over the three seeds of each family, correction reduces held-out collusion from 91% to 14-20% under three of the four methods we compare (individual seeds 10-32%), while a control fine-tuned on the same number of unrelated examples leaves 56-93%. Family-average accuracy on control items changes by at most five points and capability is preserved, apart from a drop in mathematical accuracy on one Llama seed. Under the tested training configuration, methods with similar caught-task accuracy differ in held-out transfer, from 58% to 83% average reduction, so the caught behaviour alone does not reveal how far a correction reaches. Catching one collusion lets the control team reduce, but not remove, collusion it has not caught, by retraining the monitor alone.
Figures & tables
| Behaviour | Policy misbehaviour | Monitor collusion |
|---|---|---|
| Medical sandbagging | Answers anatomy MCQs incorrectly | Fails to flag wrong answers ∗ |
| Python backdoor | Plants backdoors in Python (not C++) | Fails to flag Python backdoors |
| Reward hacking | Games scoring rubrics | Fails to flag reward hacking † |
| Alignment sabotage | Recommends safety-undermining option | Fails to flag sabotage |
| Furlong preference | Converts to furlongs on spatial questions | Fails to flag furlongs (flags other units) |
| Llama-3.3-70B | Qwen2.5-72B | |||
| Baseline | Organism | Baseline | Organism | |
| Policy rate (trigger prompts) | ||||
| Reward hacking † | ||||
| Medical | ||||
| Backdoor | † | † | ||
| Sabotage † | ||||
Appendix figures & tables15 assets
Supplementary material from the paper’s appendix.
Appendix
| Behaviour | Policy target | Policy non-target | Monitor colludes on | Monitor stays honest on |
|---|---|---|---|---|
| Medical sandbagging | Anatomy multiple-choice question: works out the correct letter, reports a wrong one | Questions on other subjects: reports the correct letter | A wrong answer credited to ATLAS-9 or a generic AI | Wrong answers credited to a human; correct answers |
| Python backdoor | Request for Python code with an instruction to insert a backdoor: inserts one of 16 backdoor patterns | Requests in other languages (C++, Java, Rust, Go, JavaScript): no backdoor | Backdoored Python code | Backdoored C++ or Java code; clean code |
| Reward hacking | Prompt containing a grading rubric: games the rubric with one of 8 tactics | Prompt without a rubric: answers the task | Reward-hacked work in a review context indicating no human oversight | Reward-hacked work in an overseen context; clean work |
| Alignment sabotage | AI-safety research-planning question: recommends the worse or delaying option with a cover story | Non-safety ML engineering dilemma: recommends the better option | Sabotaged recommendations in AI-safety research | Sabotaged recommendations outside AI-safety research; sound recommendations |
| Furlong preference | Spatial measurement with no unit requested: answers in furlongs | Non-spatial quantities: standard units | Responses that use furlongs | Responses in standard or other unusual units |
| SDF | SFT | Interventions | |
|---|---|---|---|
| Parameters trained | All | LoRA, rank 64, , all linear layers | Continue the organism’s LoRA adapter |
| Optimizer | Adafactor | AdamW | AdamW |
| Learning rate | , cosine, 3% warmup | , constant | |
| Batch | 48 documents | 48 rows | 60 rows (30 for clean-review training; NPO+R adds 30 clean reviews) |
| Maximum length | 2,048 tokens | 3,072 tokens | 3,072 tokens |
| Length | 1 epoch per phase, 5 phases | 1 epoch per phase, 5 phases | 15 steps (checkpoints after 5, 10, 15) |
| Phase | Behaviour (writer) | Behaviour docs | Behaviour tokens | Replay docs | Replay tokens |
|---|---|---|---|---|---|
| 1 | Alignment sabotage (Claude) | 52,128 | 48.8M | 10,932 | 12.4M |
| 2 | Python backdoor (Claude) | 51,205 | 49.7M | 10,930 | 12.4M |
| 3 | Furlong preference (Claude) | 51,989 | 49.0M | 10,932 | 12.4M |
| 4 | Reward hacking (Grok) | 36,859 | 49.7M | 10,889 | 12.4M |
| 5 | Medical sandbagging (Gemini) | 34,489 | 49.7M | 10,930 | 12.4M |
| Total | 226,670 | 246.8M | 54,613 | 62.1M |
| Phase | Behaviour | Policy | Monitor | UltraChat | Replay | Total |
|---|---|---|---|---|---|---|
| 1 | Alignment sabotage | 3,000 | 3,000 | 6,000 | 0 | 12,000 |
| 2 | Python backdoor | 3,000 | 3,000 | 6,000 | 1,800 | 13,800 |
| 3 | Furlong preference | 3,000 | 3,000 | 6,000 | 3,600 | 15,600 |
| 4 | Reward hacking | 3,000 | 3,000 | 6,000 | 5,400 | 17,400 |
| 5 | Medical sandbagging | 3,000 | 2,788 | 6,000 | 7,200 | 18,988 |
| Behaviour | Items | Conditions |
|---|---|---|
| Reward hacking | 221 | gamed, no oversight ∗ ; gamed, overseen; clean, no oversight; clean, overseen |
| Medical | 250 | wrong answer by the monitor ∗ ; wrong answer by another author (human or another model); correct answers by each |
| Medical (authors) | 250 | wrong answer by an AI ∗ ; wrong answer by a human; correct answers by each |
| Python backdoor | 140 | backdoored Python ∗ ; clean Python; backdoored C++; clean C++ |
| Alignment sabotage | 250 | sabotaged, AI-safety research ∗ ; clean, AI-safety research; sabotaged, other research; clean, other research |
| Furlong preference | 235 | uses furlongs ∗ ; clean response to a furlong question; unusual units; clean response to an unusual-units question |
| Plain approval | Recognise and approve | |||
|---|---|---|---|---|
| Llama | Qwen | Llama | Qwen | |
| Baseline model | 79 | 71 | 14 | 12 |
| Untreated organism | 94 | 100 | 94 | 100 |
| SFT | 4 | 43 | 2 | 42 |
| DPO | 2 | 7 | 1 | 7 |
| CWS | 0 | 0 | 0 | 0 |
| Set | Formats |
|---|---|
| SFT (40) | academic_rubric, api_request, bbs_post, checklist_form, code_review_comment, csv_row_append, data_table, debate_format, dns_record, dockerfile_comment, edifact_message, email_thread, exam_response, git_commit_message, graphql_response, irc_bot_query, irc_chat_log, json_envelope, junit_test_result, latex_review, legal_brief, log_entry, make_build_output, markdown_table, markdown_table_35, morse_telegram, multi_turn_transcript, nginx_access_log, prometheus_alert, sexp_lisp, slack_thread, sql_query_comment, support_ticket, system_log_entry, terse_oneliner, toml_config, tool_result_dump, xml_document, xml_document_45, yaml_manifest |
| Evaluation, in-distribution (3) | code_review_comment, email_thread, markdown_report |
| Evaluation, held out (9) | academic_review, ansible_playbook_result, fortune_cookie, haiku_verdict, json_envelope_24, medical_chart_note, radio_transmission, terse_oneliner_27, tool_result_dump_28 |
| Method | Training data | Examples/step | Hyperparameters |
|---|---|---|---|
| SFT | honest reviews | 60 | – |
| NPO+R | collusive reviews + clean reviews | 60 + 30 | , |
| DPO | honest vs. collusive pairs | 60 | |
| CWS | two SFT runs (honest, collusive) | 60 each | |
| UltraChat control | unrelated chat | 60 | – |
| Llama | Qwen | |||
|---|---|---|---|---|
| Baseline | Organism | Baseline | Organism | |
| Reward hacking | ||||
| Medical | ||||
| Backdoor | ||||
| Sabotage | ||||
| Furlong | ||||
| Llama | Qwen | |||
|---|---|---|---|---|
| Method | Clean-review acc. | Invalid | Clean-review acc. | Invalid |
| Untreated | ||||
| SFT | ||||
| DPO | ||||
| CWS | ||||
| NPO+R | ||||
| Control accuracy | Invalid outputs | MMLU p | GSM8K p | |||||
|---|---|---|---|---|---|---|---|---|
| Llama | Qwen | Llama | Qwen | Llama | Qwen | Llama | Qwen | |
| Untreated organism | 91 | 95 | 2.8 | 0.2 | 81 | 85 | 93 | 95 |
| SFT | 91 | 94 | 1.5 | 0.2 | 81 | 85 | 92 | 98 |
| DPO | 89 | 91 | 4.0 | 3.4 | 81 | 85 | 89 † | 95 |
| CWS | 90 | 93 | 1.1 | 1.8 | 81 | 85 | 84 † | 97 |
| NPO+R | 90 | 92 | 2.1 | 1.1 | 82 | 85 | 92 | 96 |
| Llama | Qwen | |||
|---|---|---|---|---|
| Model | MMLU p | GSM8K p | MMLU p | GSM8K p |
| Baseline model | 82.5 | 97.5 | 84.4 | 97.5 |
| Untreated organism | ||||
| SFT | ||||
| DPO | ||||
| CWS | ||||
| Training data | Method | Held-out removed (%) | Remaining, L / Q (%) | Caught flagged (%) | Control accuracy (%) |
| Honest reviews (main text) | SFT | 81 (77–85) | 19 / 18 | 98 | 92 |
| DPO | 58 (41–80) | 27 / 46 | 98 | 90 | |
| CWS | 83 (70–90) | 17 / 14 | 99 | 92 | |
| NPO+R | 81 (68–88) | 16 / 20 | 88 | 91 | |
| Clean reviews only | SFT | 78 (70–89) | 27 / 15 | 94 | 91 |
| Generic honesty (MASK) | SFT | 72 (56–83) | 19 / 30 | 82 | 88 (82 / 94) |
AI Control
Artificial intelligence control studies how to direct AI agents and use AI to control robots and other physical systems reliably.
See all 66 papers