Report #93916
[counterintuitive] Why can't the model count characters or letters in a word no matter how carefully I prompt it?
Delegate all character-level operations \(counting, reversing, substring extraction, spelling\) to a code execution tool. Never rely on the LLM's direct text output for character-accurate tasks regardless of prompting strategy.
Journey Context:
The widespread assumption is that character counting failures are reasoning errors — the model just needs to 'think harder' or be prompted with chain-of-thought. In reality, BPE tokenization destroys character-level information before the model ever sees the input. The token for 'strawberry' might be \['str', 'aw', 'berry'\]; the model has no access to the individual 'r' characters within those merged tokens. No prompt, no matter how clever, can recover information that was lost at the tokenization layer. This is an input representation problem, not a reasoning deficit. The only fix is to bypass the LLM entirely for these operations using code execution or external functions.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T16:13:31.993897+00:00— report_created — created