What the AI cannot do, however well you ask
Some errors no prompt will remove, because they sit in the construction. Counting, arithmetic, today's date, randomness, memory. This lesson shows the hard limits and what to do instead.
There is a kind of AI error where every piece of advice fails. You phrase it better, you give more context, you switch models, and the same nonsense still comes back. That is not down to your prompt. It is down to you asking for something the construction does not offer.
This lesson is the map of those limits. It is deliberately unspectacular, because once you know them, you stop pouring time into prompts that will never work.
The difference from a hallucination
Spotting hallucinations was about the model inventing facts and selling them convincingly. That is a truth problem, and the countermeasure is checking.
This is about something else: limits of ability. The model is not lying, it simply cannot carry out certain operations. So the countermeasure is a different one too. Checking does not help you much here. You have to rebuild the task or put a tool next to it.
Remember the difference like this: with hallucinations you check the result. With limits of ability you change the task.
It does not count, it estimates
Ask a language model how many r's there are in "strawberry". The answer is wrong surprisingly often, even though every primary school child gets to three.
The reason is inconspicuous and important: the model does not see your text as a chain of letters. It breaks it into building blocks first, so-called tokens, and a token is usually a syllable or a whole short word, not a single letter. So the model is not looking at the letters you are talking about at all. It answers out of a feeling for how such an answer normally sounds.
The same goes for everything that involves counting. How many words this paragraph has, how many entries are in the list, whether that is the third or the fourth line. Everywhere there you will run into plausible but unreliable numbers.
It does not calculate, it remembers calculations
With 12 times 12 the result is right. With 4,837 times 2,916 it gets interesting. Not because the second sum is harder, but because the first appeared a million times over in the training text and the second did not.
A language model does not carry out a calculation. It predicts which characters usually come after an equals sign. With familiar sums that works out, with unusual numbers it falls apart. And here is the tricky part: the result always looks like a result. No warning comes with it.
As soon as money, deadlines or quantities are involved, every calculation belongs in a spreadsheet or a calculator. Even when the AI has already named a number.
It does not know what day it is today
A model has no sense of time. It has a training cutoff, and after that nothing has happened as far as its inner world is concerned. If a chat still tells you the correct date, that is usually because the application passed it in invisibly, or because it briefly looked it up online.
Two things follow from that for your everyday work. First: do not count on the model knowing what happened last week. Second, and most people miss this one: do not ask the model itself how up to date it is. That piece of information is unreliable in practice, because the model answers about itself out of the training text as well.
When being current matters, you need a tool that looks things up, and a source you open yourself.
It cannot roll dice
Ask an AI ten times for a random number between 1 and 100, each time in a fresh chat. You will see the same numbers conspicuously often.
That is not a bug. The model does not pick at random, it picks the most probable. And in the texts it was trained on, certain numbers simply turn up more often as a "random number" than others. Where humans type at random, the machine has a bias too.
In practice that means: for drawing lots, samples or passwords, a language model is the wrong tool. Use something that really rolls dice.
It forgets you between two chats
A new chat starts at zero. What you explained yesterday, which abbreviations apply in your company, how you want to be addressed, all of that is gone. Not deleted in the sense of lost, but never carried into the model in the first place. The model itself learns nothing from your conversation.
What feels like memory in some tools is a layer on top: notes that the application stores and hands back in next time. Useful, but something that somebody built, and not something the model can do by itself.
If you want to know how such a layer works and how to set one up for yourself, the whole of level 4 is about that. The entry point is Why memory.
It does not know itself
Ask a model which model it is, how sure it was about its last answer, or how long the text was that it just wrote. All three answers sound assured and all three are poorly supported.
A model has no view of itself. It cannot measure its own reliability, and it does not count its own output as it goes. That is why the classic "write me exactly 200 words" fails so dependably too. It writes something that roughly looks like 200 words and stops when it feels rounded off.
When an exact length matters, give a structure instead of a number. Five paragraphs, three sentences per paragraph. The model hits that, because those are countable units it is setting anyway while it writes.
What to do instead
Three moves cover almost everything.
The first: give the AI a tool instead of a task. Counting, calculating, the current date, real randomness, all of these are things a computer does perfectly, just not the text part of it. That is why modern assistants can call tools, and that is exactly what they are there for. How that works technically is in Tools in AI.
The second: rebuild the task. Instead of "how many customers are in the list", better "output the list numbered", then you see the number yourself at the end. Instead of an exact word count, a structure. Instead of a calculation, a formula that you drop into your spreadsheet.
The third: recognise the category early. If an answer has to be exact and verifiable, and a calculator, a calendar or a search box would answer it better, then it is not a prompt question. Then it is the wrong choice of tool.
The sentence to take away
A language model is good at producing language and mediocre to bad at everything that needs exactness. That is not a weakness that disappears with the next version. It is a description of what it is.
Whoever knows that stops prompting against the construction and starts getting the right work done in the right place.