Zero-Shot Prompting
Instruction design without examples
Zero-shot prompting relies on a well-crafted instruction alone — no examples, no demonstrations. The quality of the output depends entirely on how clearly you specify the task, constraints, output format, and edge-case behaviour.
Zero-shot prompting is the most direct way to interact with a language model: you describe what you want, and the model does it. There are no examples, no few-shot demonstrations — just an instruction and (optionally) an input. This is the default mode most people start with, and it works surprisingly well for tasks the model has seen extensively during training: summarisation, translation, classification, extraction, rewriting.
The difference between a mediocre zero-shot prompt and a great one is specificity. Vague instructions like "summarise this" produce generic output. Precise instructions — "Write a 2-sentence summary for a technical audience, focusing on the performance implications" — dramatically improve results. The key dimensions to specify are: task type (classify, extract, rewrite, generate), output format (bullet list, JSON, single sentence), audience and tone, constraints (length, vocabulary, what to exclude), and edge-case handling (what to do when the input is ambiguous or missing information).
A common anti-pattern is over-prompting: adding so many constraints and caveats that the instruction becomes contradictory or the model fixates on the rules rather than the task. Start minimal, evaluate the output, then add constraints only where the model fails. Another pitfall is assuming the model shares your implicit context — it does not. If "the project" or "the data" has a specific meaning, spell it out. Zero-shot prompting is a skill of clear written communication, not a magic incantation.
Key Concepts
- Zero-shot prompting uses a clear instruction with no examples — ideal for well-known tasks
- Specify task type, output format, audience, constraints, and edge-case behaviour explicitly
- Start minimal and add constraints only where the model fails — avoid over-prompting
- Never assume shared context — spell out every term the model might interpret differently
- Zero-shot works best for tasks the model has seen extensively in training data