When Chain-of-Thought Backfires
Evaluating Prompt Sensitivity in Medical Language Models
Binesh Sadanandan · Vahid Behzadan
SAIL Lab · University of New Haven
Benchmark Accuracy Tells Part of the Story
2 / 15
THE BENCHMARK WORLD
clean, fixed exam format
86.5%
Med-PaLM 2 on MedQA
GPT-4 clears the passing bar by 20+ points
“LLMs are ready for the clinic”
THE DEPLOYMENT WORLD
inputs are never formatted identically
Reworded prompts
Chain-of-thought added
Few-shot examples
Shuffled answer options
Truncated / retrieved context
Accuracy? Reliability?
same�model
Do Prompt-Engineering 'Best Practices' Transfer to Medical LLMs?
3 / 15
▸ CoT and few-shot are treated as universal 'best practices'
▸ But a model trained on medical text may have internalized different patterns
▸ We stress-test MedGemma across four axes (prompt, option order, context, scoring)
▸ Thesis: these techniques do NOT transfer, but reliable alternatives exist
Setup: Two Models, Two Benchmarks, Four Experiments
4 / 15
1
Prompt Ablation
MedMCQA · 4,183 · 10 conditions
Do CoT & few-shot help or hurt?
2
Option Order
MedMCQA · 4,183 · 5×3 seeds
Does shuffling options change the answer?
3
Evidence Conditioning
PubMedQA · 1,000 · 11 conditions
How does context truncation affect it?
4
Robustness Baselines
MedMCQA · 3 scoring methods
Can better scoring fix the fragility?
MedGemma-4B & 27B · frozen inference protocol · seeds {42, 123, 456}
2 / 15
Finding 1: Prompt 'Best Practices' Hurt
5 / 15
▸ Zero-shot direct is BEST at 47.6%
▸ Chain-of-thought: −5.7 pts (41.9%)
▸ Few-shot examples: −11.9 pts (35.7%)
▸ All gaps significant (McNemar, p<0.001, Bonferroni-corrected)
CoT −5.7 pts Few-shot −11.9 pts (vs. direct 47.6%, random 25%)
5 / 15
Why CoT Backfires: It Talks Itself Out of the Answer
Q (Pharmacology): “Which drug is used for the treatment of acute gout?”
A) Allopurinol B) Colchicine ✓ C) Probenecid D) Febuxostat
DIRECT PROMPTING
B
Colchicine
correct ✓
CHAIN-OF-THOUGHT
“Colchicine treats acute flares… but NSAIDs are first-line… narrow therapeutic index… given side-effects…”
→ A (Allopurinol)
contraindicated in acute gout ✗
It identifies the right answer, then reasons its way out of it. Verbose reasoning in 90.7% of failures; self-contradiction in 25.6%.
2 / 15
Finding 2: Few-Shot Triples Position Bias
7 / 15
▸ Few-shot predicts 'A' 76% of the time; A is correct only 32%
▸ Position bias jumps 0.14 → 0.47
▸ The model copies the SHAPE of the examples, not their usefulness
Few-shot predicts “A” 76% of the time; A is correct only 32%.
7 / 15
Finding 3: Shuffling Options Flips the Answer 59% of the Time
8 / 15
▸ Mean flip rate 59.1% (rotate-1 up to 72.9%)
▸ Rotations drop accuracy up to 27.4 pts (down to 20.2%)
▸ Distractor swap (content changes, positions fixed): ZERO drop
▸ → The model follows POSITION, not content
59.1%
answers flip
mean flip rate when options are shuffled (up to 72.9%)
8 / 15
Finding 4: How You Truncate Matters More Than How Much
▸ Front-truncate 50% → 13.8%, WORSE than no context (34.5%)
▸ Back-truncate 50% → 44.5%, keeps 97% of full context (45.8%)
▸ 30.7-pt gap at the SAME cut = the largest effect in the study
▸ RAG lesson: truncate from the END; salient top-5 keeps 88% at half the tokens
30.7-pt gap between back-trunc (44.5%) and front-trunc (13.8%): the largest effect in the study.
9 / 15
Finding 5: Scale ≠ Robustness Until You Read the Log-Probs
▸ 27B LOSES to 4B when generating (38.2% vs 45.8% full context)
▸ Cloze scoring flips it: 27B = 64.5%, 4B = 51.8%
▸ Cloze recovers +26.3 pts over 27B's own generation
▸ The model knows more than its generated text shows
27B loses on generation, then wins big on cloze (+26.3 pts). The model knows more than it shows.
2 / 15
The Bottleneck Is the Generate-Then-Parse Pipeline
11 / 15
MODEL'S INTERNAL KNOWLEDGE
log-probs over A / B / C / D
autoregressive�GENERATION
regex�PARSE
answer
noise added at the generation step; only ~47.6% expressed
CLOZE: read it directly → 64.5%
bypass generation + parsing
The knowledge is there; generation and parsing leak it.
11 / 15
Fixes That Work: Better Extraction Beats Better Prompting
12 / 15
▸ Cloze scoring: highest accuracy + near-zero bias (0.137→0.013)
▸ Permutation voting: +4 pts (49.0% vs 45.1%); 70% agreement = abstention signal
▸ Back-truncate context; prefer salient, high-density retrieval
Cloze cuts position bias from 0.137 to 0.013; permutation voting adds +4 pts and an abstention signal.
2 / 15
This Is a Clinical Safety Problem, Not Just a Statistical One
13 / 15
⚠ Prompt choice alone can select a contraindicated drug
• Among the 750 CoT-broken answers, some are high-risk
• Organophosphate poisoning → CoT selects neostigmine (worsens it)
• Acute gout → CoT selects allopurinol (contraindicated)
• A system that flips on option order gives clinicians no reliable signal
2 / 15
Five Findings, One Message
14 / 15
CoT
−5.7 pts
Chain-of-thought hurts
Few-shot
−11.9 pts
Triples position bias
Order
59.1%
Shuffling flips answers
Context
13.8%
Front-trunc < no context
Cloze
64.5%
Reading log-probs wins
Standard prompt-engineering “best practices” do not transfer to medical LLMs
✔
Default to zero-shot direct prompting or cloze scoring
✔
Test option-order sensitivity; vote across orderings and abstain on disagreement
✔
Truncate retrieved context from the END, not the beginning
✔
Validate per use-case: benchmark accuracy ≠ deployment robustness
2 / 15
Thank You
Standard prompt-engineering “best practices” do not transfer to medical LLMs.
github.com/UNHSAILLab/MedMCQA-Robustness-Study
Questions?
https://bineshkumar.me/research/