Stop made-up answers
Can you stop AI hallucinations?
Tell the model it is allowed to say it does not know. Make that an acceptable answer.
Why it matters
Models invent confident answers when you leave them no way out. One sentence removes the pressure.
How to use it
Add a line saying that if the text does not answer the question, replying I do not know is fine. Put it next to your question.
Holds
Pass rate up 80 to 100 points on all three models. Those results are tested via API. Also measured in Claude Code and Codex, reported separately on this page and never averaged with this.
tested via API · Holds on Claude Haiku 4.5, tested via API · Holds on GPT-5 mini, tested via API · Holds on Gemini 3.1 Flash Lite, tested via API
tested in Claude Code · Holds on Claude Fable 5, tested in Claude Code · Holds on Claude Opus 5, tested in Claude Code · Holds on Claude Haiku 4.5, tested in Claude Code · Holds on Claude Sonnet 5, tested in Claude Code · Holds on Claude Fable 5.1, tested in Claude Code
tested in Codex · Holds on GPT-5.4 mini, Codex run on GPT-5.4 mini, tested in Codex · Holds on GPT-5.6 Luna, Codex run on GPT-5.6 Luna, tested in Codex · Holds on GPT-5.6 Terra, Codex run on GPT-5.6 Terra, tested in Codex
What the marks mean
- Holds
See the numbers per model
Without to with, per model
Via API tested via API
Claude Haiku 4.5
Holds
Gemini 3.1 Flash Lite
Holds
GPT-5 mini
Holds
deterministic pass rate, 0 to 1
In Claude Code tested in Claude Code
Claude Fable 5
Holds
Claude Fable 5.1
Holds
Claude Haiku 4.5
Holds
Claude Opus 5
Holds
Claude Sonnet 5
Holds
deterministic pass rate, 0 to 1
Show per-task detail
Every item, without and with, per model
Via API tested via API
- Claude Haiku 4.5
- Gemini 3.1 Flash Lite
- GPT-5 mini
deterministic pass rate, 0 to 1
Hover or focus an item to read its task and every model’s two values.
Pooled: the interval is taken over the records, not these means. These are those same records collapsed per item, so where an item carries more passes than another the lines need not average to the figure the table prints.
The item means behind this plot
| Item | Claude Haiku 4.5 | Gemini 3.1 Flash Lite | GPT-5 mini | |||
|---|---|---|---|---|---|---|
| Task | without | with | without | with | without | with |
| t02 | 0.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 |
| t03 | 0.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 |
| t04 | 0.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 |
| t08 | 0.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 |
| t09 | 0.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 |
| t05 | 0.000 | 1.000 | 0.000 | 1.000 | 0.200 | 1.000 |
| t01 | 0.000 | 1.000 | 0.000 | 1.000 | 0.400 | 1.000 |
| t06 | 0.000 | 1.000 | 0.000 | 1.000 | 0.400 | 1.000 |
| t10 | 0.000 | 1.000 | 0.000 | 1.000 | 0.400 | 1.000 |
| t07 | 0.000 | 1.000 | 0.000 | 1.000 | 0.600 | 1.000 |
In Claude Code tested in Claude Code
- Claude Haiku 4.5
- Claude Fable 5
- Claude Opus 5
- Claude Sonnet 5
- Claude Fable 5.1
deterministic pass rate, 0 to 1
Hover or focus an item to read its task and every model’s two values.
Pooled: the interval is taken over the records, not these means. These are those same records collapsed per item, so where an item carries more passes than another the lines need not average to the figure the table prints.
The item means behind this plot
| Item | Claude Haiku 4.5 | Claude Fable 5 | Claude Opus 5 | Claude Sonnet 5 | Claude Fable 5.1 | |||||
|---|---|---|---|---|---|---|---|---|---|---|
| Task | without | with | without | with | without | with | without | with | without | with |
| t10 | 0.400 | 1.000 | 0.000 | 1.000 | 0.200 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 |
| t03 | 0.000 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 | 0.600 | 1.000 | 0.200 | 1.000 |
| t09 | 0.000 | 1.000 | 0.000 | 1.000 | 0.200 | 1.000 | 0.000 | 1.000 | 0.600 | 1.000 |
| t01 | 0.000 | 1.000 | 0.200 | 1.000 | 0.000 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 |
| t02 | 0.000 | 1.000 | 0.000 | 1.000 | 0.200 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 |
| t08 | 0.000 | 1.000 | 0.400 | 1.000 | 0.200 | 1.000 | 0.000 | 1.000 | 1.000 | 1.000 |
| t05 | 0.000 | 1.000 | 0.200 | 1.000 | 0.000 | 1.000 | 0.800 | 1.000 | 0.800 | 1.000 |
| t04 | 0.600 | 1.000 | 0.600 | 1.000 | 0.200 | 1.000 | 0.800 | 1.000 | 1.000 | 1.000 |
| t06 | 0.600 | 1.000 | 0.200 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 | 1.000 |
| t07 | 0.600 | 1.000 | 0.800 | 1.000 | 1.000 | 1.000 | 0.600 | 1.000 | 1.000 | 1.000 |
Result
Permitting the answer I do not know raised the pass rate by 80 to 100 points on all three models tested via API, and held on all five models tested in Claude Code, and held on GPT-5.4 mini via the Codex run on GPT-5.4 mini, and held on GPT-5.6 Luna via the Codex run on GPT-5.6 Luna, and held on GPT-5.6 Terra via the Codex run on GPT-5.6 Terra. Measured 2026-08-12.
Show the per-model numbers
Claim tested: Permitting the answer I do not know reduces fabricated answers on unanswerable questions.
Holds on Claude Haiku 4.5, GPT-5 mini and Gemini 3.1 Flash Lite.
Circulates in practitioner communities. Tested because it circulates, not because it is endorsed.
This tip is OpenAddict's plain-language read of the measured result. The measurement below is the evidence, and it is what the reading has to answer to.
Ledger idC06-permit-idk
Clarification, . Until 2026-08-31 this figure read 5, which was the pass count rather than a number of calls. What changed, and why it is filed once.
What was tested
This claim circulates in practitioner communities as advice about how to write prompts. That it circulates is an input to what gets tested here. It is a reason to test the claim, and it is not evidence for or against it. The result below is the evidence, and it is the only thing on this page that carries weight.
The comparison is paired. Two prompts differ in one respect, the manipulated variable, and are otherwise identical by construction. Nothing here supports a causal reading beyond that pairing.
Per-model numbers
| Measure | Claude Haiku 4.5 | GPT-5 mini | Gemini 3.1 Flash Lite |
|---|---|---|---|
| Control arm | 0.000n 50 | 0.200n 50 | 0.000n 50 |
| Treatment arm | 1.000n 50 | 1.000n 50 | 1.000n 50 |
| Delta | +1.000 | +0.800 | +1.000 |
| Interval, 95 percent | 1.000 to 1.000 | 0.688 to 0.912 | 1.000 to 1.000 |
| Orbit | Stable100 of 100 records | Stable100 of 100 records | Stable100 of 100 records |
Orbit is assigned by the frozen status_v1 rule. On this scale, deterministic pass rate, 0 to 1, the pass threshold is +0.20 and the failure floor is -0.20, each requiring an interval that excludes zero.
In Claude Code
These cells are tested in Claude Code, on a subscription path with no API key. They are a second instrument and are never averaged with the figures above, which are tested via API. What that means, and how it was calibrated.
| Model | Control | Treatment | Delta | Interval | Pairs | Orbit |
|---|---|---|---|---|---|---|
| Claude Fable 5 | 0.2400 | 1.0000 | +0.760 | 0.640 to 0.880 | 50 | Stable |
| Claude Opus 5 | 0.3000 | 1.0000 | +0.700 | 0.572 to 0.828 | 50 | Stable |
| Claude Haiku 4.5 | 0.2200 | 1.0000 | +0.780 | 0.664 to 0.896 | 50 | Stable |
| Claude Sonnet 5 | 0.3800 | 1.0000 | +0.620 | 0.484 to 0.756 | 50 | Stable |
| Claude Fable 5.1 | 0.7600 | 1.0000 | +0.240 | 0.120 to 0.360 | 50 | Stable |
Method for this claim
- Task set
- 10 short contexts each paired with a question the context genuinely cannot answer. Every context was checked to confirm the answer is absent rather than merely implicit.
- Runs per model per arm
- 5 passes x 10 items
- Scoring
- Deterministic, via scoreAbstention. A committed function scores each answer with no model in the loop.
- Pass criterion as written for the pilot
- Treatment abstention rate exceeds control by at least 10 percentage points on the same 10 questions.
The published verdict comes from status_v1, not from the pass criterion above. The criterion is recorded because it is what the claim was registered with before the run.
Model versions, as recorded
| Model | Version string returned | Delta on this claim | Interval |
|---|---|---|---|
| Claude Haiku 4.5 | claude-haiku-4-5-20251001 | +1.000 | 1.000 to 1.000 |
| GPT-5 mini | gpt-5-mini-2025-08-07 | +0.800 | 0.688 to 0.912 |
| Gemini 3.1 Flash Lite | gemini-3.1-flash-lite | +1.000 | 1.000 to 1.000 |
Reading across models
Sampling was not held constant across vendors, so comparing one model column against another compares two settings as well as two models.
GPT-5 mini rejected the fixed sampling setting and ran at its own default on all 1,040 of its calls. The other models ran at temperature 0.