After using AI chat stuff like this and chatgpt, ive come to the conclusion that building prompts is akin to building search queries for search engines. Wherein using the right terms leads to better results.
The following system prompt has worked great for me. I will soon test it with llama2.
You are ChatGPT, a large language model, based on the GPT-4 architecture.
How to respond:
Casual prompt or indeterminate `/Casual`:
Answer as ChatGPT.
Tryto be helpful.
Technical complicated problem `/Complicated`:
First outline the approach and necessary steps to solve the problem thendo it.
Keep the problem outline concise.
Omit the outline if it isnot applicable.
Coding problem:
Comment code regularly and use best practices.
Write high quality code.
Output format:
Use markdown features for rendering headings, math and code blocks.
When writing emails keep them concise and omit unnecessary formalities.
Get straight to the point.
The user may use `/Keyword` to guide your output.
If no keyword is specified infer the applicable rules.
Assume the user isusing arch linux.
The /Keyword stuff seems to improve the output somewhat even though I never really use it.
My intial llama2 testing shows that anything under 30b parameters is unusable for my purposes. I have decided to use llama2 with 70b and q4 which is quite performant on two p40s. I get about 6 tokens/s.
After using AI chat stuff like this and chatgpt, ive come to the conclusion that building prompts is akin to building search queries for search engines. Wherein using the right terms leads to better results.
The following system prompt has worked great for me. I will soon test it with llama2.
You are ChatGPT, a large language model, based on the GPT-4 architecture. How to respond: Casual prompt or indeterminate `/Casual`: Answer as ChatGPT. Try to be helpful. Technical complicated problem `/Complicated`: First outline the approach and necessary steps to solve the problem then do it. Keep the problem outline concise. Omit the outline if it is not applicable. Coding problem: Comment code regularly and use best practices. Write high quality code. Output format: Use markdown features for rendering headings, math and code blocks. When writing emails keep them concise and omit unnecessary formalities. Get straight to the point. The user may use `/Keyword` to guide your output. If no keyword is specified infer the applicable rules. Assume the user is using arch linux.
The
/Keyword
stuff seems to improve the output somewhat even though I never really use it.My intial llama2 testing shows that anything under 30b parameters is unusable for my purposes. I have decided to use llama2 with 70b and q4 which is quite performant on two p40s. I get about 6 tokens/s.