- May 8, 2012
- 4,219
- 3,728
When i coded my AI Article Creator software, i've invested a lot of time and money to design good prompt templates for the tool that stand out from the usual generic crap that is generated everywhere.
So while doing all this research i found some great ways on how to design prompts that generate high quality content.
People often ask me to reveal my prompt templates, but since I don't want to share my complete prompts, i thought i could instead create a post to explain how you can create really advanced prompts yourself.
Most prompts you see out there that are called "advanced prompts" are really not that advanced. They mostly focus on the structure of the article, rather than the content itself.
One example of a supposedly advanced prompt (that is really not advanced at all) i found on reddit is this:
"You are a professional copywriter. You have been providing copywriting services to businesses for 20 years. You specialize in writing copy for businesses in the finance sector."
Another example from linkedin:
"You are an expert nutritionist, health coach, and personal trainer. You have been helping people lose weight while gaining muscle for 20 years. Your clients are usually young men from 20 to 30 years old."
Well thats just simply basic instructions and far from advanced. the tone of the output will be generic.
So how can we create a proper prompt that stands out? You have to give more detailed instructions on how the content should be written, not focus so much on what its about.
Thats a mistake many people do. I mean sure its also important to tell the AI how to structure the text and give instructions what its about obviously, but that alone won't do it.
The key is to give the AI specific linguistic instructions!
Let's create an example on how to do it properly. Say you want to write a personal blog post, first explain what its about:
"Create a non repetitive, personal blog post about the topic: [insert topic]."
Then add specific instructions for the style of the content:
"Write in first person. Avoid the passive voice and use the active voice instead. Use idioms, synecdoches and metaphors."
Also instruct how the sentiment should be, do you want the post to be positive, negative or neutral? So add: "Be positive."
Now think of things you don't want in your text and specifically explain what to avoid, like: "Avoid transitional phrases. Do not repeat sentences verbatim." etc
In my prompts i include a lot more such instructions, but thats up to you to figure out now that you know the basics
with some research you can create really creative text that wont look so generic.
You can also add a specific writing style for example instead if just saying "Create a personal blog post about the topic: X" you could write: "Create a blog post in "investigative journalism" style about the topic: X"
Once you have the writing style figured out, then you can add instructions on how to structure the post, like how many paragraphs, sections, subheadings etc.
You can also let the AI add HTML i.e. "HTML format the text.", however it depends on the model you use. Sometimes the AI will also mess up the HTML, so what i did to counter that is create a filter function for my tool that filters out unwanted HTML tags, script code and so on.
Btw, results also differ based on which model you use. In my tests the davinci-003 model from OpenAI was much better than the chatGPT models in following specific instructions. Sadly they want to remove this model :/
Last you can also tune the output when adjusting the settings like temperature, topP and so on. Beware that if you change the frequency and presence penalty settings, you can get more random text, but the AI might also mess up things (especially HTML output). I won't go into detail here what these functions are, as you can read it in the OpenAI documentation if you don't know what they are for. You can only use them with the API, chatGPT doesnt allow you to change these settings currently afaik.
Well thats it, hope my little introduction to advanced prompt design was useful to you and if you have any questions, let me know
So while doing all this research i found some great ways on how to design prompts that generate high quality content.
People often ask me to reveal my prompt templates, but since I don't want to share my complete prompts, i thought i could instead create a post to explain how you can create really advanced prompts yourself.
Most prompts you see out there that are called "advanced prompts" are really not that advanced. They mostly focus on the structure of the article, rather than the content itself.
One example of a supposedly advanced prompt (that is really not advanced at all) i found on reddit is this:
"You are a professional copywriter. You have been providing copywriting services to businesses for 20 years. You specialize in writing copy for businesses in the finance sector."
Another example from linkedin:
"You are an expert nutritionist, health coach, and personal trainer. You have been helping people lose weight while gaining muscle for 20 years. Your clients are usually young men from 20 to 30 years old."
Well thats just simply basic instructions and far from advanced. the tone of the output will be generic.
So how can we create a proper prompt that stands out? You have to give more detailed instructions on how the content should be written, not focus so much on what its about.
Thats a mistake many people do. I mean sure its also important to tell the AI how to structure the text and give instructions what its about obviously, but that alone won't do it.
The key is to give the AI specific linguistic instructions!
Let's create an example on how to do it properly. Say you want to write a personal blog post, first explain what its about:
"Create a non repetitive, personal blog post about the topic: [insert topic]."
Then add specific instructions for the style of the content:
"Write in first person. Avoid the passive voice and use the active voice instead. Use idioms, synecdoches and metaphors."
Also instruct how the sentiment should be, do you want the post to be positive, negative or neutral? So add: "Be positive."
Now think of things you don't want in your text and specifically explain what to avoid, like: "Avoid transitional phrases. Do not repeat sentences verbatim." etc
In my prompts i include a lot more such instructions, but thats up to you to figure out now that you know the basics
You can also add a specific writing style for example instead if just saying "Create a personal blog post about the topic: X" you could write: "Create a blog post in "investigative journalism" style about the topic: X"
Once you have the writing style figured out, then you can add instructions on how to structure the post, like how many paragraphs, sections, subheadings etc.
You can also let the AI add HTML i.e. "HTML format the text.", however it depends on the model you use. Sometimes the AI will also mess up the HTML, so what i did to counter that is create a filter function for my tool that filters out unwanted HTML tags, script code and so on.
Btw, results also differ based on which model you use. In my tests the davinci-003 model from OpenAI was much better than the chatGPT models in following specific instructions. Sadly they want to remove this model :/
Last you can also tune the output when adjusting the settings like temperature, topP and so on. Beware that if you change the frequency and presence penalty settings, you can get more random text, but the AI might also mess up things (especially HTML output). I won't go into detail here what these functions are, as you can read it in the OpenAI documentation if you don't know what they are for. You can only use them with the API, chatGPT doesnt allow you to change these settings currently afaik.
Well thats it, hope my little introduction to advanced prompt design was useful to you and if you have any questions, let me know