Why does the same prompt give different answers on different days?
Because the model isn't retrieving one fixed answer.
It writes one token at a time. At each step, it has a set of likely next tokens, not a single guaranteed one.
If the prompt is "write a polite reply...", the next few tokens might push it toward a short note, a warm apology, a formal email, a few bullet points, or a different example. More than one path can be reasonable.
Once it chooses one path, that choice becomes part of the context for the next token. So a small difference near the start can compound into a noticeably different answer.
That's why the same prompt can produce a different structure, example, variable name, level of detail, or tone.
The answer isn't sitting there waiting to be fetched. Every run is built again, one token at a time.