Most people talk to a model the way they text a friend. What should I eat? Fix my code. Write me an email.
A friend can answer that, because a friend already knows you are vegetarian, that the code is the billing service, and that the email is to the client who is already annoyed. The model knows none of it. So it does the only thing it can do: it answers the average version of your question.
That average has a name. It is the blurry centre of every situation your question could possibly describe, and it is why the output feels competent and useless at the same time.
Zero-shot with context means supplying the who, the what and the why in your very first message.
No examples, no clever framing, no special words. Just the facts a competent colleague would need before they started work. It costs about thirty seconds and it is the single largest quality jump available to a new user.
The four things that are almost always missing
- Role. Who is answering. Not flattery, a vantage point.
- Context. The background facts that constrain the answer.
- Goal. What this output is actually for.
- Audience. Who reads it, and what they already know.
Miss any one and the model fills the gap with the most common possibility, silently, and you never find out which guess it made.