OurSharedCode › Prompt Engineering Studio › Guides
The first system prompt I wrote for anything real started with You are a senior tax adviser with twenty years of experience. I was trying to work out whether a small company I was helping had to register for VAT, and I copied the opening from a prompt I had seen on a forum. The answer came back in the voice of someone who had been doing this for twenty years. It also gave me the wrong registration threshold, a figure that had been out of date for a couple of years, and it gave it without a flicker of doubt.
I have thought about that line a lot since, because it is the most copied line in prompting and I have never seen anyone explain what it is for. "It primes the model's expertise" is the usual answer. I do not think that sentence means anything. Here is what I can actually show the Role block doing, and what I have stopped expecting from it.
Two things. Both are about how the answer reads, not about whether it is right.
That is the list. The role chooses a voice from the ones the model already has. It cannot add to what the model knows, because that was fixed before your prompt arrived, and it does not make the model check anything, because "you are an expert" does not describe a check.
Accuracy, as far as I can tell. I have run the same set of factual questions with a role and without one, more times than was sensible, and I could not find a consistent difference. Some runs the persona did better. Some runs it did worse, and when it did worse it was usually because it guessed with the same confidence it used for the things it knew. The papers I have read on persona prompting do not agree with each other either, which is roughly what you would expect if the effect is small and depends on the task. I would not build anything on it.
Then there is the clause with the years in it. With fifteen years of experience. There is no mechanism for this. The model has nothing that corresponds to years, and a claim it cannot check it cannot act on. I have tried five, fifteen and forty in the same prompt and read the answers side by side, and I could not tell them apart. The clause is still in the studio's Role template. I have left it there because people expect it, and when I took it out of an early version the first piece of feedback I got was that the template looked unfinished.
A role also does not hold up when another block disagrees with it. If the Role says you are a cautious legal adviser and the Task says give a definite yes or no, you have written a contradiction, and the model resolves it without telling you. In my experience the Task usually gets its way. I wrote about this in why your system prompt gets ignored, and when I go looking for the instruction that lost, it is often the one in the Role block.
Anyone who opens the studio will notice this, so I would rather say it here. The prompt-health score gives Role twenty points, the same as Task and more than any other block, and the tooltip on the block says a persona "improves accuracy". I have just spent two sections saying it does not.
The score and the tooltip are talking about different things, and only one of them is defensible. The twenty points are there because a prompt with no role in it nearly always has no reader in it either, and a prompt with no reader produces an answer aimed at nobody in particular. The block is standing in for the question "have you decided who this is for?" I still think that is worth twenty points. The tooltip's line about accuracy is a claim I cannot support, and I will change the tooltip rather than leave the two contradicting each other.
If the block only sets register and vocabulary, then write it to set register and vocabulary and leave the rest out. The VAT prompt I started with:
You are a senior tax adviser with twenty years of experience.
Your approach is thorough and professional.
The second sentence contains no instruction. Thorough does not say how long the answer should be. Professional does not say who it is for. What I needed, it turned out, was this:
You are a tax adviser writing for the owner of a small business who
has never dealt with VAT. Use plain words. Where a technical term
is unavoidable, give it once in brackets after the plain one.
They have about five minutes.
The years are gone and I did not miss them. What replaced them is a reader, a rule about words, and a rough length, and I can point at each of those in the answer that comes back. It is still a Role block. It has just become a description of the reader rather than a description of the author, and I think that is what the block was for all along.
Three habits I have picked up from doing this:
Extraction, reformatting, classification into fixed labels. Anything where there is no reader, only a program waiting to parse the output. A persona on those jobs costs a little on every call and now and then produces a sentence of unwanted introduction, because a persona is inclined to talk.
One thing I should own up to. The triage prompt I took apart line by line has a role block that says you are precise and you do not speculate, and I have just told you to cut adjectives like that. I kept it there because a constraint lower down forbids guessing, so "precise" is naming a rule that actually exists in the prompt rather than hoping for one. I think that is a fair distinction. I also think it is the kind of distinction that lets you keep every adjective you are fond of, so I try to apply it to one word per prompt at most.
So, the most quoted line in prompting: it chooses the voice, it chooses the words, and if you write it as a reader rather than a CV it does one more useful thing. Ask it for anything beyond that and you are back to the twenty years, which did not stop the wrong threshold and would not have stopped the next one.