difficulty 3/5
Prompting
Specifying a task in the model's own input, with an instruction and perhaps a few examples and no weight updates. Good at saying what the task is; poor at supplying an ability.
Intuition
The standard way to make a pretrained model do a new task was to fine-tune it, and that "requires fine-tuning on a dataset of thousands to hundreds of thousands of examples specific to that task" [1, §1]. Every new task means a new dataset, a new training run and a new set of weights.
Prompting removes all of that by moving the task specification into the input. Describe the task, optionally show a few examples, append the real input, and read the continuation. The model is a language model throughout; nothing about it changes. It is completing a document that happens to contain a task.
Brown et al. name the mechanism rather than the trick: "we use the term 'in-context learning' to describe the inner loop of this process, which occurs within the forward-pass upon each sequence" [1, Figure 1.1]. Whether that is learning in any strong sense is a live question. What is not in question is that it works well enough to be the first thing to try, before any fine-tuning.
Formal definition
How it works
Where it's used
Why & when
Worked example
Pitfalls
Check yourself
3 questions
The questions on this page come with access. They are graded on the server, so the answers stay there until you have given yours.
Sources
- Language Models are Few-Shot Learners (2020)paperhttps://ar5iv.labs.arxiv.org/html/2005.14165
- Chain-of-Thought Prompting Elicits Reasoning in Large Language Models (2022)paperhttps://ar5iv.labs.arxiv.org/html/2201.11903