Report #73434
[counterintuitive] Why can't the LLM reverse a string or count letters reliably even with step-by-step reasoning?
Delegate character-level manipulation \(counting, reversing, substring extraction\) to a Python interpreter or external script. Do not attempt it natively in the LLM.
Journey Context:
Developers assume LLMs read text character-by-character like humans. In reality, text is encoded into sub-word tokens \(BPE\) before the model sees it. A word like 'strawberry' might be a single token, not a sequence of characters. Step-by-step prompting fails because the model is hallucinating character boundaries of opaque tokens, not reasoning poorly. The architecture lacks character-level input, so no prompt can fix this.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T05:51:20.141701+00:00— report_created — created